Нейронная сеть.NET или AI для будущих прогнозов

Я ищу некоторое интеллектуальное (я думал AI или Нейронная сеть), библиотека, что я могу подать список исторических данных, и это предскажет следующую последовательность выводов.

Как пример я хотел бы подать библиотеку следующие числа 1,2,3,4,5

и на основе этого, это должно предсказать, что следующая последовательность 6,7,8,9,10 и т.д.

Исходные данные будут намного более сложными и содержать намного больше информации.

Это будет использоваться в приложении C#.

Если у Вас есть какие-либо рекомендации или предупреждение, которое будет большим.

Спасибо

Править

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

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

7
задан SetiSeeker 4 May 2010 в 07:23
поделиться

3 ответа

Если вы ищете .NET API, я бы порекомендовал вам попробовать AForge.NET http://code.google.com / p / aforge /

Если вы просто хотите попробовать различные алгоритмы машинного обучения на имеющемся в вашем распоряжении наборе данных, я бы порекомендовал вам поиграть с Weka ; он (относительно) прост в использовании и реализует множество алгоритмов машинного обучения и искусственного интеллекта. Выполните несколько запусков с разными настройками для каждого алгоритма и попробуйте как можно больше алгоритмов. Большинство из них будут иметь некоторую предсказательную силу, и если вы объедините правильные, вы действительно можете получить что-то полезное.

3
ответ дан 7 December 2019 в 12:16
поделиться

Если я правильно понял ваш вопрос, вы хотите аппроксимировать и экстраполировать неизвестную функцию. В вашем примере вы знаете значения функции

f(0) = 1
f(1) = 2
f(2) = 3
f(3) = 4
f(4) = 5

Хорошим приближением для этих точек будет f(x) = x+1, и это даст f(5) = 6... как и ожидалось. Проблема в том, что вы не можете решить эту задачу без знания функции, которую вы хотите экстраполировать: Линейная ли она? Является ли она многочленом? Гладкая ли она? Является ли она (приблизительно или точно) циклической? Каковы диапазон и область функции? Чем больше вы знаете о функции, которую хотите экстраполировать, тем лучше будут ваши прогнозы.

1
ответ дан 7 December 2019 в 12:16
поделиться

У меня просто предупреждение, извините. =)

С математической точки зрения, нет никаких причин для того, чтобы за вашей последовательностью выше следовала "6". Я могу легко дать вам простую функцию, следующим значением которой будет любое значение, которое вам нравится. Просто людям нравятся простые правила, и поэтому они склонны видеть в этих последовательностях связь, которой на самом деле нет. Поэтому для компьютера это непосильная задача, если вы не хотите снабжать его дополнительной информацией.

Edit:. В случае, если вы подозреваете, что ваши данные имеют известную функциональную зависимость, и есть неконтролируемые внешние факторы, возможно, регрессионный анализ даст хорошие результаты. Чтобы начать с простого, рассмотрите сначала линейную регрессию.

Если вы не можете предположить линейную зависимость, есть хорошее приложение, которое ищет функции, соответствующие вашим историческим данным... Я обновлю этот пост с его названием, как только вспомню. =)

.
1
ответ дан 7 December 2019 в 12:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: