Что такое нейросесть: что она может и как работает
В последнее время в мире появляется все больше функционала, созданного при помощи нейронных сетей. Различные сервисы, приложения, программы часто используют такого рода сети для ускорения решения различных задач. Редакция «057» решила разобраться, что это за популярная технология, откуда она взялась и как работает.
Зарождение
Первые попытки воссоздать работу человеческого мозга в рамках компьютерных технологий были еще в середине ХХ века. Однако технический прогресс 1950-х годов не позволял полностью раскрыть потенциал нейросетей и воссоздание человеческого «биокомпьютера» шло с большим трудом. Еще в 1943 году, Уорен Маккалок и Уолтер Пирс написали статью о логическом исчислении идей и нервной активности. Для своей нейросети они планировали использовать вакуумные лампы, но больших успехов добиться ученым прошлого не удалось. В 1958 Фрэнк Розенблат изобретает перцептрон - компьютерную модель восприятия человеческим мозгом информации. Попытка реализовать его в машинном варианте называлась «Марк-1», который стал первым в мире нейрокомпьютером. Однако, несмотря на некоторые успехи, к 1963 интерес к нейросетям сильно падает и человечество на время перестает развиваться в этом направлении. Конечно слабые попытки, отдельных ученых вести работу с нейросетями были, но большого успеха они не имели. Лишь Джосефу Хопфильду с его «сетью Хопфилда», минимизирующей энергию, удается вернуть интерес общества к этой теме. В этом же году, финский ученый Теуво Конохен представил миру самообучающуюся сеть, решающую задачи кластеризации и визуализации данных. Это вызвало интерес у научного и мирового сообщества, но лишь к 2007 году, ученому Джефри Хинтону удается показать миру алгоритмы глубокого обучения нейросетей. С этого момента у ученых появляется возможность создания приложений для решения конкретных задач (поиск лиц, картинок и прочее).
Как работает нейросеть
Человеческий мозг, являющийся прототипом нейросети, состоит из, примерно 86 миллиардов нейронов, которые связаны в единую систему для принятия, обработки и передачи различных данных. Каждый нейрон в этой цепочке представляет из себя своеобразный микропроцессор, к которому тянутся отростки для принятия импульсов - дендриты. Также есть аксоны - выходы для передачи полученных импульсов другим нейронам.
Искусственная нейросеть имитирует процесс обработки информации своим биологическим аналогом и являет собой массив микропроцессоров. Которые разделены на три группы.
У нейросети есть:
Сенсоры (точки входа)
Реагирующие (точки выхода)
Ассоциативные (скрытые нейроны)
Первые выполняют функцию приемника, и через них в нейросеть поступает информация для обработки.
Вторые - это нейроны, через которые выдается конечный результат.
Третьи же - это рабочий массив нейронов, которые расположены между точками входа и выхода информации. Именно здесь происходит работа по ее обработке. И чем их больше, тем более точную обработку данных способна провести нейросеть.
Уроки для нейросети
Основным отличием нейросети от обычной программы является тот факт, что их не программируют, для выполнения своих функций, а обучают.
Есть несколько типов нейросетей, одни из которых облучаемые, другие самообучаемые, а третьи имеют смешанный тип.
Обучаемая нейросеть чем-то напоминает ребенка, поскольку требует много внимания и времени от своего создателя. После того как создатель дал нейросети массив информации, он сравнивает правильное решение и вариант, предложенный своим творением. Если между ними есть слишком большая разница, то исследователь корректирует нейросеть и обучение продолжается. Теперь сеть будет знать, как реагировать на данный запрос и не будет допускать тех же ошибок.
Самообучающиеся нейросети более мощные, и постигают мир без помощи наставников. Имея определенный алгоритм для обучения, нейросеть сама ищет ответ на поставленную задачу. Она фиксирует все ошибки и если это необходимо «откатывается» назад по цепочке ассоциативных нейронов до последнего верного шага. После этого она начинает процесс заново с учетом ошибки.
Для примера, есть игра, в которой автомобилем управляет нейросеть, а игрок ставит перед ней препятствие, которое авто должно объехать. Это позволяет нейросети обучаться вариативности и впоследствии этот опыт может быть использован для создания беспилотных авто, уже «обученных» объезжать неожиданные препятствия, а не ехать по строго заданному маршруту.
Все уже придумано природой
Как уже упоминалось ранее, ИСН -искусственно созданная нейросеть, это лишь копия части человеческого мозга. Хотя, данный функционал имеется не только у людей, а у любого живого организма. Для примера отлично подойдут муравьи или перелетные птицы.
Муравьи, при перемещении от своего места обитания в поисках пищи и строительных материалов выбирают максимально удобный и эргономичный путь, а в случае возникновения на нем преграды адаптируются под ситуацию.
Для проведения эксперимента, можно положить на, так называемую «муравьиную дорогу» камень или палку. Идущий первым муравей оценит ситуацию и выберет наиболее удобный маршрут. Он оставит за собой след из феромонов и укажет дорогу идущему за ним собрату, а тот следующему и так до конца цепочки. Если предположить, что слева путь к еде ближе, то произойдет следующая ситуация:
В первый раз, муравьи обойдут камень с обеих сторон, но впоследствии выберут тот маршрут, который будет ближе до источника пищи. Это произойдет потому, что с левой стороны будет идти все больше и больше насекомых, которые будут испускать больше феромонов. В итоге, левый маршрут станет постоянным для добытчиков. Примерно так же работает самообучающаяся нейросеть.
Все равно не мозг
Несмотря на самообучаемость и «ум» нейросети, она все же не является искусственным интеллектом, а является инструментом для решения определенных задач. Подбор правильных ответов, картинок или маршрутов - это не самостоятельное решение, а лишь генерация наиболее оптимальных вариантов решения запроса, сделанного человеком.
Чем полезны нейросети
Уже сейчас нейросети, прошедшие "школу" и набравшиеся опыта, активно внедряются в повседневную жизнь людей. Например, алгоритм Brain, основанный на нейросети, работает над рекомендациями сервиса Youtoobe. Именно нейросеть подбирает для вас контент, внимательно изучая ваше поведение и предпочтения, основываясь на просмотренных видео. Благодаря этому, многие ролики стали набирать куда больше просмотров не за счет прямого трафика поиска, а благодаря тому, что система сама предложила вам посмотреть этот контент.
Вот еще несколько примеров нейросетей, которые используются людьми уже сегодня:
MSQRD
Данная сеть позволяет изменять свои фото и превращать их в "шедевры искусства"
Rene
Эта сеть позволяет смотреть варианты, как шрифт будет выглядеть на экране еще до создания текста. Данная функция позволяет экономить время и сразу определяться, каким шрифтом писать текст.
Auto Draw
Этот сервис позволяет сделать набросок и создать из него иконку на экран. Его используют для генерации рисунков и иконок под свои задачи или просто для развлечения.
Everypixel
Система поиска фотографий по схожести. После загрузки картинки вы получаете набор схожих по стилю, цвету и изображению картинок. Сервис работает также как и сервис Google, но также может определять «эстетическую привлекательность» картинки. Это выгодно для того, чтобы понимать, будет популярна или нет эта картинка в соцсетях.
Logojoy
Сервис дизайна, который сам генерирует изображение. Исходя из ваших предпочтений по логотипам, цветам и формам, сервис создает дизайн для вас. Сервис не бесплатный, поскольку выдает множество готовых вариантов дизайнерских решений реально-существующих логотипов компаний. В дорогих тарифах клиенту еще дарят час консультаций с дизайнером.
В итоге, нейросети, хоть и являются сложными и продвинутыми структурами, все равно не смогут заменить людей, хотя и способны сильно облегчить им работу. На данный момент, для популяризации ИСН их используют в качестве развлечения или помощника, но в будущем, когда сети «научатся» использовать свой потенциал более широко, им будут доступны боле сложные задачи, чем поиск картинок или «старения» лиц на фотографиях.