{"id":14277,"url":"\/distributions\/14277\/click?bit=1&hash=17ce698c744183890278e5e72fb5473eaa8dd0a28fac1d357bd91d8537b18c22","title":"\u041e\u0446\u0438\u0444\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0438\u0442\u0440\u044b \u0431\u0435\u043d\u0437\u0438\u043d\u0430 \u0438\u043b\u0438 \u0437\u043e\u043b\u043e\u0442\u044b\u0435 \u0443\u043a\u0440\u0430\u0448\u0435\u043d\u0438\u044f","buttonText":"\u041a\u0430\u043a?","imageUuid":"771ad34a-9f50-5b0b-bc84-204d36a20025"}

Как работают нейросети - коротко и простыми словами

Обычно, когда мы хотим что-то автоматизировать, у нас есть некие входные данные и ожидаемый результат. Например, у нас есть расстояние поездки в такси и оценка пробок, а нам нужно автоматически вычислять время поездки. Классическое решение: сформулировать алгоритм для вычисления результата.

Когда такой алгоритм «как из данных X получить результат Y» мы можем своим умом сформулировать и запрограммировать – всё отлично.

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

Нейронные сети позволяют нам не формулировать алгоритм (формулу) своим умом, а находить его итеративным путём и вот как это работает:

Все уже видели такие схемы с кружочками – нейронами и стрелочками –связями, но как это реально понять без нудной теории? А вот так:

Всё что на схеме – чистая математика. Изображение превращается в числа, потом они передаются дальше, преобразуются математически и на выходе получаются тоже числа. Никакой логики у нейронов и связей нет, это всё описывается формулами.

Изначально, все связи – это случайные числа. Поэтому все математические операции со входными числами изображения дают случайные результаты. Для упрощения, можно представить это как железнодорожную схему с со случайными семафорами:

Необученная нейросеть

При такой случайной организации наш набор пикселей в виде кота приезжает и в "кошачий" и в "собачий" результат, что делает его абсолютно неточным - 50\50 (случайности распределяются равномерно).

Обучение

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

  • На вход подается изображене собаки или кота (с заранее известным нам правильным результатом)
  • Вычисляется насколько нейросеть ошиблась
  • Ранее полностью случайные связи математически корректируются и становятся менее случайными и ошибка уменьшается

Это повторяется многократно пока, если говорить на нашем примере, семафоры не будут настроены таким образом, чтобы на выходе получался правильный результат.

У обученной нейросети связи настроены таким образом, что "кошачий" ввод с высокой вероятностью дает только "кошачий" результат и аналогично с собаками.

Это и есть большое достижение нейронных сетей: Мы получаем правильно настроенную железную дорогу с миллионами семафоров, заранее не зная как их настроить. А если без аллегорий: очень сложную математическую формулу, которая решает задачу: Из чисел составляющих изображение кота получить число вероятности наличия кота.

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

P.S. Я — разработчик и предприниматель. Мой основной бизнес это RocketBrush Studio — студия аутсорсинга и разработки игр. Мы активно растем, и если вдруг вы лично ищете работу или ваша организация предлагает услуги для бизнеса, то у нас есть задачи в области управления, маркетинга, развития бизнеса и продаж (B2B, США \ Европа), SEO и SMM, Веб-дизайна, QA (Unity), Unity C# и Node.JS разработки. А также я ищу хорошего помощника.

Вы можете связаться со мной через [email protected]. Я открыт для любых предложений в области бизнеса и IT \ gamedev.

0
58 комментариев
Написать комментарий...

Комментарий удален модератором

Развернуть ветку
Владимир

Ну только ребёнку достаточно обычно один раз увидеть котика чтобы отличать его от собачки

Ответить
Развернуть ветку
Denis Zotov

Вот только для этого ребенку должно быть уже года два, то есть ему нужно длительное предварительное обучение, прежде чем это сработает

Ответить
Развернуть ветку
Куй

Это неправда. Могу точно сказать что уже в 8 месяцев проблем с этим нет!!!

Ответить
Развернуть ветку
Denis Zotov

Я допускаю, что Ваш ребенок в 8 месяцев может произнести слова "кошка" и "собака", но во-первых, это, скорее, исключение из правил, а во-вторых, не сильно влияет на тезис, что нейронной (вполне буквально) сети под названием "человек" требуется уйма времени для первоначального обучения. И, что характерно, возможности человека не масштабируются так, как компьютеры.

Ответить
Развернуть ветку
Mercator

Вы считаете, что пока ребенок не заговорит, нельзя сделать никаких выводов, что он отличает, а что нет? До двух лет полностью черный ящик, серьезно?

Ответить
Развернуть ветку
Алексей Соколов

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

Ответить
Развернуть ветку
Куй

Он буквально написал абстрактную чушь, а вы еще и поддакиваете.

Ответить
Развернуть ветку
Алексей Соколов

Он написал, что ребенку (как и нейронной сети) необходимо время, чтобы научится отличать собак от кошек. Он написал это в ответ на комментарий о том, что ребенок делает это мгновенно.
Что здесь чушь, а что абстракция? Собственно вы придрались к детали, к возрасту в 2 года. Как то по детски.

Ответить
Развернуть ветку
Куй

Откуда вы такие беретесь????
"Он написал это в ответ на комментарий о том, что ребенок делает это мгновенно." - кто такое писал?
"нейронной (вполне буквально) сети под названием "человек" требуется уйма времени для первоначального обучения" - уйма это сколько? неделя ?месяц? год? 5 лет?
"Первоначальное обучение" - это вообще что такое? До какого состояния длится первоначальное обучение?
"ребенок в 8 месяцев может произнести слова "кошка" и "собака", но во-первых, это, скорее, исключение из правил" - кто устанавливал эти правила. Есть ли у этого индивида достаточный опыт взаимодействия с множеством детей в разных условиях, чтобы утверждать это?
Чувак просто высер "вилами по воде" сделал, как часто бывает, а вы еще и поддерживаете. Стыдно должно быть.

Ответить
Развернуть ветку
Алексей Соколов
кто такое писал?

Диалог в это ветке начат не с вашего комментария. Он отвечал другому человеку. Если бы вы просто посмотрели бы выше, то вопрос бы не возник.

"Первоначальное обучение" - это вообще что такое? До какого состояния длится первоначальное обучение?

Обучение базовым навыкам. Этапы для дошкольного возраста можно найти в профильной литературе.

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

Ну конечно. Целые книги написаны про развитие детей. Собственно, как я и писал, вы придрались детали, к обозначенному возрасту ребенка. Хотя речь шла про обучение нейросетей и смысл абсолютно ясен.

Чувак просто высер "вилами по воде" сделал, как часто бывает, а вы еще и поддерживаете. Стыдно должно быть.

Аххах))

"Откуда вы такие беретесь????"
Ответить
Развернуть ветку
Куй

Если бы вы внимательно прочитали комментарий этого индивида, и поняли о чем он, вы бы сейчас не писали всю эту чушь про "дошкольное образование"))))))

Ответить
Развернуть ветку
Mercator

Меня реально пугает, какие у некоторых понятия о детях.

Ответить
Развернуть ветку
Стерлядка Вяленая

так у них детей нет, а выводы есть))))))

Ответить
Развернуть ветку
Алексей Соколов

Удивительный, конечно, повод, чтобы пугаться.

Ответить
Развернуть ветку
Владимир

просишь пальчиком показать кошечек или собачку, в чем проблема то?)

Ответить
Развернуть ветку
Mercator

Собственно да.

Ответить
Развернуть ветку
Jon Rembo

Покажите ему фото сфинкса и щенка мопса, с вероятностью 50% нейронка даст сбой, тк оьучена только на домашней живности.

Ответить
Развернуть ветку
Елена К

так это пока что так, я уверена, что нейросети будут совершенствоваться и через несколько лет будет отличать и сфинкса, и мопса, и французского бульдога

Ответить
Развернуть ветку
Вадим Вахрамов

Есть связи, которые формируются быстрее и лучше благодаря наследованию от предыдущих поколений. Изза них у нас 5 пальцев, кошки боятся воды, ловят мышей, закапывают керамическую плитку в горшок с экскрементами.

Ответить
Развернуть ветку
badResistor

просто его нейронная сеть имеет большое предобучение которое заточено на разделение образов именно такого типа.
А вот когда область специализированная одного взгляда не достаточно, надо долго и планомерно набирать опыт(самое тупое различать азиатов, даже тут мозг имея большую базу не сразу понимает что есть что).

Ответить
Развернуть ветку
55 комментариев
Раскрывать всегда