Самое простое объяснение нейросети

preview_player
Показать описание
ВНИМАНИЕ!!!

В этом ролике я максимально просто расскажу что такое нейросети и как работает перцептрон. А еще я выдам готовый алгоритм обратного распространения ошибки БЕЗ матанализа и заумных слов. В конце ролика я покажу готовую программу с такой нейросетью, которую написал в Qt на языке C++ без использования специальных библиотек.

Таймкоды:
00:00 - введение
00:54 - датасет MNIST
01:36 - перцептрон
01:45 - нейроны
04:46 - веса и смещения
06:29 - функция активации
07:36 - прямое распространение
08:44 - обучение
10:14 - эпоха обучения
11:43 - вычисление ошибки
14:13 - обновленеи весов и смещений
15:36 - нерйросеть в Qt

#перцептрон #нейросеть #Qt
Рекомендации по теме
Комментарии
Автор

Вот это груз... спасибо за "простое" объяснение, проще наверное нейросеть попросить объяснить как она работает

va
Автор

С ВОЗВРАЩЕНИЕМ, спасибо за качественный материал!

WoWCoolBack
Автор

Поймал себя на мысли что, с 10:00 было оч трудно слушать речь. Музыка очень активная, и громче голоса. Видос топчик)

hblnmqd
Автор

Очень полезное видео, спасибо, ты практически на пальцах понятно разложил не самую простую тему.

Anshegar
Автор

как же я ору, как все пытаются "просто" объяснить основы нейронок и на моменте с обратным распространением каждый раз начинается вообще не простой ад)) хотя там всё очень просто:
и "квадратичная функция ошибки" - если её значение находится в пределах от -1 до 1 (т.е. функция активации последнего слоя либо сигмоида, либо softsign), то это простая подгонка под последующие вычисления производной. ведь производная квадрата Х равна 2Х. и чтобы избавиться от этой двойки сразу делят на 2. В итоге, при вычислении ошибки мы используем dЕ/dx = (x - y) если E = (x - y)^2/2 т.е. просто разницу между выходным значением и желаемым результатом. а если бы мы не возвели в квадрат, то ошибка попросту бы нивелировалась при вычислении производной.
и становится понятно почему ReLU ( x<=0 ? 0 : x>0 ? x ) является распространённой функцией активации, когда видишь, что её производная равна 0 либо 1, что упрощает вычисление обратного распространения ошибки и в ней вообще не учитывается значение этого нейрона. т.е. если нейрон никак не влияет на конечный результат, то и ошибку для него мы не вычисляем, и веса не меняем. это самая удобная функция для промежуточных слоёв.


зы. и в видео никак не разъяснено что такое вспомогательный нейрон (b) (смещение) у каждого слоя, что его значение всегда равно 1, т.к. важно не его значение, а веса, идущие от него.
зыы. лучшее объяснение этой темы в серии видео DeepLearning от канала 3Blue1Brown. в переводе Sciberia можно глянуть. там не просто. зато обретаешь понимание)

Achmd
Автор

Ура, тысячный ролик на тему создания нейронки для распознавания циферок просмотрен.

nakamasama
Автор

Программированием занимался, но в другой сфере, всегда было интересно как люди додумались до процесса обучения машин. Теперь многое прояснилось и эта тема уже не столь загадочна, спасибо за хороший и содержательный ролик!

dropdungeon
Автор

Спасибо. Всё более менее ясно и понятно.

nkikgbp
Автор

Отличный ролик! Сэкономил кучу времени))) Спасибо автору.

sergst
Автор

В нынешнее время редко когда название ролика соответствует содержимому, отдельный лайк за это

tirtir
Автор

Привет! Очень классный монтаж. Подскажи пожалуйста какую программу для монтажа используешь?

dota
Автор

спец алгоритм нифига себе. Спасибо! :) )))

AiNNGpT
Автор

Главное в том, что нейрон может иметь несколько входов и лишь один выход.

michaelsidorov
Автор

Посмотрел 4 : 45 видео, и чувствую закипел, теперь надо всё переварить продолжу смотреть позже, за взрыв мозга сразу лайк ставлю

Vaizard
Автор

Единственное видео в котором я все понял )

Kolemag
Автор

Спасибо. Очень занимательно. А можно в том же стиле не только про перцептрон? Он же вроде как считается изрядно устаревшим...

VengMike
Автор

Если это самое простое объяснение нейросети, то мне трудно представить, как будет выглядеть самое сложное.

Как говорится, ниx*я не понятно, но очень интересно.

zivler
Автор

1)Генерация случайных чисел.
2)Сравнивание значений с логическими 1и 0.
3)Задание результатов генерации ответов.
4)Структуризация данных для генерации ответа.
5)В итоге мы имее большое количество переменных, операторов, и конвертеров значений которые превращают переменную в команду для выполнения в программе абстрагирующую систему сложных данных в результат: Картинка, Видео, Аудио. Тупо Фотошоп с пером и ФЛСтудио с виртуальной миди клавиатурой, и виртуальный сканер экрана.

oldgamer
Автор

Ничего не понял, но очень понравилось...)

Grustinko
Автор

Здравствуйте, подскажите, а есть ли нейросеть для экселя?! Если да, то могли бы вы сделать на неё обзор?

suits