До чего дошел искусственный нейрон
Уже не один фантаст предсказывал гибель человечеству из-за искусственного интеллекта – ан нет. Настоящих ученых можно остановить только бомбой с прямым попаданием. Сейчас очень много внимания уделяется так называемым искусственным нейронным сетям.
С чего начинали
Если не брать во внимание обработку больших массивов информации, человеческий мозг обладает огромным преимуществом по сравнению с компьютером. Человек может распознавать лица, даже если в поле зрения будет много посторонних объектов и плохое освещение. Человеческий мозг не перестанет работать только потому, что несколько клеток погибнет. Но самой удивительной особенностью человеческого мозга является то, что он может учиться.
Расчеты головного мозга производятся посредством тесно взаимосвязанных нейронных сетей, которые передают информацию, отсылая электрические импульсы через нейронные проводки, состоящие из аксонов, синапсов и дендритов.
В 1943 году компания McCulloch and Pitts смоделировала искусственный нейрон, как переключатель, который получает информацию от других нейронов и в зависимости от общего взвешенного входа, либо приводится в действие, либо остается неактивным. В узле искусственной нейронной сети пришедшие сигналы умножаются на соответствующие веса синапсов и суммируются. Эти коэффициенты могут быть как положительными (возбуждающими), так и отрицательными (тормозящими). В 1960 годах было доказано, что такие нейронные модели обладают свойствами, сходными с мозгом: они могут выполнять сложные операции распознавания образов, и они могут функционировать, даже если некоторые связи между нейронами разрушены.
Простые сети из таких нейронов могут обучаться на примерах, известных в определенных областях. Perceptron Фрэнка Розенблатта использовал аналоговые электрические компоненты, чтобы создать бинарный классификатор. Это такое умное название системы, которая принимает ввод - изображение или фигуру - и определяет его в одну из двух категорий типа «квадратный» и «неквадратный». Но компьютеры на то время не обладали достаточной вычислительной мощью, чтобы эффективно принимать множество таких решений. А ограниченное число синтетических нейронов также ограничивало сложность операций, которые могла проводить сеть.
Чуть позднее была создана программа NETtalk, которая применяла искусственные нейронные сети для машинного чтения текста и была первым широко известным приложением. С этого началась другая волна, вызвавшая интерес к исследованиям ИНС и поднявшая шумиху вокруг магического обучения мыслящих машин.
К чему пришли
Искусственные нейронные сети, используемые сегодня, являются реальными системами, которые задействуют слоевой подход для выработки понимания, а не сетью узлов, сообщающих информацию туда и обратно между собой.
Эти системы используют один алгоритм для обработки представления ввода, а затем передают его следующему слою для обработки другим алгоритмом, который даст более высокоуровневое понимание, и так далее. Другими словами, это нечто вроде каскадных математических уравнений, которые могут различать отдельные детали и паттерны. В случае распознавания, к примеру, образов, первый слой ИНС анализирует яркость пикселя, а затем передает его второму, чтобы определять кромки и линии, образованные полосками аналогичных пикселей. Следующие слои могут идентифицировать формы и текстуры, а дальше по цепочке они могут определять кластеризацию деталей этих абстрактных изображений в виде реальных физических элементов вроде глаз или колес. В самом конце кластеризация высокоуровневых деталей вполне может интерпретироваться, как реальный объект: два глаза, нос и рот образуют лицо и т. д.
На конференции I/O в мае 2016 года Google объявила, что нейронные сети, работающие в основе продуктов вроде Google Photos, сейчас используют 30 разных слоев, чтобы осмысленно обрабатывать изображения.
Нейронные сети не могут обучаться, пока в них не вбросить достаточно данных. Они нуждаются в больших объемах информации, чтобы понимать ее, пропускать через слои и пытаться классифицировать. В процессе обучения ответ машины сравнивается с созданным человеком описанием наблюдаемого объекта. При неверном ответе сеть использует метод обратного распространения ошибки, чтобы поправить себя. Для этого делается шаг назад по каждому предыдущему слою и каждый раз вносятся математические поправки в этот слой, чтобы в следующий раз ответ был верным. Этот повторяющийся процесс известен как глубокое обучение, и именно оно наполняет сети человекоподобным интеллектом.
Сейчас обучение ИНС уже провела компания Google (а откуда, вы думаете, взялись правильные ответы на набивший оскомину вопрос: «Окей, Гугл,...?»). Facebook показал алгоритм DeepFace, который может распознавать конкретные лица людей с точностью 97%. Wolfram Alpha создала систему, которая может определять объекты и даже позволяет внедрить ее в ваше собственное программное обеспечение. Цифровой персональный ассистент Cortana от Microsoft настолько точен, что может определить разницу между снимком пемброк-вельш-корги и кардиган-вельш-корги, а здесь разницу заметит не каждый человек. Skype использует нейронные сети для перевода с одного языка на другой на лету; китайский поисковик Baidu использует их для таргетированной рекламы в своем поисковике, и т. д..
А один американский гражданин самостоятельно создал антикошачью охранную сигнализацию, работающую на основе нейросети и защищающую его газон при помощи опрыскивателей. В проекте он использовал четыре устройства: одну камеру наблюдения, установленную на стене дома, компьютерную платформу Jetson TX1, Wi-Fi-модуль Particle Photon для «интернета вещей» и реле, подключённое к поливалкам. Если камера засекает изменение, она последовательно делает семь снимков и передаёт их через FTP на Jetson. На Jetson работает система, основанная на нейросети Caffe: она определяет, есть ли на фотографии кошка. Если кошка обнаружена, сигнал передаётся на Photon, и тот через реле включает поливалки на две минуты. Изначально используемая готовая нейросеть корректно определяла кошек лишь в 30% случаев, пришлось ее дополнительно тренировать. В результате – кошки на газоне больше не валяются.
Как и все «умное», нейронные сети могут и ошибаться. Этим летом приложение Google Photos ошибочно пометило двух чернокожих людей на фотографии как «горилл». Новый разумный механизм распознавания изображений Flickr, работающий на нейронной сети Yahoo, тоже пометил чернокожего человека как «обезьяну». Google быстро поправила проблему, просто убрав метку «горилла» из Photos.
А дальше что?
На этом ученые не останавливаются. Помимо передачи нейронным сетям точных данных, совершенствуется программное обеспечение путем объединения сетей. Недавние исследования в сотрудничестве Google и Стэнфордского университета перешли в создание программного обеспечения, которое может описывать целые сцены, а не просто один объект на них, вроде кота.
ИНС, как вид искусственного интеллекта, уже оказывают помощь людям. В прошлом нужно было просеивать свои фотографии, найти снимки приятеля с волейбольным мячом. Сегодня нейронные сети делают это для вас.
Обещают, что скоро нейронные сети (искусственные, конечно же) научатся распознавать на фотографиях признаки серьезных заболеваний, будут «читать» рентгенограммы и ставить диагнозы. А что потом?... «Скайнет»?