
Полная версия
Основные понятия систем искусственного иттеллекта
Нейронные сети непрограммируются в привычном смысле этого слова, они обучаются. Возможность обучения— одно из главных преимуществ нейронных сетей перед традиционными алгоритмами. Технически обучение заключается в нахождении коэффициентов связей между нейронами. В процессе обучения нейронная сеть способна выявлять сложные зависимости между входными и выходными данными, а также выполнять обобщение. Это значит, что в случае успешного обучения сеть сможет вернуть верный результат на основании данных, которые отсутствовали в обучающей выборке, а также неполных и/или «зашумлённых», частично искажённых данных.
Компоненты нейросети:
1. Нейроны. Аналогичные нервным клеткам в мозге, они первыми обрабатывают данные и передают информацию дальше.
2.Весовые коэффициенты. Эти параметры определяют, какое значение придается каждому входному сигналу.
3.Слои. Каждая нейросеть состоит из трех основных типов слоев.
Входной слой- – отвечает за получение исходных данных, таких как изображения, текст или числовые значения. Картинка раскладывается на пиксели, каждый из которых поступает на отдельный нейрон.
Скрытые слои– выполняют основную работу по обработке информации. В этих слоях происходит множество вычислений, которые трансформируют входные данные и создают более сложные представления. Чем больше скрытых слоев, тем сложнее задачи может решать нейросеть.
Выходной слой— предоставляет конечный результат. Например, это может быть классификация изображения (что изображено на фото) или предсказание (какие тренды ожидаются в будущем).
Эти слои соединены между собой, создавая сложную сеть связей. Каждый нейрон скрытого слоя связан с несколькими нейронами предыдущего и следующего слоев, что позволяет им обрабатывать информацию на различных уровнях абстракции.
Также есть нейрон смещения и контекстный нейрон. Нейрон смещения или bias нейрон используется в большинстве нейросетей. Особенность этого типа нейронов заключается в том, что его вход и выход всегда равняются 1 и они никогда не имеют входных синапсов. Нейроны смещения могут, либо присутствовать в нейронной сети по одному на слое, либо полностью отсутствовать, 50/50 быть не может. Соединения у нейронов смещения такие же, как у обычных нейронов – со всеми нейронами следующего уровня, за исключением того, что синапсов между двумя bias нейронами быть не может. Следовательно, их можно размещать на входном слое и всех скрытых слоях, но никак не на выходном слое, так как им попросту не с чем будет формировать связь.
Нейрон смещения нужен для того, чтобы иметь возможность получать выходной результат, путем сдвига графика функции активации вправо или влево.
Синапс-это связь между двумя нейронами. У синапсов есть 1 параметр – вес. Благодаря ему, входная информация изменяется, когда передается от одного нейрона к другому. Допустим, есть 3 нейрона, которые передают информацию следующему, тогда у нас есть 3 веса, соответствующие каждому из этих нейронов. У того нейрона, у которого вес будет больше, та информация и будет доминирующей в следующем нейроне (пример – смешение цветов). На самом деле, совокупность весов нейронной сети или матрица весов – это своеобразный мозг всей системы. Именно благодаря этим весам, входная информация обрабатывается и превращается в результат. Важно помнить, что во время инициализации нейронной сети, веса расставляются в случайном порядке.
Теперь, чтобы понять, как же работают нейронные сети, давайте взглянем на ее составляющие, рис.6.1. и их параметры. Нейрон – это вычислительная единица, которая получает информацию, производит над ней простые вычисления и передает ее дальше.

Рис.6.1. Схема передачи информации
Рассмотрим пример, рис. 6.2, где изображена часть нейронной сети, и буквами I обозначены входные нейроны, буквой H – скрытый нейрон, а буквой w – веса.

Рис.6.2. Часть нейронной сети
Из формулы видно, что входная информация – это сумма всех входных данных, умноженных на соответствующие им веса. Тогда дадим на вход 1 и 0. Пусть w1=0.4 и w2 = 0.7 Входные данные нейрона Н1 будут следующими: 1*0.4+0*0.7=0.4.
Теперь, когда у нас есть входные данные, мы можем получить выходные данные, подставив входное значение в функцию активации (подробнее о ней далее). Затем, когда у нас есть выходные данные, мы передаем их дальше. И так, мы повторяем для всех слоев, пока не дойдем до выходного нейрона. Запустив такую сеть, в первый раз мы увидим, что ответ далек от правильного, потому что сеть не натренирована. Чтобы улучшить результаты мы будем ее тренировать. Но прежде, чем узнать, как это делать, давайте введем несколько терминов и свойств нейронной сети.
Модель внутренней структуры искусственного нейрона представлена на рис.6.3.

Рис. 6.3. Модель внутренней структуры искусственного нейрона
У каждого нейрона, в том числе и у искусственного, должны быть какие-то входы, через которые он принимает сигнал. Поступившие на входы сигналы умножаются на свои веса. Сигнал первого входа x1 умножается на соответствующий этому входу вес w1. В итоге получаем x1w1. И так до n-ого входа. В итоге на последнем входе получаем xnwn.
Теперь все произведения передаются в сумматор. Он просто суммирует все входные сигналы, умноженные на соответствующие веса:
x1w1+x2w2+⋯+xnwn=∑i=1nxiwi
Когда необходимо коротко записать большое выражение, состоящее из суммы повторяющихся/однотипных членов, то используют знак сигмы.
Рассмотрим простейший вариант записи:
∑i=15i=1+2+3+4+5
Таким образом снизу сигмы мы присваиваем переменной-счетчику I стартовое значение, которое будет увеличиваться, пока не дойдет до верхней границы (в примере выше это 5).
Верхняя граница может быть и переменной. Приведу пример такого случая.
Пусть у нас есть n магазинов. У каждого магазина есть свой номер: от 1 до n. Каждый магазин приносит прибыль. Возьмем какой-то (неважно, какой) I -ый магазин. Прибыль от него равна pi. Если мы хотим посчитать общую прибыль от всех магазинов (обозначим ее за P), то нам пришлось бы писать длинную сумму:
P=p1+p2+⋯+pi+⋯+pn
Как видно, все члены этой суммы однотипны. Тогда их можно коротко записать следующим образом:
P=∑i=1npi
Словами: «Просуммируй прибыли всех магазинов, начиная с первого и заканчивая n-ым». В виде формулы это гораздо проще, удобнее и красивее.
Результатом работы сумматора является число, называемое взвешенной суммой. Взвешенная сумма (net) – сумма входных сигналов, умноженных на соответствующие им веса.
net=∑i=1nxiwi
Роль сумматора очевидна– он агрегирует все входные сигналы (которых может быть много) в какое-то одно число – взвешенную сумму, которая характеризует поступивший на нейрон сигнал в целом.
Для понимания роли последнего компонента искусственного нейрона –функции активации –рассмотрим следующий пример. У одного искусственного нейрона задача– решить, ехать ли отдыхать на море. Для этого на его входы мы подаем различные данные. Пусть у нашего нейрона будет 4 входа:
–стоимость поездки;
–какая на море погода;
–текущая обстановка с работой;
–будет ли на пляже закусочная
Все эти параметры будем характеризовать 0 или 1. Соответственно, если погода на море хорошая, то на этот вход подаем 1. И так со всеми остальными параметрами.
Если у нейрона есть четыре входа, то должно быть и четыре весовых коэффициента. В нашем примере весовые коэффициенты можно представить как показатели важности каждого входа, влияющие на общее решение нейрона. Веса входов распределим следующим образом:5,4,1,1.
Нетрудно заметить, что очень большую роль играют факторы стоимости и погоды на море (первые два входа). Они же и будут играть решающую роль при принятии нейроном решения. Пусть на входы нашего нейрона мы подаем следующие сигналы:1,0,0,1. Умножаем веса входов на сигналы соответствующих входов:5,0,0,1. Взвешенная сумма для такого набора входных сигналов равна 6:
net=∑i=14xiwi=5+0+0+1=6
Как нейрон должен решить, ехать на море или нет? Очевидно, нам нужно как-то преобразовать нашу взвешенную сумму и получить ответ. Это позволит выполнить функция активации. Функция активации является фундаментальной составляющей нейронных сетей, и понимание принципов работы, а также областей применения, способствует созданию более эффективных сетей.
Функция активации преобразует входные данные в выходные для их последующей передачи на следующий слой. Эти функции определяют, должен ли нейрон быть активирован или нет, основываясь на взвешенной сумме его входов плюс смещение. Без функций активации нейронные сети были бы просто линейными моделями, неспособными решать сложные задачи, такие как распознавание образов, обработка естественного языка и другие передовые приложения ИИ. В модель нейрона добавляется нелинейный преобразователь, который реализует нелинейную функцию, которая называется функцией активации. По сути, нейрон представляет собой элементарный вычислитель, характеризующийся входным/выходным состоянием и функцией активации. На основе элементарных вычислителей, каждый из которых получает сигналы и посылает другим вычислителям, составляются ИНС разной топологии.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.









