Направления самосовершенствования ИИ
Воскресенье, Апрель 4th, 2010Самосовершенствование ИИ, или совершенствование при помощи человеческого разработчика, рационально применять в нескольких случаях:
* когда ИИ работает в данной области совершенствования лучше человека – быстрее, качественнее, дешевле, меньший занимаемый объем, меньшая вероятность уничтожения и т. д.
* когда ИИ работает хуже человека, но желательно сократить количество людей, работающих над ИИ – например, в целях секретности и лучшей управляемости. Вариация – когда ИИ работает хуже человека, но возможностей привлечь новых людей нету. Например, не хватает денег, нет единомышленников или надежных людей.
Направления самосовершенствования ИИ:
Улучшение реализации заданных нейроалгоритмов:
* лучший выбор структур данных и алгоритмов в целях повышения быстродействия, лучшего использования памяти
* то же самое, но при распарралеливании – так как задача на порядок сложнее предыдущей в однопоточном варианте
* то же самое, но при портировании на другие платформы – например, на видеокарты, или сервера с другими соотношениями производительности процессора и шины памяти, их цены и доступных объемов
* то же самое, но при спуске на уровень глубже, чем обычно – на уровень ассемблера, чтобы задействовать способы оптимизации, недоступные обычному компилятору из-за ограниченных знаниях об свойствах алгоритмов
Повышение качества существующих и разработка новых нейроалгоритмов:
* повышение скорости обучения по заданным данным
* минимизация количества необходимых обучающих примеров
* повышение устойчивости к неоптимальным начальным входным данным и ускорение переобучения
* перенос некоторых высокоуровневых способов мышления в раздел базовых системных алгоритмов
Адаптация под новые среды и новые типы данных:
* написание программных интерфейсов к нейроинтерфейсу – например, для анализа звуков, изображений, температурных датчиков
* выбор способа отображения сигналов на нейроны, анализ базовых преобразований (например, представление звуков аналогично человеческому уху)
* создание первичных сенсорных зон, работающих в особых условиях – например, несколько слоев сетчатки с преобразованием сигналов, на которые не распространяются традиционные способы обучения, связи жестко заданы, а частота работы этой подсети увеличена в сравнении с остальной ИНС
Адаптация существующих программ (см. «Нейроинтерфейс к GUI» ( http://neurocod.net/blog/tag/2010/04/нейроинтерфейс-к-gui )):
* перехват или замена классов отображения (view) на свои
* смена сигналов, подаваемых в нейросеть, на более оптимальные, смена частоты и полноты отображаемой информации
Совершенствование взаимодействия многих ИИ:
* создание и оптимизация интерфейсов общения между ИИ
* создание форматов знаний, извлечения и быстрого обмена новыми знаниями
* создание универсальных баз знаний, аналог справочников, более высокоэффективных, чем та же википедия
* выбор эволюционных схем и вычислительных экспериментов: при каких параметрах тот или иной ИИ лучше всего работает (скорость забывания, переобучения, степень доверия к данным, предпочтение поиска в глубину или в ширину и т. д.)
* выбор распределения различных параметров среди ИИ для повышения надежности работы всего коллектива ИИ, всеохватности знаний коллектива, и т. д.
Усовершенствования аппаратного обеспечения:
* разработка схем для производства под заказ на существующих предприятиях
* создание новых аппаратных сред (например, на основе нанотехнологий)

