Нейронные сети

Нейронные сети


(картинки картинки картинки)

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

ИНС - модель человеческого мозга. Дабы не лезть глубоко в медицину (все равно знающие люди заклеймят в несении бреда) скажу, что он состоит из миллиардов нейронов, которые между соединены между собой синапсами и передают друг другу сигналы. Например, если глазам нужно передать картинку мозгу, они сначала передают сигнал на входной набор нейронов, которые, в свою очередь, передают информацию (не картинку!) следующим нейронам. Проходя сквозь миллионы нейронов, информация принимает свой законченный вид в виде Макдоналдса, который вы наблюдаете в настоящий момент.

ИНС работает также. На этом статью можем заканчивать, спасибо за чтение!

Ладно, шучу.

Вообще, никто не знает, как именно работает ИНС. Серьезно. Она обучается, как и ваш мозг. Сама. Осознайте это. Никто специально не задает каких-то алгоритмов (тут я лукавлю, но на начальном этапе лучше в это не вникать) для ИНС, она учится.

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

Чем больше программист предоставит ИНС тренировочных тестов, тем выше будет ее точность. Счет может доходить до миллиардов тестов. В самом начале точность сети приблизительно равна 50%, она просто угадывает наличие человека. Спустя миллион картинок, точность выше 95%.

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

Но самое крутое в том, что любой может написать свою нейронку в стиле Google или Apple. Все алгоритмы, которые они используют в своих продуктах, давно известны. Но ваши нейронки никогда не достигнут их уровня, потому что у крупных компаний есть терабайты данных. У вас их нет. Следовательно, конкурировать с ними в точности ИНС у вас не получится. Из-за этого не стоит пытаться написать, скажем, свой переводчик.

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

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

(сюда стоит добавить 2 картинки, оригинальную и измененную)

Дополнительно замечу, что у нейронки нет базы данных (было такое заблуждение). Приведу пример. В детстве вы не знали, как выглядят цветы. Вы научились их "видеть" благодаря маме. Она показывала вам разные виды цветов. Вы научились их распознавать. Но у вас в голове нет базы данных всех цветов, какие вы видели в жизни.

Вот и все. Основы я рассказал. Если что-то непонятно или я где-то наврал, пишите нашему секретарю. Если вам понравится, я продолжу серию статей.

Report Page