С каждым годом расширяются наши знания об интеллекте и возможностях нейронных сетей, появляются новые программные реализации нейросетей – сети RBF, Хопфилда, Хэмминга, свёрточные, рекуррентные, рекурсивные.
Изменяются методы использования нейросетей: глубокое обучение, свёртка, преобразование накапливаемых при обучении нейросетей знаний в правила продукций.
Меняются и цели, с которыми проводятся нейросетевые исследования, и методы их проведения:смысловой поиск информации, анализ тематической структуры музыкальных произведений, текстов, рисунков и т. д.
Для проведения нейросетевого исследования необходимы нейросетевые пакеты и программные комплексы, различные инструменты (алгоритмы, программы, методики) и технологии. Чаще всего требуемые средства отсутствуют или доступны по запредельным ценам.
Относительно несложные инструменты, необходимые для исследования, могут быть изготовлены самостоятельно за счёт комплексирования программных средств, технология которого связана с использованием системы команд ОС Windows, конвейеризацией команд ОС, использованием нетрадиционных возможностей известных программных средств и недокументированных возможностей алгоритмического языка, например С#, безинтерфейсного построения сложных программных комплексов и управления исследованиями с помощью API и из командной строки.
Получается, что нейросетевые технологии связаны с использованием знаний и процессов высокой сложности. Очень высокой.
Облегчить преодоление сложностей освоения нейросетевых технологий можно за счёт
– концентрации внимания на изучении нейропакета, в качестве которого предлагается пакет MemBrain [1],
– реализации мыслительной деятельности с помощью нейронных конструкций [2].
– ознакомления с основами теории нейронных сетей [3],
– изучения алгоритмов и приёмов нейроконструирования [4, данная книга].
Изучение нейросетевых технологий необходимо как для обучения конструкторов нейроЭВМ, так и для обучения специалистов по созданию и использованию программного обеспечения нейрокомпьютеров, и для подготовки специалистов по использованию нейросетевых технологий в их практической деятельности.
С 2012 года в России началось активное проведение ИТ-исследований в сфере разработки искусственных когнитивных систем, разработана «Стратегическая программа создания Центра прорывных исследований» в области информационных технологий «Искусственные когнитивные системы». Повышение интереса к тематике искусственного интеллекта требует появления достаточного количества публикаций о структуре и возможностях нейросистем, о типах искусственных нейросетей и открываемых ими возможностях автоматизации мыслительных процессов. Для удовлетворения возникающих потребностей необходимы с одной стороны – новые информационные материалы, и с другой стороны – программные средства, которые позволяют без особых усилий и затрат проверить новую информацию на практике, создавать свои нейросетевые системы разных типов, модели нейросетевых устройств и даже узлы нейрокомпьютеров на своём ноутбуке (так называемые «нейропакеты» и «нейроконструкторы»).
Необходимую информацию даёт эта книга, а доступные программные средства можно получить из Интернет [5, 6]. Большинство примеров в книге выполнено на freeware пакете MemBrain [7].
Основными зарубежными проектами создания подобных ИКС являются:
– европейские проекты BBP/HBP,
– американская инициатива BRAIN,
– проект IBM Deep QA«Watson»,
– проект «Siri» корпорации Apple,
– проект нейросетевого искусственного интеллекта и использующих его роботов компании Google,
– японские проекты JST,
– канадский проект «Spaun» и др.
Нейропакеты и нейроконструкторы
При изучении нейросетевых технологий используются различные программные инструменты. Обычно такими инструментами являются нейропакеты, реже – нейроконструкторы.
Чем нейроконструктор отличается от нейропакета? Они очень похожи. Просто они предназначены для решения разных задач. Нейропакет предназначен для создания нейросети требуемого типа, загрузки в эту нейросеть исходных данных (обучающей, контролирующей и экзаменационной выборок), обучения нейросети, и промышленного решения задач на обученной нейросети.
Нейроконструктор кроме перечисленных задач в отличие от нейропакета предназначен ещё и для создания, исследования, моделирования различных нейросетей – от элементарных до необыкновенно сложных, в пределе – до создания и моделирования различных нейрокомпьютеров. Нейроконструктор является инструментом нейросетевого программирования.
Читать дальше