• 沒有找到結果。

第三章 k-NN 模式構建

3.1 k-NN 模式介紹

3.1.3 k 值設定

       

   

意即,在求

d

ij2時,

C

W‐1

C

W

I

 (單元矩陣)。換言之,當各軸的單位長度相 等,且各軸互為垂直時,歐幾里得距離平方與馬式距離

D

2相同。

(三)街道區距離 (city block distance)

設有 n 個事物,每個事物有 m 個屬性,則第 i 個事物與第 j 個事物間的 街道區距離可以如式3‐4 衡量:

 

3‐4  

3.1.3 k 值設定

k 值的選定,是決定預測誤差大小的關鍵步驟,若是選取太大或太小的 k 值,容易產生較大的預測誤差,導致預測結果產生偏差,因此一般研究在 k 值設定這一步驟時,通常都是測試選取不同 k 值,找出各個 k 值所得應到 的誤差結果,由此取得使誤差最小的 k 值,以此設定為 k 值最佳解,如此 可確保預測誤差達到最小。

本研究 k 值的設定,主要先設定不同的門檻值來進行 k 值選取,當比 對的距離量度小於此門檻值,即判斷該筆資料與即時資料相近,依照各門 檻值內所得到的不同 k 值,找出該時段預測誤差最小的 k 值,以此作為該 時段的最佳 k 值解,由於每五分鐘即預測一次,k 值也隨著每五分鐘變化一 次,以找出適合該時段的最佳 k 值解。

| |   

       

3.2 k-NN 模式構建

本研究構建之一旅行時間預測模式,為使用k-NN 方法依照上述 k-NN 流程步驟,構建高速公路旅行時間預測模式。首先,在資料分群的步驟,

依照星期別作區分,與即時資料進行比對,比對時,將同時段、兩兩固定 點之間的即時旅行時間資料與歷史旅行時間資料互相作比對,找出 k 筆最 鄰近的歷史旅行時間資料,將這 k 筆旅行時間資料依照距離量度的大小作 加權平均,以此輸出旅行時間預測值。

研究將針對各時段的 k 值進行分析,找出 k 值最佳解。以下將相關預 測步驟進行說明,本研究k-NN 模式構建之相關流程可表示如圖 3.2 所示。

圖 3.2 k-NN 模式構建流程圖  即時旅行時間資料

(時間 t)

比對即時資料與歷史資料

找出該時段的 k 值 最佳解 歷史旅行時間

資料庫

資料庫進行 分群處理

分群後的歷史旅 行時間資料庫

將 k 筆歷史資料作 加權平均

輸出旅行時間預測值

(時間 t) t t 1 

選取 k 筆歷史資料  

而本研究 k-NN 模式構建流程運作主要可分為下列五個步驟,說明如下:

Step 2. 將歷史資料作分群

建構 k-NN 模式時需先將歷史資料作分群,當收到一筆即時資料時能 夠立即判斷資料屬於哪一分群,再比對即時資料與群中的歷史資料,如此 可減少比對時間,增加預測速度。本研究 k-NN 模式將依照不同的星期別 將資料作分群,將一周七天資料分成七群,若遇到特殊節日,須獨立出來 考慮。

Step 3. 比對即時資料與歷史資料

利用距離量度比對即時與歷史資料,以得到各筆歷史資料與即時資料 的差異程度。本研究的距離量度採用歐幾里德距離(Euclidean Distance)算 法,比對與即時資料同星期別、前後半小時的歷史資料,將兩兩固定點間 的即時旅行時間資料與歷史旅行時間資料,依照歐幾里得距離方法作平方 差加總,找出該分群資料庫中各筆歷史資料與即時資料的距離量度。

Step 4. 選取 k 筆資料

依照距離量度的大小排序,選取 k 筆最小距離量度的歷史資料,而 k 值設定方式,必須要找到 k 值最佳解,也就是讓預測誤差最小的 k 值解,

作為設定 k 值的條件。

Step 5. 利用加權法減少 k-NN 模式誤差

由於現況的旅行時間會與先前的旅行時間相關,但是隨著時間距離的 增加其影響程度越小,所以我們可以根據歷史資料距離即時資料的時間差 距或是距離量度的大小,將這 k 筆資料加入權重值做調整,以減少旅行時 間預測誤差。

Step 6. 輸出旅行時間預測值

將預測的旅行時間輸出,並將此旅行時間預測值存入歷史資料庫中,

提供給下一個時段的旅行時間預測模式作使用。

相關文件