#тренды | Нейросети

15 Марта 2017 в 18:30, Евгений Мосунов 12 050 просмотров 26

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

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

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

На этом, пожалуй, сходства между компьютерами и человеческими мозгами заканчиваются и начинаются различия. И дело даже не в том, что компьютеры — это холодные металлические коробки, наполненные двоичными числами, а мозг — это что-то теплое, живое и населенное мыслями, чувствами и воспоминаниями. Настоящее отличие состоит в том, что компьютерная система состоит из относительно простых последовательных соединений, в то время как нейроны в мозге объединены в сложные параллельные связи, причем каждый нейрон связан примерно с 10 000 своих соседей.

С одной стороны мы имеем сотни миллионов транзисторов, объединенных в простую и логичную систему, с другой — в 100 раз больше нейронов, взаимодействующих друг с другом через сложно переплетенные связи. В итоге получается, что процесс человеческого мышления, по крайней мере на этом этапе, является чрезвычайно сложным для изучения и тем более для искусственного воссоздания. А именно это и пытались сделать ученые Уоррен Макаллок и Уолтер Питтс, когда в 40-х годах прошлого века впервые сформулировали концепцию искусственной нейронной сети.

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

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

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

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

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

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

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

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

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

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

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

Или возьмем, к примеру, банковскую сферу. Представьте, что вы управляете банком, где каждую минуту осуществляются тысячи транзакций по кредитным картам. Нейросети можно с успехом использовать для выявления деятельности, которая классифицируется как мошенническая. В качестве вводных данных можно использовать следующие запросы: 1) Явился ли держатель карты лично? 2) Использовался ли действительный PIN-код карты? 3) Осуществлялось ли за последние 10 минут пять или более операций по этой карте? 4) Используется ли карта в той же стране, где была выдана?

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

Но такие применения нейросетей пока находятся лишь на стадии концепта и вряд ли придут в нашу жизнь в самое ближайшее время. Сегодня новости об использовании этой технологии приходят главным образом из развлекательной индустрии. Первым делом вспоминается нашумевшее приложение Prisma, которое превращает обычные фотографии в несуществующие полотна великих художников, а также скандальный сервис Findface, который позволяет по тайно сделанной фотографии лица человека найти его страницу ВКонтакте. Ну и конечно, нельзя не вспомнить эксперимент Яндекса, когда нейросеть, изучив тексты песен Егора Летова, написала гипотетический альбом группы «Гражданская оборона».

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

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

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

#тренды | Машинное обучение

#тренды | Нейросети

Приложение
Hi-News.ru

Новости высоких технологий в приложении для iOS и Android.

26 комментариев

  1. Khius

    Искусственная нейронная сеть это по сути своей программа. (отправлено из iOS приложения Hi-News.ru)

    • allexxic

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

  2. Hi-Ai

    Погоняв майкрософтовский нейросетевой определитель возраста,
    http://how-old.net/#
    признал, что он это делает лучше меня. У него есть чему поучиться.

    • Ce3apyc

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

      • Hi-Ai

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

    • Hralain

      Ни разу не угадал, а дважды вообще девушкой меня обозвал...отстой прога

    • Period

      А мне ставит бессовестно 50-60 лет. Но кое где правильно угадал

  3. joker

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

    • allexxic

      Ну так же как и людей. Она вам вопрос, вы ей ответ (да, нет, хорошо, плохо). Хорошо обучается - приз, плохо - электрошокером ;)

    • Bennylava

      Любое убийство человека это плохо,война и тд неважно (отправлено из приложения Hi-News.ru)

      • joker

        терорист смертник забежал в толпу и хочет взорвать бомбу, убить его хорошо или плохо.

        • joker

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

          • joker

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

            • Bennylava

              Вообще тема добра и зла крайне расплывчата (отправлено из приложения Hi-News.ru)

            • allexxic

              Не мешайте в кучу конструктора и воспитателя. Программист конструирует тело, как "создатель" ваше тело, воспитатель заложит уже поведение, как ваши родители и окружение.

          • Disson

            Убийство человека, желающего развязать войну и убить миллионы, что сократит численность населения и миллиардам оставшихся людей достанется чуть больше чистой пресной воды, ресурсов, станет чуть меньше загрязняться атмосфера. Это хорошо или плохо? Никто не задумывался, что на сегодняшний день именно войны - эффективный регулятор численности населения Земли? Иначе перенаселенность и массовая гибель только уже миллиардов. Это хорошо или как? Скорее всего компьютер выберет выживание террориста. И не важно, что есть альтернатива, которую придумали Китайцы, глядя на развитые страны: сократить население с помощью законов и за счет повышения уровня жизни. С учетом психологии человека в остальных странах она маловероятно будет работать. Никого не удивит, что комп предпочтет массовое убийство, как гуманный поступок?

            • romale

              Думаете лапша Ролтон не накормит 50миллиардов человек? Порошковая еда, еда с принтера. Планете нужны потребители, десятки миллиардов потребителей
              ..А вы опять Мальтуса повторяете... (отправлено из приложения Hi-News.ru)

            • joker

              хм... читаю коменты и все больше кажется, что фильм "Терминатор" скоро станет реальностью))))))))

        • Bennylava

          Палка о двух концах получается тогда?! (отправлено из приложения Hi-News.ru)

    • SERG__ZV

      Так же как и вас обучили. Вдалбливали с детства что хорошо а что плохо. Раз вы считаете что убийство людей на войне это хорошо то вас именно так и учили прививая "патриотизм" и любовь к "родине". Лично я в наказаниях детей за ошибки ничего хорошего не вижу. Не вижу ничего хорошего и в убистве врага на войне, это такие же простые солдаты которых заставили их правительство идти и погибать за свою родину и своих детей ведь они же тоже патриоты.. такие же одураченные марионетки. Которые просто хотят счастливо жить и ни в чём не нуждаться. Убийство врага который напал на тебя сам без каких либо переговоров это необходимость но никак это не хорошо. Это ни как не добро. Это вынужденное зло....

  4. zergy

    🙂 (отправлено из iOS приложения Hi-News.ru)

  5. romale

    Как надоело уже аристотелевская дихотомия, ну не бывает так, хорошо или плохо...Но нас так учат уже 2000лет, потому что так проще для нашего мощного мозга...ИИ или нейросеть не будет мыслить категориями добра и зла, принимая окончательное решение, скорее всего у нейросети будет тысячи параметров (как и у нашего подсознания)...Будет ли у ИИ интуиция??? Нет не будет... (отправлено из приложения Hi-News.ru)

  6. storm X

    чел в белой рубашке похож на Хокинга до приступа

  7. Vad

    !
    (отправлено из iOS приложения Hi-News.ru)

  8. Destroyken

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

Новый комментарий

Для отправки комментария вы должны авторизоваться или зарегистрироваться.