2013-05-06 104 views
0

我使用ntstool創建NAR(非線性自迴歸)網絡對象,通過訓練1x1247輸入向量。 (每日股價6年) 我已完成所有步驟並將生成的淨對象保存到工作區。如何使用創建的「網絡」神經網絡對象進行預測?

下面我就如何使用這個對象來預測例如T = 2000在y(t)的無能,(我訓練T的模式= 1:1247)

在一些其他線程,人推薦使用sim(net,t)函數 - 但是這會給我任何t值的結果。 (與net(t)函數相同)

+0

@Marc我認爲列車數據不是問題,因爲所有的示例輸入格式都是相同的。 – nauti 2013-05-06 15:21:54

回答

1

我不熟悉特定的神經網絡命令,但我認爲您正以錯誤的方式處理這個問題。通常情況下,您想要及時對演化進行建模。你通過指定一個特定的窗口來做到這一點,比如3個月。

你現在正在訓練的是一個單輸入向量,它沒有關於進化的信息。你總是得到同樣的預測的原因是因爲你只用一個點來訓練(即使它是1247維,它仍然是1點)。

你可能想進行此類型的輸入向量(爲簡單起見,假設你用個月的工作):

[month1 month2; month2 month 3; month3 month4] 

這個例子包含了3個月的進化2個培訓點。請注意它們重疊。

0

使用網絡 網絡經過培訓和驗證後,網絡對象可用於計算網絡對任何輸入的響應。例如,如果要在建築物數據集中查找對第五個輸入矢量的網絡響應,可以使用以下內容:a = net(houseInputs(:,5)) a = 34.3922 如果您嘗試此命令,您的輸出可能會有所不同,具體取決於網絡初始化時隨機數生成器的狀態。下面,調用網絡對象來計算外殼數據集中所有輸入向量的併發集合的輸出。這是模擬的批處理模式,其中所有輸入向量都放置在一個矩陣中。這比一次呈現一個矢量要有效得多。 a = net(houseInputs);每次神經網絡被訓練時,由於不同的初始權重和偏差值以及不同的數據劃分到訓練,驗證和測試集中,可能導致不同的解決方案。因此,針對相同問題訓練的不同神經網絡可以爲相同輸入提供不同的輸出。爲了確保找到一個精確度好的神經網絡,重新訓練幾次。 如果需要更高的精度,還有其他幾種技術可以改進初始解決方案。有關更多信息,請參見改進神經網絡泛化並避免過度擬合。 strong text