2010-05-04 25 views
7

我要尋找某種智能(我在想AI或神經網絡)庫,我可以養活歷史數據的列表,這將預測的輸出下一序列。.NET神經網絡或AI對未來的預測

正如我想喂庫中的以下附圖1,2,3,4,5

並基於這樣的一個例子,但應預測下一序列是6,7,8,9, 10等

輸入將會更加複雜和包含更多的信息。

這將用於C#應用程序。

如果您有任何建議或警告會很好。

感謝

編輯

我試圖用歷史銷售數據,我怎麼辦,預測什麼量特定的客戶端是最有可能會在今後一個時期花費。

我也明白,有幾十個,可以影響一個客戶購買的外部因素,但現在我需要只是基於它的銷售歷史,然後繪製顯示過去的銷售圖表和預測銷售。

回答

3

如果你正在尋找一個.NET API,那麼我會建議你嘗試AForge。NET http://code.google.com/p/aforge/

如果你只是想嘗試各種機器學習算法的數據集,你有你的處置,那麼我會建議你玩Weka;它相對簡單易用,它實現了很多ML/AI算法。爲每種算法運行不同設置的多次運行,並嘗試儘可能多的算法。他們中的大多數人都有一定的預測能力,如果你把正確的人結合起來,那麼你可能真的得到了一些有用的東西。

1

如果我正確理解你的問題,你想接近並推斷未知的功能。在你的榜樣,你知道函數值

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

一個很好的近似這些點會f(x) = x+1,這將產生f(5) = 6 ......如預期。問題是,如果沒有關於你想推斷的函數的知識,你就無法解決這個問題:它是線性的嗎?這是一個多項式嗎?它光滑嗎?它是(大約還是完全)循環?功能的範圍和領域是什麼?對於你想推斷的功能你知道得越多,你的預測就會越好。

+1

你不明白,他希望程序掃描他的大腦,並確切知道他在想什麼。 AI – TiansHUo 2010-05-04 06:21:10

1

我只是有一個警告,抱歉。 =)

在數學上,沒有理由爲您的序列上方應遵循的一個「6」。我可以輕鬆地給你一個簡單的功能,其下一個值是你喜歡的任何值。它只是人類喜歡簡單的規則,因此傾向於在​​這些序列中看到連接,實際上並不存在。因此,如果您不想爲其提供額外的信息,則這對於計算機來說是不可能完成的任務。

編輯: 在你懷疑你的數據有一個已知的功能依賴,並有不可控的外界因素的情況下,也許會regression analysis有很好的效果。要開始簡單,首先看linear regression

如果您不能承擔線性關係,有一個很好的應用程序,它查找函數擬合曆史數據...我會盡快記得更新這個帖子與它的名字。 =)

+1

我正在嘗試使用歷史銷售數據來預測特定客戶最有可能在下一個週期花費的金額。我明白有幾十個外部因素可以影響客戶購買,但是,現在我們只會將其基於銷售歷史。 – SetiSeeker 2010-05-04 07:21:19