2024 國道智慧交通管理創意競賽:交通事故處理時間預測專案
2024 國道智慧交通管理創意競賽:交通事故處理時間預測專案¶
本次專案旨在分析 2023 年台灣國道交通事故資料,並預測 2024 年 1–2 月事故的處理時間。我們主要運用資料前處理、特徵工程與機器學習模型(LSTM)來達成目標。
一、資料前處理與整合¶
資料前處理是確保模型效能的關鍵步驟。面對來自高公局的原始資料,我們進行了以下處理:
- 欄位數量一致化:
訓練資料(2023年)有 49 個欄位,測試資料(2024年 1–2月)有 50 個欄位,主要差異在於測試資料多了一個「分局」欄位。
我們透過觀察「簡訊內容」與「分局」之間的對應關係,建立對應字典:
{1:北控,2:中控,3:南控,4:屏控,}
利用「簡訊內容」的前四個字元來回補訓練資料中的「分局」欄位,使得兩份資料的欄位數量一致。
為方便後續處理,我們在訓練與測試資料中新增了 “TAG” 欄位,然後將兩份資料合併。
- 異常值與隱藏字元清理:
資料中存在 #VALUE!、#REF! 等異常值以及換行符號、引號等隱藏字元。
透過自定義 clean_string 函數,將這些異常字元替換為 'OTHER',並移除換行符號與引號,確保資料的乾淨度。
- 遺失值回補:
不同分局填寫資料的完整性不一,例如「事故類型」欄位常有遺失值。
我們透過分析「簡訊內容」中的關鍵字,判斷並回補了部分遺失的「事故類型」資料。
- 內容標準化與簡化:
為降低分析複雜度,我們將部分欄位的內容進行了統一與群組化。
例如,「肇事車輛」欄位有三十多種車種,我們將其群組化以簡化分析。
類似地,「國道名稱」與「方向」等欄位也進行了標準化處理。
此外,根據「簡訊內容」前四個字元,我們也回補了測試資料中缺失的「分局」資訊:
mes_to_number = { '北控通報': 1, '中控通報': 2, '高公局中': 2, '南控通報': 3, '高公局南': 3, '高公局北': 1, '坪控通報': 4, '北通報3': 1, '中控通2': 2,}df['分局'] = df['簡訊內容'].str[0:4].map(mes_to_number)
二、資料重塑與特徵工程¶
為了更有效地進行模型訓練,我們對資料結構進行了調整,並提取了關鍵特徵:
- 車輛資訊重塑:
原始資料以寬表(wide table)形式儲存車輛資訊,且不同事故的車輛數量不一,不利於模型訓練。
我們選擇只記錄發生事故的車輛總數,並將先前群組化的車輛類型以百分比形式表示,記錄單次事故中不同車輛類型的佔比。這樣不僅方便圖表分析,也更適合機器學習模型的輸入。
- 衍生特徵提取:
從現有欄位中提取新的、更有意義的特徵。
例如,從「死亡」與「受傷」人數中衍生出布林(Boolean)類型的特徵:
- is_death:若「死亡」人數不為 0,則為 True,否則為 False。
- is_injury:若「受傷」人數不為 0,則為 True,否則為 False。
df['is_death'] = df['死亡'] != 0df['is_injury'] = df['受傷'] != 0
- 冗餘欄位刪除:
移除已經不再需要的原始欄位,以減少雜訊並降低模型訓練的複雜度。
三、資料探索與洞察¶
經過資料前處理後,我們對資料進行了初步探索,以了解事故特徵及處理時間的影響因素:
- 處理時間分佈:大多數事故的處理時間都非常短。
- 事故類型與時間分佈:
事故類型分為 A1(死亡事故)、A2(受傷事故)和 A3(僅財損事故),嚴重程度由高到低。
A1 類死亡事故的高峰期主要發生在清晨。這可能是因為清晨車速較快,且視線不佳,一旦發生事故,後果會相對嚴重。
A3 類事故主要發生在早上七點到晚上六點的上班時段。這個時段的車流量較大,雖然事故基數高,但由於視線較佳,事故嚴重程度通常較低。
-
處理時間的影響因素:
事故嚴重程度:事故越嚴重,處理時間越長,這符合直觀認知。 -
發生時段:清晨發生的事故處理時間相對較長,這可能與清晨時段處理量能較少有關。
四、機器學習模型與訓練¶
在機器學習階段,我們選擇了 LSTM (Long Short-Term Memory) 網路進行處理時間的預測,並採取了以下策略:
- LSTM 應用:LSTM 是一種遞迴神經網路(Recurrent Neural Network),特別擅長處理序列資料,非常適合用於處理時間序列相關的預測任務。
- 早停法 (Early Stopping):為避免模型過度擬合(overfitting),我們在訓練過程中使用了早停法。當模型在驗證集上的表現不再提升時,即停止訓練,以確保模型的泛化能力。
- 中間層 (Hidden Layers):模型中設置了中間層,用於捕捉資料中更深層次的隱含特徵和複雜關係。
這次競賽專案從資料清理、特徵工程到模型訓練,都展現了完整的資料科學流程。透過對國道交通事故資料的深入分析,我們不僅理解了事故發生的模式,也成功地建立模型來預測事故處理時間,為智慧交通管理提供了有價值的洞察。
Comments
Loading comments…
Leave a Comment