Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Практический пример нейронной сети




Обучение

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

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

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

Особенное признание получили четыре приема в обучении нейронных сетей: коррекции по ошибке, обучение методом соревнования, обучение Больцмана и правило Хебба. В рамках этой работы мы рассмотрим первые два.

  • Коррекция по ошибке подразумевает, что при известном результате d и результате работы сети x, число (d-x) используется как степень оценки ошибки и влияет на степень изменения весовых коэффициентов. Данный подход помогает постепенно асимптотически приближаться к результату, постепенно уменьшая ошибку.
  • Метод соревнования, как нетрудно догадаться из названия, подразумевает соревнование нескольких сетей. Причем, за основу корректировки коэффициентов берется только победитель. Все остальные сети отсеиваются и больше не участвуют в процессе обучения.

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

 

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

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

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

 

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

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

 

Список литературы

  1. Artificial Neural Networks: A Tutorial, Computer Vol.29, No.3, Anil K. Jain, Jianchang Mao, K.M. Mohiuddin, March/1996
  2. Методические указания к лабораторной работе по теме «Создание и использование нейронных сетей», д.т.н, Зарудный Д.И., Москва 2004.
  3. Искусственный интеллект в компьютерных играх: как обучать виртуальные персонажи реагировать на внешние воздействия, Шампандар, Алекс, 2007
  4. Искусственные нейронные сети. Теория и практика, Круглов Владимир Васильевич, Борисов Вадим Владимирович, Телеком 2001



Поделиться с друзьями:


Дата добавления: 2015-06-04; Просмотров: 714; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.