Наконец то кто-то по человечески обяснил что такое бек пропагейшн, а не шестиэтажными формулами, а скорее всего те кто шестиэтажными формулами обясняют, сами не понимают о чем говорят. Спасибо.
А можешь подсказать, как сделать сеть которая будет классифицировать голоса например мой/не мой, мужской/женский, взрослый/детский, как это сделать?! Какой тип нейронных сетей используется рас, в каком формате подаётся звук на вход сети два
Учу нейронки и питон чисто для себя, давно хотел сделать себе голоссового ассистента по типу алисы или сири но которая будет более практически полезной
Делала пошагово, вчитывалась в каждую букву, но в итоге модель не смогла начать эпохи из-за неизвестной функции потерь "sparse_categoriсal_crossentropy". Помогите пожалуйста🥲
Есть ли какие-то мобильные приложения для создания массива фотографий с участием того или иного объекта определенного класса? Например отфоткать со всех сторон и на разном удалении искомый объект?
Объясните пожалуйста дилетанту) Вот есть например необходимость внедрить нейросеть для производства. Условно, по конвейеру идет деталь не той формы, камера фиксирует ее как брак. Для реализации я правильно понимаю что есть нет желания возиться с локальной установкой TF на комп то обучить модель можно через колаб, после чего выгрузить обученную модель. И загрузить ее например в open cv?
Я к тому, что если вам не понятен процес установки и ошибки по зависимостям, то обученин будет гораздо сложнее. Ведь чел показал готовое с сайта тензора. Даю наводку, все хорошо работает с версией пайтон 3.8 Если на видеокарту, то надо CUDA поставить от Nvidia. Только тогда все работает. А потом вам надо побольше изображений и процесс обучения идет попиксельно. То есть да, много времени пойдет. Так, поверхностно. По хорошему надо знать диференциал и мат анализ, чтоб осилить как реализован нейрон. И тогда вообще станет понятно что за функции и почему.
И результат всегда приближен к истине. То есть как человек на 100% деталь пока сложно опознать, будет результат очень приближен. И он береться за истину, так как там измеряется вес. Там нет интеллекта, там интерпретация интеллекта через мат анализ.
Я тоже думал что все нахаляву, сел и поехал. Установил все на комп, загрузил дату свою, свои картинки и получил черную картину в результате и низкий % вероятности😃
1. Сбор данных: - Соберите большой набор изображений одежды из вашего магазина. - Разметьте изображения по категориям, стилям, цветам и т.д. 2. Выбор модели: - Используйте предобученную модель (например, ResNet, VGG, или EfficientNet). - Настройте ее на ваш набор данных (fine-tuning). 3. Обучение модели: - Используйте технику transfer learning. - Обучите модель извлекать признаки из изображений одежды. 4. Создание векторных представлений: - Используйте обученную модель для создания эмбеддингов изображений. 5. Реализация поиска: - Используйте алгоритмы поиска ближайших соседей (например, косинусное сходство). 6. Интеграция в магазин: - Добавьте функцию загрузки изображений для поиска. - Реализуйте быстрый поиск по векторным представлениям. Это если кратко))
Если возможен вариант когда фотография-изображение не содержит ни одного искомого изображения-объекта, то нужно еще один создавать класс None когда объекта на фото нет?
Как сделать чтобы нейронка распознавала нужные изображения в браузере, например листаешь вкладку с фотографиями, и она как то распознает нужное, по датасетам
Для распознавания изображений в браузере можно использовать JavaScript-библиотеки машинного обучения, такие как TensorFlow.js или ml5.js. Алгоритм: 1. Загрузите предобученную модель или обучите свою на нужном датасете. 2. Создайте расширение для браузера, которое будет анализировать изображения на открытых страницах. 3. Используйте API браузера для доступа к изображениям на странице. 4. Примените модель к каждому изображению для классификации. 5. Отобразите результаты или выполните нужные действия с распознанными изображениями. Причем не забудьте, что важно учитывать производительность и соблюдать правила конфиденциальности при работе с данными пользователя.
Для начала стоит создать функцию нормализации фотографий (по примеру из начала кода автора, где изображения разбиваются на пиксели и определяются количество пикселей и границы цвета), потом нужно прогнать входное изображение через такую функцию и далее подать в model.predict()
Здравствуйте! Спасибо за ваш канал. Решил поэкспериментировать с кодом где я преобразую 784 просто в строку без этих вот команд. Результат вроде бы должен быть одним и тем же. Но при обучении очень высокая ошибка, а у вас она порядка сотых.. у меня больше 2-х. Почему так? Вы может и не ответите мне, но я все же рискну и спрошу у вас))) А то вот полно таких видео с другими блогерами где вы все строго используете команду Flatten(input_shape=(28, 28, 1)). А почему в начале не преобразовать просто в одномерный вектор чтоб было соответствие вашей архитектуре сети? Тогда обучив сеть и взяв весовые коэффициенты путем перемножения матриц и функций активации ее можно использовать уже в других программах. А вот так как вы все рассматриваете однотипные примеры по распознаванию текста и прочего, не дает возможности строить нейронную сеть для любых задач. Потому что с одномерным вектором она никак не обучается правильно import os os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2' import numpy as np import matplotlib.pyplot as plt from tensorflow.keras.datasets import mnist # библиотека базы выборок Mnist from tensorflow import keras from tensorflow.keras.layers import Dense, Flatten (x_train, y_train), (x_test, y_test) = mnist.load_data() # стандартизация входных данных x_train = x_train / 255 x_train_my = x_train.flatten() x_test = x_test / 255 x_test_my = x_test.flatten() y_train_cat = keras.utils.to_categorical(y_train, 10) y_test_cat = keras.utils.to_categorical(y_test, 10) plt.imshow(x_train[2], cmap=plt.cm.binary) plt.show() x_train_my_2 = [] x_test_my_2 = [] for i in range(0, int(len(x_train_my)/784)): x_train_my_2.append(x_train_my[i:784 + i]) for ii in range(0, int(len(x_test_my)/784)): x_test_my_2.append(x_test_my[ii:784 + ii]) j = 59999 print(len(x_train_my_2[j])) print(y_train_cat[j]) model = keras.Sequential() model.add(Dense(128, input_shape=(784,), activation='relu')) model.add(Dense(10, activation='softmax')) print(model.summary()) model.compile(optimizer=keras.optimizers.Adam(0.001), loss='categorical_crossentropy', metrics=['accuracy']) model.fit(np.array(x_train_my_2), y_train_cat, batch_size=32, epochs=5, validation_split=0.2) model.evaluate(np.array(x_test_my_2), y_test_cat) А вот что выдает при обучении: Epoch 1/5 1500/1500 [==============================] - 4s 3ms/step - loss: 2.3098 - accuracy: 0.1074 - val_loss: 2.3103 - val_accuracy: 0.1040 Epoch 2/5 1500/1500 [==============================] - 3s 2ms/step - loss: 2.3006 - accuracy: 0.1151 - val_loss: 2.3081 - val_accuracy: 0.1073 Epoch 3/5 1500/1500 [==============================] - 4s 2ms/step - loss: 2.2931 - accuracy: 0.1226 - val_loss: 2.3148 - val_accuracy: 0.1024 Epoch 4/5 1500/1500 [==============================] - 4s 2ms/step - loss: 2.2795 - accuracy: 0.1344 - val_loss: 2.3242 - val_accuracy: 0.1042 Epoch 5/5 1500/1500 [==============================] - 4s 2ms/step - loss: 2.2580 - accuracy: 0.1529 - val_loss: 2.3411 - val_accuracy: 0.1020 очевидно что ничего не распознается правильно
Ну как с решением данной проблемы, я тоже заострил на данном моменте внимание и ни как не могу понять, что делать что бы данные распознавались правильно
Ваш вопрос затрагивает важную концепцию в архитектуре нейронных сетей. 1. Входной слой: - Обычно каждый входной нейрон соответствует одному значению входных данных. - В случае с изображением 28x28 пикселей (784 пикселя) у вас будет 784 входных нейрона. 2. Flatten операция: - Двумерное изображение "разворачивается" в одномерный вектор. - Каждый пиксель становится отдельным входом для нейронной сети. 3. Структура сети: - Нет "одного входного нейрона" принимающего все 784 значения. - Вместо этого есть 784 отдельных входных нейрона. 4. Обработка данных: - Каждый из 784 нейронов принимает значение одного пикселя. - Все эти нейроны вместе представляют полное изображение. 5. Следующие слои: - Скрытые слои обрабатывают эту информацию, выявляя паттерны. 6. Преимущества: - Позволяет сети учиться на пространственных отношениях между пикселями. - Каждый пиксель может вносить свой вклад в распознавание. Таким образом, нет "остальных" входных нейронов - все 784 нейрона используются для представления полного изображения.
Да, пересмотрите ещё разок видео. Нейросеть не сравнивает входное изображение с тестовыми, она соотносит входные данные с «весами» нейронов и приходит таким образом к ответу
Здравствуйте! Есть ли такое же видео для обучения машинному переводу в Google Colaboratory? То есть, загрузка параллельных данных и процесс настройки обучения?
я начал учить питон чтобы потом перейти на нейронку или ИИ скажите плз будет ли это актуально через 5-10 лет и какие перспективы у всего этого что можно будет делать с помощью этого?
В целом, нейронки/ИИ обязательно будут актуальны через 5-10 лет, а то и 50, т.к. щас все стремятся к автоматизации, из-за чего ИИ не перестанет быть актуальным, если, конечно, всякие активисты не начнут устраивать митинги по защите ИИ от его эксплуатации ;)
как сказал один ведущий нейронщик из Теслы, с появлением ChatGPT и ему подобных сервисов, скоро самым популярным языком программирования станет - английский)
Скажите пожалуйста, как каждому из 10 нейронов был задан конкретный класс? Не понимаю где мы задали, что, например десятый нейрон активируется на ботинке?
Это уже готовый датасет (созданный специально для практики и обучения специалистов по МО), и в нем уже изначально заданы 10 классов для каждого типа одежды
Как сеть применима в жизни. Когда подаем большой снимок 1920х1080, где на одном участке фото может быть футболка. Но у нее может быть отличный от тренировочных фото угол, например 45° и другие отношения ширины и высоты, например широкая футболка. Нам нужна еще какая-то сеть определения позиции возможного класса на большом фото? А потом сделать сжатие фото до нужной модели? А как нормировать углы, это только на тренировке будет все четко и прямо.
Определение вещи на фото и определение места на фото это две независимые операции. По идее код должен принимать только фото объекта для определения, все что не относиться к этому процессу должно быть вынесено отдельно
@@import_this эта сеть не применима в жизни, это пример, задача, которую студент учится решать в процессе обучения. Реальная есть будет состоять из большего количества слоев и нейронов. Нейронную сеть можно обучить находить объекты на изображении вне зависимости от их положения.
@@morgan3692 да, согласен. Но я ориентировался на свой опыт в ecommerce, где нет необходимости обучать искать, а есть конкретные фото товаров. Поэтому сказал, про то, что эти операции стоит разделить
про дата сеты что-то вообще информации мало... как подготовить свой датасет для обучения и какая структура данных должна быть в нем.. не подскажите где нарыть инфу ?
Обычно датасет предоставляет заказчик, например, выгружает файл со всеми данными в excel или .csv формате. Если хотите подготовить свой датасет, то для качественного обучения потребуются сотни и тысячи данных, но вы также можете сделать это самостоятельно. Есть также сайты, где можно скачать различные датасеты для практики, например, на github или kaggle
Здравствуйте! При выводе 25 картинок почему-то возникает ошибка: IndexError Traceback (most recent call last) in () 5 plt.yticks([]) 6 plt.imshow(x_train[i]) ----> 7 plt.xlabel(class_names[y_train[i]]) IndexError: list index out of range Не понимаю в чём может быть проблема. Код как в уроке.
Доброго времени суток. Можно ли обучить нейронку распознавать действия? Касаемо футбола. Отдал пас, забил гол, отдал голевую передачу, совершил перехват мяча, отобрал мяч, выбросил аут, подал угловой, сфолил, сфолил на нем и тд?
насколько я знаю, в футбольной индустрии уже используются специальные программы, которые автоматически считывают все действия каждого футболиста на поле, включая все вами перечисленные , и выдают очень подробную статистику
Я, конечно, все понимаю. Но почему урок для новичков строится на преимущественно использовании готовых решений? Имхо, как было нихуя не понятно, как оно работает в своей основе, так и осталось. Было бы логично показать очень простой вариант, но написанный полностью с нуля, так и базовые принципы построения архитектуры стали бы понятными и можно было бы адаптировать полученные знания под другие ЯП.
Посмотрите что такое диференциал. Там по сути алгоритм диференцирования вложен. А тут чувак показал уже фреймворк Керас от тензора. И по сути переводит урок тензора.
@@IvanPetrov-b8n я знаю что такое дифференциал. Вопрос в оом, зачем нам этот фреймворк, если мы новички и в душе не ебем как оно работаеи? Мой поинт в том, что нужно давать не решение частного случая частным инструментом, а объяснять фундамент.
Да уж, друзья, хочется верить, что когда-нибудь так называемое "машинное обучение" уйдëт от подбивки весов методом градиентного спуска до чего-нибудь более умного, но, видимо, пока не судьба.
0 из 10 мне писал class_names ошибка а только через полчаса случайно додумался поменять на list и тут же всё заработало. 0 из 10 не рекомендую. уточнять надо что писать class_names или list
а смысл освоить чужой готовый API? как оно работает это магия и все картинки с кружочками никак не помогут ее воспроизвести. еще и окружение гугловское. вы свою сеть строите или где?
Ваш комментарий оскорбителен и необоснован. Использование нейросети для распознавания изображений одежды (набор Fashion MNIST) представляет собой одну из самых популярных задач для тех, кто только начинает изучать нейронные сети и используется практически во всех курсах/книгах/учебниках/мануалах по машинному обучению и нейросетям. Если попробовать найти данную задачу в интернете, то можно легко получить сотни ссылок как на русском так и на английском языках, где объясняются как с ним работать, поэтому неудивительно, что какая-то часть контента будет похожа, ибо сам набор данных, который используется для обучения, является одинаковым для всех
plt.figure(figsize=(10,10)) for i in range (25): plt.subplot(5,5,i+1) plt.xticks([]) plt.yticks([]) plt.imshow(x_train[i]) plt.xlabel(class_names[y_train[i]]) Ругается на 3 строчку, поддчеркивает plt File "", line 3 plt.subplot(5,5,i+1) ^ IndentationError: expected an indented block
Как всегда полезно и доступно для новичков ☝Спасибо за такую работу
🗿
Вот это реально круто! Лайк от кодера-легенды СЕООНЛИ
Наконец то кто-то по человечески обяснил что такое бек пропагейшн, а не шестиэтажными формулами, а скорее всего те кто шестиэтажными формулами обясняют, сами не понимают о чем говорят. Спасибо.
Урок супер! Спасибо!
это было... чудесно🌟...ты лучший🎯
А можешь подсказать, как сделать сеть которая будет классифицировать голоса например мой/не мой, мужской/женский, взрослый/детский, как это сделать?! Какой тип нейронных сетей используется рас, в каком формате подаётся звук на вход сети два
Спасибо за материал, идеальное введение в ML для новичков
Благодарю! Отличный урок!!
Спасибо большое, а если хочешь свои картинки загрузить?
Шикарная информация, очень пригодилась. Всё понятно
Спасибо за обратную связь!
Учу нейронки и питон чисто для себя, давно хотел сделать себе голоссового ассистента по типу алисы или сири но которая будет более практически полезной
Делала пошагово, вчитывалась в каждую букву, но в итоге модель не смогла начать эпохи из-за неизвестной функции потерь "sparse_categoriсal_crossentropy". Помогите пожалуйста🥲
проблема решилась сменой литерала: loss=keras.losses.SparseCategoricalCrossentropy()
Подскажите пожалуйста, а в данном случае была проведена разметка изображений или мы опираемся только на пиксели?
Можете ли пжл выложить набранный код целиком, чтобы не набирать с экрана?
Тут по сути перевод. Урок про ботинки на главном сайте тензорфлоу и там и код и картинки там все
Есть ли какие-то мобильные приложения для создания массива фотографий с участием того или иного объекта определенного класса? Например отфоткать со всех сторон и на разном удалении искомый объект?
очень интересное видео) 👍🏻 спасибо за информацию
Очень интересная и полезная информация. Спасибо за видео
Объясните пожалуйста дилетанту) Вот есть например необходимость внедрить нейросеть для производства. Условно, по конвейеру идет деталь не той формы, камера фиксирует ее как брак. Для реализации я правильно понимаю что есть нет желания возиться с локальной установкой TF на комп то обучить модель можно через колаб, после чего выгрузить обученную модель. И загрузить ее например в open cv?
Да там есть функция експорта. Но обучить будет не легко.
Легче будет установить все на свой комп, чем обучить 😂
Я к тому, что если вам не понятен процес установки и ошибки по зависимостям, то обученин будет гораздо сложнее. Ведь чел показал готовое с сайта тензора.
Даю наводку, все хорошо работает с версией пайтон 3.8
Если на видеокарту, то надо CUDA поставить от Nvidia. Только тогда все работает.
А потом вам надо побольше изображений и процесс обучения идет попиксельно. То есть да, много времени пойдет.
Так, поверхностно. По хорошему надо знать диференциал и мат анализ, чтоб осилить как реализован нейрон. И тогда вообще станет понятно что за функции и почему.
И результат всегда приближен к истине. То есть как человек на 100% деталь пока сложно опознать, будет результат очень приближен. И он береться за истину, так как там измеряется вес. Там нет интеллекта, там интерпретация интеллекта через мат анализ.
Я тоже думал что все нахаляву, сел и поехал. Установил все на комп, загрузил дату свою, свои картинки и получил черную картину в результате и низкий % вероятности😃
А как обучить нахождение на своих изображениях) Требуется сделать поиск по изображениям в интернет магазине одежды)
1. Сбор данных:
- Соберите большой набор изображений одежды из вашего магазина.
- Разметьте изображения по категориям, стилям, цветам и т.д.
2. Выбор модели:
- Используйте предобученную модель (например, ResNet, VGG, или EfficientNet).
- Настройте ее на ваш набор данных (fine-tuning).
3. Обучение модели:
- Используйте технику transfer learning.
- Обучите модель извлекать признаки из изображений одежды.
4. Создание векторных представлений:
- Используйте обученную модель для создания эмбеддингов изображений.
5. Реализация поиска:
- Используйте алгоритмы поиска ближайших соседей (например, косинусное сходство).
6. Интеграция в магазин:
- Добавьте функцию загрузки изображений для поиска.
- Реализуйте быстрый поиск по векторным представлениям.
Это если кратко))
у меня такая ошибка : 'str' object is not callable. подскажите пожалуйста как решить, писала всё как на видео
Если возможен вариант когда фотография-изображение не содержит ни одного искомого изображения-объекта, то нужно еще один создавать класс None когда объекта на фото нет?
спасибо за видео все понятно объяснил и показал, решил сам написать, но очень долго обучается что делать? выше 0.17 попадание не доходит
после блока x_train = x_train / 255 нужно проверить поменялся ли у тебя параметр по x то есть градация серого
и глянь figsize , он должен быть 10,10
А как эту обученную модель теперь скачать на комп и подключить к проекту?
Как сделать чтобы нейронка распознавала нужные изображения в браузере, например листаешь вкладку с фотографиями, и она как то распознает нужное, по датасетам
Для распознавания изображений в браузере можно использовать JavaScript-библиотеки машинного обучения, такие как TensorFlow.js или ml5.js. Алгоритм:
1. Загрузите предобученную модель или обучите свою на нужном датасете.
2. Создайте расширение для браузера, которое будет анализировать изображения на открытых страницах.
3. Используйте API браузера для доступа к изображениям на странице.
4. Примените модель к каждому изображению для классификации.
5. Отобразите результаты или выполните нужные действия с распознанными изображениями.
Причем не забудьте, что важно учитывать производительность и соблюдать правила конфиденциальности при работе с данными пользователя.
А как заставить эту нейронку распознавать изображение не из выборки? Допустим, я загружаю изображение через load_img(' ') и передаю её в модель?
Здравствуйте, удалось найти?
Здравствуйте, удалось найти?
Для начала стоит создать функцию нормализации фотографий (по примеру из начала кода автора, где изображения разбиваются на пиксели и определяются количество пикселей и границы цвета), потом нужно прогнать входное изображение через такую функцию и далее подать в model.predict()
Сделал все как в ролике .НО! получается постоянно очень большие ошибки и маленькая точность.Прошу помочь
У меня вообще она ни разу не угадала )))
посмотри другой урок но не от этого автора
А если у меня свой набор фотографий-изображений по каждому классу, то как это загрузить в Keras?
Здравствуйте, удалось?
Здравствуйте! Спасибо за ваш канал. Решил поэкспериментировать с кодом где я преобразую 784 просто в строку без этих вот команд. Результат вроде бы должен быть одним и тем же. Но при обучении очень высокая ошибка, а у вас она порядка сотых.. у меня больше 2-х. Почему так? Вы может и не ответите мне, но я все же рискну и спрошу у вас))) А то вот полно таких видео с другими блогерами где вы все строго используете команду Flatten(input_shape=(28, 28, 1)). А почему в начале не преобразовать просто в одномерный вектор чтоб было соответствие вашей архитектуре сети? Тогда обучив сеть и взяв весовые коэффициенты путем перемножения матриц и функций активации ее можно использовать уже в других программах. А вот так как вы все рассматриваете однотипные примеры по распознаванию текста и прочего, не дает возможности строить нейронную сеть для любых задач. Потому что с одномерным вектором она никак не обучается правильно
import os
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '2'
import numpy as np
import matplotlib.pyplot as plt
from tensorflow.keras.datasets import mnist # библиотека базы выборок Mnist
from tensorflow import keras
from tensorflow.keras.layers import Dense, Flatten
(x_train, y_train), (x_test, y_test) = mnist.load_data()
# стандартизация входных данных
x_train = x_train / 255
x_train_my = x_train.flatten()
x_test = x_test / 255
x_test_my = x_test.flatten()
y_train_cat = keras.utils.to_categorical(y_train, 10)
y_test_cat = keras.utils.to_categorical(y_test, 10)
plt.imshow(x_train[2], cmap=plt.cm.binary)
plt.show()
x_train_my_2 = []
x_test_my_2 = []
for i in range(0, int(len(x_train_my)/784)):
x_train_my_2.append(x_train_my[i:784 + i])
for ii in range(0, int(len(x_test_my)/784)):
x_test_my_2.append(x_test_my[ii:784 + ii])
j = 59999
print(len(x_train_my_2[j]))
print(y_train_cat[j])
model = keras.Sequential()
model.add(Dense(128, input_shape=(784,), activation='relu'))
model.add(Dense(10, activation='softmax'))
print(model.summary())
model.compile(optimizer=keras.optimizers.Adam(0.001),
loss='categorical_crossentropy',
metrics=['accuracy'])
model.fit(np.array(x_train_my_2), y_train_cat, batch_size=32, epochs=5, validation_split=0.2)
model.evaluate(np.array(x_test_my_2), y_test_cat)
А вот что выдает при обучении:
Epoch 1/5
1500/1500 [==============================] - 4s 3ms/step - loss: 2.3098 - accuracy: 0.1074 - val_loss: 2.3103 - val_accuracy: 0.1040
Epoch 2/5
1500/1500 [==============================] - 3s 2ms/step - loss: 2.3006 - accuracy: 0.1151 - val_loss: 2.3081 - val_accuracy: 0.1073
Epoch 3/5
1500/1500 [==============================] - 4s 2ms/step - loss: 2.2931 - accuracy: 0.1226 - val_loss: 2.3148 - val_accuracy: 0.1024
Epoch 4/5
1500/1500 [==============================] - 4s 2ms/step - loss: 2.2795 - accuracy: 0.1344 - val_loss: 2.3242 - val_accuracy: 0.1042
Epoch 5/5
1500/1500 [==============================] - 4s 2ms/step - loss: 2.2580 - accuracy: 0.1529 - val_loss: 2.3411 - val_accuracy: 0.1020
очевидно что ничего не распознается правильно
у меня точно такая же проблема и ошибка точно такая же как и увас порядка 2.3
Ну как с решением данной проблемы, я тоже заострил на данном моменте внимание и ни как не могу понять, что делать что бы данные распознавались правильно
Если у вас получилось и если вам не трудно объяснить, прошу распишите!!!
Хорошее видео!
А как в один входной нейрон можна подать сразу 784 значения? Зачем тогда остальные входные нейроны?
Ваш вопрос затрагивает важную концепцию в архитектуре нейронных сетей.
1. Входной слой:
- Обычно каждый входной нейрон соответствует одному значению входных данных.
- В случае с изображением 28x28 пикселей (784 пикселя) у вас будет 784 входных нейрона.
2. Flatten операция:
- Двумерное изображение "разворачивается" в одномерный вектор.
- Каждый пиксель становится отдельным входом для нейронной сети.
3. Структура сети:
- Нет "одного входного нейрона" принимающего все 784 значения.
- Вместо этого есть 784 отдельных входных нейрона.
4. Обработка данных:
- Каждый из 784 нейронов принимает значение одного пикселя.
- Все эти нейроны вместе представляют полное изображение.
5. Следующие слои:
- Скрытые слои обрабатывают эту информацию, выявляя паттерны.
6. Преимущества:
- Позволяет сети учиться на пространственных отношениях между пикселями.
- Каждый пиксель может вносить свой вклад в распознавание.
Таким образом, нет "остальных" входных нейронов - все 784 нейрона используются для представления полного изображения.
Подскажите, а как теперь из этого кода сделать приложение для андроид?
подскажите а как обычно решается задача установления факта наличия или отсутствия какого то одного класса на фото
А узнать по какой картинке, из набора обучающих данных, нейросеть определила изображение?
Вы так и не поняли , как работает нейросеть...
Да, пересмотрите ещё разок видео. Нейросеть не сравнивает входное изображение с тестовыми, она соотносит входные данные с «весами» нейронов и приходит таким образом к ответу
Здравствуйте! Есть ли такое же видео для обучения машинному переводу в Google Colaboratory? То есть, загрузка параллельных данных и процесс настройки обучения?
Etudarium, мне нужна ваша помощь, если не сложно, ответьте мне пожалуйста
Очень познавательное видео, а можно где-то исходники этих фоток взять?
Подскажите пожалуйста, а как изменить код чтобы использовать свою датабазу?
Здравствуйте, получилось у вас это сделать?
Качественно, спасибо!
Спасибо большое, очень доступно!
я начал учить питон чтобы потом перейти на нейронку или ИИ скажите плз будет ли это актуально через 5-10 лет и какие перспективы у всего этого что можно будет делать с помощью этого?
В целом, нейронки/ИИ обязательно будут актуальны через 5-10 лет, а то и 50, т.к. щас все стремятся к автоматизации, из-за чего ИИ не перестанет быть актуальным, если, конечно, всякие активисты не начнут устраивать митинги по защите ИИ от его эксплуатации ;)
как сказал один ведущий нейронщик из Теслы, с появлением ChatGPT и ему подобных сервисов, скоро самым популярным языком программирования станет - английский)
Спасибо большое!
Скажите, есть ли иная возможность приобрести ваш курс, кроме как на Udemy?
Здравствуйте! Сейчас пока в процессе переноса курсов на другую платформу. Можете скачать мою одноименную книгу на Литресе (автор Т.Казанцев)
info-hit.ru/course-iskusstvennyy-intellekt-i-mashinnoe-obuchenie-osnovy-python/
очень круто, спасибо!
Хотелось бы нейронку, которая бы определяла мой голос и выполняла голосовые команды, которые исходят от меня, а на от кого попало
Здорово!
А скинуть файл с колаба слишком сложно
Люди, если вы хотите углубится в эту тему то почитайте про свёрточные сети, их точность предсказания намного выше
в данном видеоролике какие алгоритмы классификации используются?
логическая регрессия?
Скажите пожалуйста, как каждому из 10 нейронов был задан конкретный класс? Не понимаю где мы задали, что, например десятый нейрон активируется на ботинке?
Это уже готовый датасет (созданный специально для практики и обучения специалистов по МО), и в нем уже изначально заданы 10 классов для каждого типа одежды
@@etudarium5387 Здравствуйте. Подскажите, пожалуйста, как свой датасет использовать? Имеется архив изображений объекта интереса
Предсказывать? Предсказывать..... Тут скорее всего - определять/распознавать...
Как сеть применима в жизни. Когда подаем большой снимок 1920х1080, где на одном участке фото может быть футболка.
Но у нее может быть отличный от тренировочных фото угол, например 45° и другие отношения ширины и высоты, например широкая футболка.
Нам нужна еще какая-то сеть определения позиции возможного класса на большом фото? А потом сделать сжатие фото до нужной модели? А как нормировать углы, это только на тренировке будет все четко и прямо.
Определение вещи на фото и определение места на фото это две независимые операции. По идее код должен принимать только фото объекта для определения, все что не относиться к этому процессу должно быть вынесено отдельно
@@import_this эта сеть не применима в жизни, это пример, задача, которую студент учится решать в процессе обучения. Реальная есть будет состоять из большего количества слоев и нейронов. Нейронную сеть можно обучить находить объекты на изображении вне зависимости от их положения.
@@morgan3692 да, согласен. Но я ориентировался на свой опыт в ecommerce, где нет необходимости обучать искать, а есть конкретные фото товаров. Поэтому сказал, про то, что эти операции стоит разделить
Вы просто супер, спасибо за видео)
Ужасно раздражает музыка на фоне .. .. Зачем вообще накладывать какой-то шум который мешает слушать объяснение
какой тип нейронной сети здесь?
Спасибо!
про дата сеты что-то вообще информации мало... как подготовить свой датасет для обучения и какая структура данных должна быть в нем.. не подскажите где нарыть инфу ?
Обычно датасет предоставляет заказчик, например, выгружает файл со всеми данными в excel или .csv формате. Если хотите подготовить свой датасет, то для качественного обучения потребуются сотни и тысячи данных, но вы также можете сделать это самостоятельно. Есть также сайты, где можно скачать различные датасеты для практики, например, на github или kaggle
Отличное видео! Не могли Вы рассмотреть создание нейросети, допустим, для определения заболеваний по МСКТ или КТ снимках?
Просто надо загрузить снимки заболеваний, а не одежды и все
@@jenniekasseta можешь сказать как это сделать? Я вот насчёт пикселей не понял, зачем это?
А книге "pytorch.освещая глубокое обучение" есть развернутый пример по КТ
@@dios9168чтобы вычислительные мощности компьютера тратили меньше времени на вычисления
Здравствуйте, тоже интересуюсь данной темой, вам удалось найти?
Сделай пожалуста пример как потом эту обученную модель использовать в своём приложении на C++ C# Delphi JavaScript PHP
Здравствуйте!
При выводе 25 картинок почему-то возникает ошибка:
IndexError Traceback (most recent call last)
in ()
5 plt.yticks([])
6 plt.imshow(x_train[i])
----> 7 plt.xlabel(class_names[y_train[i]])
IndexError: list index out of range
Не понимаю в чём может быть проблема. Код как в уроке.
Ошибку нашёл :) был пропущен один класс в списке, в итоге получилось 9 классов вместо 10-ти
Интересная информация, благодарю 🙏
Бомба
Доброго времени суток. Можно ли обучить нейронку распознавать действия? Касаемо футбола. Отдал пас, забил гол, отдал голевую передачу, совершил перехват мяча, отобрал мяч, выбросил аут, подал угловой, сфолил, сфолил на нем и тд?
насколько я знаю, в футбольной индустрии уже используются специальные программы, которые автоматически считывают все действия каждого футболиста на поле, включая все вами перечисленные , и выдают очень подробную статистику
Я, конечно, все понимаю. Но почему урок для новичков строится на преимущественно использовании готовых решений? Имхо, как было нихуя не понятно, как оно работает в своей основе, так и осталось. Было бы логично показать очень простой вариант, но написанный полностью с нуля, так и базовые принципы построения архитектуры стали бы понятными и можно было бы адаптировать полученные знания под другие ЯП.
Посмотрите что такое диференциал. Там по сути алгоритм диференцирования вложен.
А тут чувак показал уже фреймворк Керас от тензора. И по сути переводит урок тензора.
@@IvanPetrov-b8n я знаю что такое дифференциал. Вопрос в оом, зачем нам этот фреймворк, если мы новички и в душе не ебем как оно работаеи? Мой поинт в том, что нужно давать не решение частного случая частным инструментом, а объяснять фундамент.
Спасибо за видео! А код программы в текстовом формате можно получить или только в книге?
Очень полезная информация
Да уж, друзья, хочется верить, что когда-нибудь так называемое "машинное обучение" уйдëт от подбивки весов методом градиентного спуска до чего-нибудь более умного, но, видимо, пока не судьба.
Надо было все таки делить на 256)
0 из 10 мне писал class_names ошибка а только через полчаса случайно додумался поменять на list и тут же всё заработало. 0 из 10 не рекомендую. уточнять надо что писать class_names или list
Подписка, хороший контент
а смысл освоить чужой готовый API? как оно работает это магия и все картинки с кружочками никак не помогут ее воспроизвести. еще и окружение гугловское. вы свою сеть строите или где?
А у меня ни хрена не угадывает ! Какая то тупая сеть получилась )))
+
Очень похоже, что данная лекция это лайтовый плагиат с бесплатной лекции Андея Созыкина "Нейросети на Пайтон", которые присутствуют тут же на Ютубе.
Ваш комментарий оскорбителен и необоснован. Использование нейросети для распознавания изображений одежды (набор Fashion MNIST) представляет собой одну из самых популярных задач для тех, кто только начинает изучать нейронные сети и используется практически во всех курсах/книгах/учебниках/мануалах по машинному обучению и нейросетям. Если попробовать найти данную задачу в интернете, то можно легко получить сотни ссылок как на русском так и на английском языках, где объясняются как с ним работать, поэтому неудивительно, что какая-то часть контента будет похожа, ибо сам набор данных, который используется для обучения, является одинаковым для всех
ужас, чел даже не удосужился другой датасет взять, трижды пережёванный кал
plt.figure(figsize=(10,10))
for i in range (25):
plt.subplot(5,5,i+1)
plt.xticks([])
plt.yticks([])
plt.imshow(x_train[i])
plt.xlabel(class_names[y_train[i]])
Ругается на 3 строчку, поддчеркивает plt
File "", line 3
plt.subplot(5,5,i+1)
^
IndentationError: expected an indented block
@@ruslooob они не умеют думать и переводить......
Спасибо, очень полезно)