Научная статья на тему 'ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ'

ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
195
45
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ДАННЫЕ / МОДЕЛИРОВАНИЕ / НЕЙРОННАЯ СЕТЬ / КОМПЬЮТЕРНЫЕ СИСТЕМЫ / ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ / DATA / MODELING / NEURAL NETWORK / COMPUTER SYSTEMS / SOFTWARE

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Макаров Д.А., Шибанова А.Д.

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

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

ARTIFICIAL NEURAL NETWORK

This article is devoted to artificial neural networks. A comparison of the computer and the real human brain is made, the idea of creating an artificial neural network by analogy with the real one is explained. The process of processing incoming information by neural network is described. It also describes the use of artificial neural networks to solve a wide range of problems in various fields.

Текст научной работы на тему «ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ»

УДК 004.85

Макаров Д.А. студент

факультет «Информатика и системы управления»

Шибанова А.Д. студент

факультет «Робототехника и комплексная автоматизация» Московский государственный технический университет имени

Н.Э. Баумана Россия, г. Москва ИСКУССТВЕННЫЕ НЕЙРОННЫЕ СЕТИ

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

Ключевые слова: данные, моделирование, нейронная сеть, компьютерные системы, программное обеспечение

Makarov D.A. student

Faculty of Informatics and Management Systems Moscow State Technical University named after

N.E. Bauman Russia, Moscow Shibanova A.D. student

Faculty of Robotics and complex automation Moscow State Technical University named after

N.E. Bauman Russia, Moscow

ARTIFICIAL NEURAL NETWORK

Annotation: This article is devoted to artificial neural networks. A comparison of the computer and the real human brain is made, the idea of creating an artificial neural network by analogy with the real one is explained. The process of processing incoming information by neural network is described. It also describes the use of artificial neural networks to solve a wide range ofproblems in various fields.

Keywords: data, modeling, neural network, computer systems, software

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

среднем мозг человека содержит около 100 миллиардов клеток, называемых нейронами. Каждый нейрон состоит из тела клетки, из которого вытекают несколько соединений: многочисленные дендриты (входы клетки, несущие информацию к телу клетки) и один аксон (выход клетки, несущий информацию от тела клетки).

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

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

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

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

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

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

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

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

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

Как только сеть обучена (при помощи обработки достаточно большого количества типовых данных), она достигает состояния, когда можно представить ей совершенно новый набор входных данных, которых она никогда раньше не видела, и посмотреть, какой будет реакция. Например, предположим, что сеть обучали, показывая ей множество изображений стульев и столов, чтобы она могла определять, является ли данный предмет стулом или столом. Показав, например, 10 разных стульев и 10 разных столов, сети представят изображение какого-то нового предмета (например, дивана). Сеть попытается классифицировать данный предмет как стол или стул, обобщая все данные на основании своего прошлого опыта (по сути, человеческий мозг работает точно так же). Но это не значит, что нейронная сеть может просто «смотреть» на предметы мебели и мгновенно реагировать на них осмысленно. Рассмотрим пример, который мы только что привели: сеть на самом деле не смотрит на предметы мебели. Входы в сеть по сути являются двоичными числами: каждый входной блок либо включен, либо выключен. Таким образом, если у нас было пять входных единиц, мы могли бы ввести информацию о пяти различных характеристиках разных стульев, используя бинарные (да/нет) ответы. Вопросы могут быть 1) Есть ли у него спинка? 2) У него есть обивка? 3) Можете ли вы сидеть на нем в течение длительного времени? Типичный стул затем будет представлен как Да, Да, Да или 111 в двоичном виде, тогда как типичное представление для стола будет

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

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

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

Если вы используете приложения для мобильных телефонов, которые распознают ваш почерк на сенсорном экране, они могут использовать простую нейронную сеть, чтобы выяснить, какие символы вы пишете. Некоторые виды программного обеспечения для распознавания голоса также используют нейронные сети. Как и некоторые почтовые программы, которые автоматически различают подлинную электронную почту и спам. Нейронные сети даже доказали свою эффективность в переводе текста с одного языка на другой. Например, автоматический перевод Google в последние годы все шире использует эту технологию для преобразования слов на одном языке (входные данные сети) в эквивалентные слова на другом языке (выходные данные сети). В 2016 году Google объявил, что использует нечто, называемое Neural Machine Translation (NMT), для мгновенного преобразования целых предложений.

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

Использованные источники:

1. С. Николенко, А. Кадурин, Е. Архангельская. Глубокое обучение. Погружение в мир нейронных сетей - Санкт-Петербург: Питер, 2018. - 481 с.

2. С. Хайкин. Нейронные сети. Полный курс. - Москва: Вильямс, 2018. - 1104 с.

3. Основы ИНС. [Электронный ресурс]. Режим доступа: https://neuralnet.info/chapter/основы-инс/ (дата обращения 25.06.2019).

4. Нейронные сети — математический аппарат. [Электронный ресурс]. Режим доступа: https://basegroup.ru/community/articles/math (дата обращения 25.06.2019).

i Надоели баннеры? Вы всегда можете отключить рекламу.