Как самому создать искусственный интеллект

0
26

Искусственный Интеллект в домашних условиях. ⁠⁠

Стадия 1. Разочарование

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

Последнее на сегодня — это органайзер. В данной программе это реализовано через Гугл-Календарь. С помощью соответствующего плагина, вы можете добавлять новые задачи или мероприятия в календарь, проверять расписание/план дня на сегодня, завтра или любой другой день, а так же получать напоминания о том или ином событии заранее.

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

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

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

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

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

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

Стадия 2. Принятие

Теперь же, когда вы уже вполне ясно представляете, как ИИ создавать и чем при этом пользоваться, пора выводить свои знания на новый уровень. Во-первых, для этого потребуется изучение дисциплины, которое носит название «Машинное обучение». Во-вторых, необходимо научиться работать с соответствующими библиотеками выбранного языка программирования. Для рассматриваемого нами Python это Scikit-learn, NLTK, SciPy, PyBrain и Numpy. В-третьих, в развитии никуда не обойтись от функционального программирования. Ну и самое главное, вы теперь сможете читать литературу о ИИ с полным пониманием дела:

ЧИТАТЬ ТАКЖЕ:  Нейросеть которая отделяет вокал от музыки

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

Я думаю, что в наш век высоких технологий и повсеместной компьютеризации многие из вас задумывались о том, почему мы до сих пор не ведем с компьютером полноценного диалога? Да, есть Siri, Cortana, Google, но они созданы для решения конкретных задач и не слишком приспособлены даже для имитации живого общения. Более «продвинутые юзеры» вспомнят о нейронных цепях. Их можно запрограммировать на абсолютно любой набор действий, в том числе и на общение, но в домашних условиях, увы, это пока невозможно.

К слову, если вы всё-таки взялись за язык Python, то создать довольно простого бота можно, обратившись к этому подробному мануалу. Для других языков, таких как C++ или Java, вам также не составит труда найти пошаговые материалы. Почувствовав, что за созданием ИИ нет ничего сверхъестественного, вы сможете смело закрыть браузер и приступить к личным экспериментам.

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

Когда спесь немного сбита студенческой литературой, можно приступать к практике. Бросаться на LISP или другие функциональные языки пока не стоит — сначала стоит освоиться с принципами проектирования ИИ. Как для быстрого изучения, так и дальнейшего развития прекрасно подойдёт Python — это язык, чаще всего используемый в научных целях, для него вы найдете множество библиотек, которые облегчат ваш труд.

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

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

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь