聊天視窗

數據洞察:從原始資料到策略決策的全流程分析 - 第 2 章

第二章:資料治理與前處理

發布於 2026-02-24 16:07

# 第二章:資料治理與前處理 > **核心觀點**:資料治理不是靜態的規範,而是動態的自我修正。當資料在流程中被反覆閱讀、修改、評估,才能真正轉化為商業決策的金鑰。 ## 1. 為何資料治理要放在最前面 - **業務價值的基石**:資料質量直接影響模型準確度。即使最先進的演算法,如果基礎數據不可靠,也只能輸出錯誤的洞察。 - **合規風險**:GDPR、個資法等法規要求資料必須有完整的可追溯性。未執行治理的數據集往往成為合規審核的痛點。 - **成本節約**:早期發現缺失值或異常,往往比模型迭代階段更易修復。 > *案例*:某金融機構在信用卡詐欺偵測專案中,最初未統一交易時間格式,結果在模型訓練時出現「NaN」分布,最終須重新收集並清洗資料,導致專案延遲兩週。 ## 2. 資料品質指標:量化治理 | 指標 | 目標 | 監測方式 | |------|------|----------| | 完整度 | 100% | 缺失值比例 < 1% | | 一致性 | 無格式衝突 | 欄位類型驗證 | | 及時性 | 與實際事件同步 | 延遲時間 < 1 小時 | | 正確性 | 參照外部基準 | 交叉驗證 | | 可信度 | 來源可追溯 | 版面紀錄 | > **工具**:Great Expectations、deequ、OpenRefine 等能在 ETL 流程中自動化檢測。 ## 3. 數據清洗實務 ### 3.1 缺失值處理 | 方法 | 何時使用 | 範例 | |------|-----------|------| | 刪除 | 缺失比例 < 5% | `df.dropna()` | | 填補(平均/中位數) | 數值型 | `df['age'].fillna(df['age'].median())` | | 插值 | 時間序列 | `df['price'].interpolate(method='time')` | | 預測填補 | 高缺失率 | XGBoost 迴歸預測缺失值 | > **注意**:缺失值往往不是隨機的,需先確認 MAR / MNAR 模式,避免引入偏差。 ### 3.2 異常值檢測 - **箱型圖**:`df.boxplot(column='transaction_amount')` - **Z-Score**:`np.abs(stats.zscore(df['value'])) > 3` - **Isolation Forest**:`iForest.fit_predict(df)` > 異常值可能是錯誤輸入,也可能是詐欺或商業機會,判斷前需業務交互。 ### 3.3 文字處理 - **標準化**:`lowercase, remove punctuation` - **分詞**:`jieba.lcut()` 或 `nltk.word_tokenize()` - **向量化**:TF‑IDF、Word2Vec、BERT embeddings ## 4. 特徵工程:從數據到洞察 ### 4.1 基礎轉換 - **標準化 / 正規化**:`StandardScaler`, `MinMaxScaler` - **類別編碼**:LabelEncoder, OneHotEncoder, Target Encoding - **時間特徵拆分**:`pd.to_datetime` → year, month, day, weekday, hour ### 4.2 派生特徵 - **交互特徵**:`X_train['feature1*feature2'] = X_train['feature1']*X_train['feature2']` - **聚合特徵**:群組求和、平均、最大值,例如每客戶每月交易總額。 - **文本摘要**:TF‑IDF 取 top N,或利用 Doc2Vec 生成密度向量。 > *案例*:在零售庫存預測中,將「節假日因子」加入特徵,模型 MAE 下降 12%。 ### 4.3 Feature Selection - **Filter 方法**:相關係數、卡方檢驗 - **Wrapper 方法**:Recursive Feature Elimination (RFE) - **Embedded 方法**:L1 正則化、XGBoost feature importance > 選擇過度會造成過擬合;缺乏選擇則會帶來計算成本。 ## 5. 小結 - **資料治理**:是數據科學的基石,確保品質、合規與可追溯。 - **清洗流程**:缺失值、異常值、文字處理需結合業務場景。 - **特徵工程**:是洞察的橋樑,透過轉換、派生、選擇將原始數據轉化為模型可理解的訊息。 - **工具與方法**:從 Pandas、Scikit‑Learn 到 Deep Learning 皆可應用,關鍵在於「什麼問題、什麼資料」而非工具本身。 > **實務建議**:在進入建模前,先用簡單線性模型或決策樹驗證特徵的初步效益,避免在複雜模型中陷入特徵噪音。