Прогнозирование шаблона с использованием генетического алгоритма

#genetic-algorithm

#genetic-algorithm

Вопрос:

Я новичок в Генетическом алгоритме. Я пытаюсь предсказать шаблон появления правил. Например, у меня есть набор правил, определенных следующим образом.

Правило 1, правило 2, правило 3, Правило 4, Правило 5, Правило 6,

Для данной даты я мог бы использовать только Правило 2, Правило 3 и правило 6. Итак, я бы представил эти данные в виде строки, как указано ниже

0 1 1 0 0 1

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

Итак, у меня был бы набор данных на 5 дней, как показано ниже

011001,
100010,
110011,
101010,
111100,

Чего я хотел бы достичь здесь, так это предсказать данные за 6-й день. Я читал о генетическом алгоритме и методе обратного распространения для достижения этой цели. Мне не удалось сопоставить мою проблему с GA или BP из-за отсутствия понимания этих концепций.

Я был бы признателен, если бы кто-нибудь мог указать мне правильное направление, чтобы помочь мне сопоставить мою проблему с GA или BP. Любая помощь высоко ценится.

Комментарии:

1. какую структуру вы подозреваете при появлении правил? без какого-либо предположения довольно сложно вознаградить что-либо, кроме хорошего угадывания

2. Появление правил является чисто случайным. То, что я пытаюсь здесь сделать, это определить неслучайный шаблон среди случайных данных.

Ответ №1:

Появление правил является чисто случайным

Боюсь, в этом случае нет способа их предсказать!

На случай, если приведенное выше неточно (появление правила не является чисто случайным), есть ли у вас обучающий набор? Насколько он велик? Здесь вам следует обратить внимание не на GAs, а на методы распознавания шаблонов.

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

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

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

Осторожно: это не тривиальная задача!

Комментарии:

1. Спасибо, Джон. У меня есть около 1000 исторических данных. Если бы я посмотрел на распознавание шаблонов, как вы думаете, обратное распространение было бы значительным подходом? Или есть что-нибудь еще, на что я должен начать смотреть конкретно?

Ответ №2:

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

Ответ №3:

Вы можете оптимизировать свой набор правил с помощью GA, а затем предоставить набор optimize в качестве входных данных для нейронной сети для прогнозирования, боюсь, вы не можете использовать GA для прогнозирования, для прогнозирования требуются правила вывода или хорошо сформированные обучающие данные в качестве входных данных для NN (прошлой информации).