вторник, 18 июня 2013 г.

Размышления на тему искусственного интеллекта.

Меня вот, все интересует такая вещь, как ИИ (искусственный интеллект). И вот все думаю, как например реализовать систему искусственного интеллекта, которая обучается. В голове крутится, одна мысль, не знаю, правильная ли она. (Увы, но учебники по искусственному интеллекту, написаны, так, что лично для меня они темный лес).
Начну с того, что навело меня на мысль. На мысль меня навела книга М.Б.Бровковой "Системы искусственного интеллекта в машиностроении".
А конкретно вот эта картинка:
Как я представляю процесс обучения, допустим, обучение распознаванию текста (пока рассмотрю на базе цифр, их меньше).
Ну во-первых должно быть хотя бы изображение цифры, размер, пока выберем фиксированный. скажем 20x20 (в итоге 400 входов :) у синапса)  в процессе обучения, задействуем все 400.
Я ввожу 1, скармливаю картинку, программе, она создает синапс с 400 входами, и на выход подает Y. Я скармливаю ей вторую 1, меняются весовые коэффициенты созданного синапса. Сам по себе синапс возвращает или 0 или 1, и каждый синапс, отвечает за свою цифру, то есть всего их у нас 10 от 0 до 9. Чем больше скормлено 1, тем больше точность распознавания. При том на мой взгляд, для лучшего распознавания, также лучше добавить центрирование изображения, под этим я подразумеваю, сначала поиск максимальной и минимальной точек изображения по осям X и Y. Процесс центрирования нужен с целью избежания, ошибок, если цифру разместить не по середине, а скажем к примеру слева или справа.
Данный алгоритм, я попробую реализовать на Python3 с использованием библиотеки Pillow. После того, как сессию сдам. А может и во время сессии. :) Если мое, понимание, хоть, чуть-чуть близко к истине, то возможно вместо станка, я буду писать несколько другой диплом.


1 комментарий:

  1. все верно. на базе этого я писал программу, которая отличала круг от прямоугольника

    ОтветитьУдалить