CASE STUDY · DATA & AI

浮標資料分析與
航道風險評估平台

把海洋觀測資料從品質檢查、時間序列前處理、LSTM 驗證一路接到風險判讀與可下載成果。

GitHub ↗
角色
資料與 ML 流程開發
範圍
Data QA · LSTM · 風險規則 · Streamlit
狀態
公開 Repository / Case Study
技術
Python · Streamlit · Keras / LSTM
年份
2026

00 / Project framing

專案脈絡與工程判斷

Problem海洋觀測資料需要先處理品質、缺值與時間尺度,模型結果也必須轉成可判讀的風險訊號。
Decision把 resample、缺值策略、模型驗證、cache、風險門檻與 export 串成同一條分析流程。
EvidenceRepository 可核對 5 種時間尺度、4 種缺值策略與 4 種輸出;不把未固定資料集的模型分數包裝成成果。
Next下一步是固定 benchmark 資料集、加入 baseline / model comparison,並把資料來源與驗證流程再自動化。

01 / Verified metrics

數字直接來自目前 repository 的功能與設定。

5預測時間尺度:小時 / 日 / 週 / 月 / 年
4缺值策略:ffill / bfill / interpolate / dropna
4輸出:CSV / HTML / TXT / ZIP
3每組模型快取:Keras / Scaler / History

這些是程式碼與 README 可驗證的系統能力,不把未經固定資料集 benchmark 的模型指標包裝成效能數字。

02 / Architecture

從觀測資料到決策訊號

Buoy Data測站、時間、海象欄位
Data Pipelineresample、缺值、平滑、QA
LSTM2× LSTM + Dropout + Dense(1)
Product LayerRMSE / R / 風險門檻 / 下載

03 / Risk rules

模型輸出不是終點。

示性波高warning 2.5、danger 4.0。
風速warning 10.0、danger 17.0。
ValidationTrain / validation 時序切分,顯示 RMSE、相關係數 R 與 epsilon 命中率。
Cache依測站、參數、頻率、日期與模型設定產生 hash,重複設定直接載入模型。

04 / Runtime UI

ACTUAL APP · CI CAPTURE

直接呈現真正執行中的 Streamlit App。

這不是另外重製的 mockup;保留原始 app.py 在最小測試資料下啟動後的產品狀態,讓實際介面與前面的資料流程放在同一個 Case Study 脈絡中。

浮標資料分析平台原始 Streamlit App 實際執行畫面
原始 app.py 由 GitHub Actions 啟動,搭配最小測試資料後以 Chromium 擷取;展示的是可執行產品畫面,而非設計稿。

05 / Takeaway

模型只是系統的一段。

資料產品還需要輸入品質、驗證、快取、規則與 UI。這個專案的重點是把這些環節接成完整流程。