Как стать автором
Обновить
77
0
Царьков Михаил Львович @foo52ru

Пользователь

Обучаем нейросеть играть в «Змейку» и пишем сервер для соревнований

К сожалению в статье не хватает видео процесса, было бы интересно посмотреть на развитие змеек. Раз я вдохновил автора поста на эксперимент, то покажу, как змейки обучаются посредством естественного отбора в моём варианте. У меня используется линейный классификатор и змейка видит поле 11*11 клеток

Нейронные сети для начинающих. Часть 2

Есть несколько моментов, которые сбивают с толку.
Первая картинка (анимация) после «Что такое Метод Обратного Распространения (МОР)?» показывает совсем другие формулы. При вычислении ошибки там не умножают на производную. Умножение на производную происходит при коррекции весов, при этом результат будет уже другим.
И такая строчка
«Запомните, что после подсчета дельты нейрона мы обязаны сразу обновить веса всех исходящих синапсов этого нейрона. Так как в случае с O1 их нет, мы переходим к нейронам скрытого уровня ...»
Вроде, зная дельту нейрона, мы можем обновить веса не исходящих, а входящих синапсов этого нейрона, в случае О1 они есть и их можно обновить.

Создание «искусственной жизни» на компьютере

Скорее всего так и есть.

Смартфон управляет игрушечным автомобилем

Когда то экспериментировал с передачей данных с планшета на микроконтроллер через экран.
На планшете мигают два квадратика. Один задаёт такт, другой передаёт биты.
www.youtube.com/watch?v=RbQw6dTKIl0

Создание «искусственной жизни» на компьютере

Удивлю Вас ещё больше. Проект написан на планшете, с использованием небольшого интерпретатора Pixilang. Пытался чем-то заполнить свободное время на работе.

Создание «искусственной жизни» на компьютере

Ссылка на видео есть в конце статьи

Создание «искусственной жизни» на компьютере

Здесь совсем другие принципы.

Создание «искусственной жизни» на компьютере

Мне часто присылают клоны моего проекта. Я не против, даже приветствую. Особенно нравится, когда меня упоминают.

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

Единомышленников можете найти здесь vk.com/cyberbiology

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

Энергии тратится одинаково. Это особенности мира.

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

Живое не обязано обладать сознанием.

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

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

Создание «искусственной жизни» на компьютере

Я там и музыку вначале поставил из «В мире животных», но Ютуб был недоволен, пришлось убрать
1

Информация

В рейтинге
Не участвует
Откуда
Нижний Новгород, Нижегородская обл., Россия
Дата рождения
Зарегистрирован
Активность