Найти тему
about.without

Что умеют нейросети и что это вообще такое?

О теории, практике и перспективах развития искусственных нейронных сетей
О теории, практике и перспективах развития искусственных нейронных сетей

Термины: искусственный интеллект, машинное обучение, нейросети, синаптические связи

Если говорить совсем просто, ученые взяли биологию мозга - нейронауку, взяли биологию компьютеров — программирование, и совместили. Получилось, как минимум много страшных терминов, которые у всех на слуху: искусственный интеллект, машинное обучение, искусственные нейронные сети и др. Давайте разберемся, что куда и почему.

Что там в программировании?

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

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

При чем здесь биология?

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

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

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

Еще во время 2ой мировой американские математики создали первую модель нейрона и доказали, что сеть из таких компонентов может выполнять логические операции. Позднее задумались, что если создать целую систему из таких нейронов, то она во многом сможет заменить человека. Сегодня искусственные нейроны уже способны решать много сложных задач — но как?

Можно прописать код, в котором будут перебираться все возможные вариации и решения — но это сложно, долго и нерационально. Для этого пришлось бы самостоятельно собрать всю историю решений какой-либо задачи, вручную ее перелопатить, выделить оптимальное решение, и уже потом внести его в код. Вместо этого можно написать такую программу, которая будет учитывать и перебирать все сама — смотреть на удачные и неудачные примеры, на их основе накапливая «опыт» — выискивая закономерности между успешными и безуспешными результатами. Как сигналы между нейронами в нашем мозгу, информация передается внутри искусственной сети, и так алгоритмы ее воспринимают. Ни одна нейросеть не будет работать сразу после создания — ее нужно сперва обучить на наглядных примерах. Для этого большие команды людей садятся за компьютеры и делают много схожих операций, таким образом нарабатывая базу из сотен тысяч примеров для алгоритма, по которым он потом сам учится. Система распознает задачу, ищет похожие элементы решения, распознает успехи и ошибки, анализирует их и потом сама выдает наиболее подходящий путь решения.

Что нейросети умеют сейчас?

Сейчас нейронные сети на пике популярности. Они быстро адаптируются к изменениям, самообучаются и в том числе учатся откидывать лишнюю информацию — поэтому они так привлекательны для различных сфер деятельности. «Это умеет и человек» — скажете вы, и будете правы, но есть одно «но». Машины это делают в тысячи раз быстрее, и при этом не устают и не отвлекаются.

Так, в маммологии (при лечении рака молочных желез) нейросети применяются для распознавания заболевания на разных стадиях. Уже удалось создать алгоритм, который оценивает скорость роста раковой опухоли. Ранее это делали врачи, для чего им приходилось смотреть в микроскоп и считать число определенных клеток, чтобы затем сравнить их с нормативом. Такой процесс занимает примерно 20-30 минут рабочего времени. Сейчас все, что нужно сделать врачу — выделить область на цифровом изображении, и алгоритм сам все посчитает и сравнит за пару секунд. Аналогично алгоритмы находят и сами опухоли. Чтобы научить их этому, врачи многократно отмечают на оцифрованных рентгеновских снимках доброкачественные и злокачественные области. Так они создают огромный массив данных для того, чтобы алгоритм мог увидеть закономерность. В неделю в одном только Сколково генерируется несколько терабайт информации, которая потом используется для обучения нейросетей. В перспективе ученые смогут создать такие технологии диагностики раковых заболеваний, которые будут практически автономны от врачей и смогут использоваться в странах с тяжелой ситуацией в сфере здравоохранения — в Африке, например. Причем, совершенно бесплатно. Конечно, врач все еще нужен — нейросеть отправляет вместе с диагнозом всю логическую цепочку и факторы, которые навели ее на определенный вывод. Окончательное решение все еще за врачом.

Окунаясь в бытовуху, мы вновь заметим вовлечение нейросетей, особенно в ситуацию на дорогах. Вы наверняка слышали про умные парктроники, машины на автопилоте или про камеры, которые сами выписывают штрафы. Все это — заслуга нейросетей, но это — далеко не все. Например, сейчас уже разработана система детекции усталости водителей — программа, которая по ключевым точкам на лице определяет, не засыпает ли человек за рулем. В случае, если он закрыл глаза или зевнул, раздается звуковой сигнал — «Проснитесь!», либо «Кажется, вы устали. Возможно, стоит сделать перерыв?» Так не только повышается личный комфорт, но и на дорогах в целом становится безопаснее. По данным Американской Ассоциации Автомобилистов, в каждом десятом ДТП США виноват именно сонный водитель.

Я не просто так говорю про повседневность — тяжело себе представить человека современной реальности, который не столкнется с нейросетью ни разу за день. Нейросети — везде: в переводчике они распознают текст с фото, в большинстве аудиокниг они осуществляют озвучку, генерируя голос по тексту, в приложениях для обработки фото — стилизуют изображения под искусство или делают ч/б фото цветными, в онлайн-кинотеатрах и музыке — тоже они (а кто, вы думали, составляет для вас уникальную подборку контента, который понравится именно вам?) Алгоритмы на основе самообучающихся сетей применяются и в крупных компаниях — они решают, кому дать кредит, а кому отказать, в какие акции вкладываться и даже каких сотрудников нанимать. К слову об этом — здесь вы можете сгенерировать себе резюме на основе всех когда-либо отправляемых CV, которые программистам удалось получить.

Если вы хотите заниматься творчеством, но считаете себя недостаточно компетентным или талантливым — алгоритмы вам в помощь! Сервис по простому наброску уровня старого «Пэинта» нарисует вам пейзаж, похожий на фотографию профессионала или картину маэстро. Программа сама помнит про светотени, отражения и текстуры — вам нужно лишь набросать силуэт. Если же вы мечтали стать музыкантом — сейчас и это возможно за пару кликов. Вот здесь за вас сгенерируют звуковую дорожку любого жанра и длительности без претензий на какие-либо авторские права. Затем сервисы Яндекса напишут вам стихотворный текст, составленный из поисковых запросов (только представьте, сколько русского рэпа им пришлось прослушать до этого). А здесь или на любой из множества схожих платформ вы сможете преобразовать текст в аудиодорожку. Вот и готовый трек — можно выкладывать на стриминг. Конечно же, для этого системы заранее прослушивали тысячи треков, улавливали смену битов, ритма музыки, читали всю существующую лирику и анализировали соответствие звуков буквам — но делали это настолько быстро, что уже всему научились.

Что касается речи — устной или письменной — здесь исследования продвинулись, наверное, сильнее всего. Сеть LipNet читает по губам лучше любого человека — люди с нарушением слуха делают это с точностью в 52%, LipNet — 80%. Но это еще не все. Netflix сейчас активно разрабатывает программу, которая научит персонажей говорить голосом одного и того же актера на всех языках мира. Как только они это сделают, актеры озвучки больше не будут существовать. И даже это — еще не все. В институте Вашингтона создали нейросеть, которая генерировала движение губ Обамы по аудио и подставляла в видео, а затем — такую, которая меняла лица на видео. Авторы DeepfaceLab выложили свой код в открытый доступ, чтобы студенты-программисты со всего мира улучшали нейросеть. В итоге они делали порно с участием звезд, а еще создали отдельную программу, которая меняла лица актеров в культовых фильмах на лицо Николаса Кейджа. Получилось, кстати, правдоподобно.

В теории, возможности нейросетей — безграничны, и превосходство человеческого мозга над машиной — лишь вопрос времени. Так ли это? Все же, не стоит ждать «Черного зеркала» в буквальном воплощении. «Нейросети сами научились писать музыку», «нейросеть написала книгу» и другие подобные заголовки — все-таки, журналистское преувеличение. Работа нейросетей — лишь имитация человеческого мозга, они не умеют создавать что-то с нуля, а все их интеллектуальные способности направлены на решение одной конкретной задачи. Переделать — да, найти ошибку — тоже да, сгенерировать — возможно, но не осознанно сотворить, вкладывая в это смысл и идею. Интеллекту свойственно сознание, которого у машин — нет. Возможно, потому что мы сами еще толком не поняли, как оно устроено, и поэтому не можем создать его у машины. Но именно поэтому называть искусственный интеллект таковым — не совсем корректно. Тем не менее, его возможности и наличие их границ — все еще вопрос открытый. Посмотрим, что будет дальше.