0
<< предыдущая заметкаследующая заметка >>
19 февраля 2012
Развитие "Поиска закономерностей"

Первым делом объявим практические задачи которые нужно выполнить системе:

-система должна находить как ребёнок взаимосвязь между звуком поезда и изображением поезда
-учиться находить соответсвие между сторонами с которых растёт мох у деревьев,предоставив только их трёхмерные модели на входы
-научиться предсказывать будущие состояния из прежних
-не зная законов русского языка вывести их из русского текста
-создать нейронный прототип системы поиска закономерностей и встроить в ПсевдоИИ
-сделать вывод о уникальных ощущениях и системах обучения

Итак.Чтобы находить закономерности и учиться на на них логично
1)находить в самих входящих данных внутренние общности.
Если бы я это делал на PHP то это выглядело бы так:

В каком-то смысле я сейчас написал функцию определяющую есть ли порядок в представленных ей данных.
Результат в браузере:





Пример 1 (нахождение закономерностей в одной строке)
Исходный код

2)Находить общности в данных памяти в сравнении с пришедшими данными
Логичнее было бы записывать в уже пришедший массив номер тика тактовой частоты,и связями между.
Для примера будем искать порядок в генераторе случайных строк PHP.
Скриншот блокнота с кодом

Страница с результатами:






Выводятся случайно образовавшиеся связи,однако эту систему можно объединить со статистикой весов синапсов,чтобы слабые связи одновеременно и были ,но и не мешали более сильным.
Пример 1 (нахождение закономерностей в нескольких строках)
Исходный код
Но если обобщить то каждый раз мы ищем порядок по одной строке,если мы их объединим.
Интересно,сможет ли код и какие результаты он выведет на текст в котором есть окончания,если мы засунем
в него большой текст.

3) Поиск закономерностей в русском тексте используя написанный скрипт
Так как разницы в тактах если не учитывать время нет ,нужно взять максимально большой текст и пропустить в один такт.
Чтобы не засорять результативный массив буду отсекать значения с длиной в один символ.
Возьму первые две главы «Войны и мира» Толстого.

Первая попытка запуска скрипта меня обескуражила,скрипт работал 3 часа и не думал останавливаться,пришлось перезапустить процессы.Подсчитав я понял что в это скрипте 500 млрд операции минимум и нашёл ошибку оптимизации.Что на ассамблере бы исполнилось за минуту на моём 4-х ядернике,а на видеокарте с технологией CUDA (математические вычисления на видеокарте)примерно за секунду.

Вторая попытка более удачная (исполнялась 15 мин),так как я ограничил длину фрагментов с 2 до 19 символов.На выходе появился текстовый файл весом в 9 мегабайт,в котором только предстоит разобраться (проблема ещё в том что текст в UTF-8).Особо мне интересны окончания сказуемых и подлежащих и способы группировки на части речи.
Исходный код
P.S Я даже боюсь представить сколько будет выполняться этот скрипт объединёный со скриптом из предыдущего поста.

<< предыдущая заметка следующая заметка >>
Оставить комментарий