許多資料集會將資料儲存在資料表 (網格) 中,例如 逗號分隔值 (CSV) 或直接透過試算表 資料庫資料表資料表是符合直覺的機器輸入格式 學習模型。 您可以將資料表中的每一列視為範例 每個資料欄都當做潛在特徵或標籤 儘管如此,資料集也有可能衍生自其他格式,包括 和通訊協定緩衝區
無論格式為何,機器學習模型的品質取決於 用於訓練資料本節將探討重要的資料特性。
資料類型
資料集可以包含多種資料類型,包括 不限於:
上述的資料類型可以進一步細分。 本課程後續單元 — 例如類別式 資料模組 - 詳細資料 並將這些資料類型進行細分
資料量
原則上,模型至少應針對 規模比可訓練參數高出 2 倍不過,不錯 一般來說,模型訓練包含的樣本數量比這更多。
以少量資料集訓練的模型, 功能 成效通常優於以小型資料集訓練而成 功能相當豐富 過去,Google 曾花費許多精力訓練 簡單的模型 大型資料集
不同機器學習程式適用的不同資料集,可能得耗費大量資源 從各式各樣的樣本中建構出實用模型相對地 提出幾個簡單的問題應該就能派上用場如果是其他問題 可能不夠
有可能從小型資料集取得好的結果 訓練現有模型 您就能選擇使用 BigQuery 做為資料倉儲
資料品質和穩定性
大家都偏好高品質或劣質,但內容模糊不清 這種概念可以用許多不同方式定義本課程會說明 quality:
高品質的資料集有助於模型達成目標。 品質偏低的資料集會妨礙模型達成目標。
高品質資料集通常也最可靠。 「可靠性」是指可以「信任」資料程度的程度。 以可靠的資料集訓練而成的模型更有可能產生實用 而不是以不可靠的資料訓練而成的模型
在「評估」可靠性中,您必須決定:
- 標籤錯誤有多常發生?舉例來說,如果資料是 您的評估人員犯錯的頻率如何?
- 你的功能是否吵雜?也就是為特徵中的值 含有錯誤?逼真,無法清除資料集 不一而足有些噪音是正常的;例如, 每週的波動幅度都不大。
- 資料是否正確篩選了您的問題?例如: 您的資料集應包含來自機器人的搜尋查詢嗎?如果您是 那就建立垃圾郵件偵測系統,答案應該是「是」。 不過,如果您只是想改善人類的搜尋結果,我們採用的這種做法並非如此。
以下是資料集資料不可靠的常見原因:
- 省略的值。例如,使用者忘記為 房子的年齡
- 重複的範例。例如,伺服器誤將 記錄項目兩次。
- 無效的特徵值。例如有人輸入了多餘的數字,或 溫度計在陽光中時。
- 標籤錯誤。舉例來說,某人誤將一張照片 一棵楓樹
- 資料區段有誤。比如某個功能非常可靠 除非有一天,網路一直當機
建議您使用自動化功能來標記不可靠的資料。例如: 定義或依賴外部正式資料結構定義的單元測試, 超出定義範圍的旗標值
完整和未完成範例
最完美的結果是,每個範例都完整;每個範例都包含 每個特徵的值
然而,現實生活中的範例通常「不完整」。也就是說, 缺少一個特徵值。
請勿針對不完整的範例訓練模型。而是應該修正或消除 未完成的例子包括:
- 刪除不完整的範例。
- Impute 缺少值; 也就是將不完整的範例轉換成完整範例 推測遺漏值的合理猜測。
如果資料集內含足夠的完整範例,可訓練有用的模型, 並考慮刪除不完整的範例 同樣地,如果只有一個特徵缺少大量資料,且 一個特徵可能對模型沒有幫助,那麼請考慮 觀察模型輸入內容會降低多少品質 移除。如果模型完全沒有採用,或是幾乎沒有效果,那就很好。 反之,如果您的完整範例不足以訓練有用的模型, 不妨考慮計算遺漏的值
您可以刪除用不到或多餘的範例,但刪除會失敗 重要的例子不過,很難區分 實用範例。如果無法決定 建立兩個資料集,一個由刪除作業形成 其他例子則像是計算 接著,請判斷哪些資料集的訓練品質較佳。
,瞭解如何調查及移除這項存取權。其中一種常見的演算法是使用平均值或中位數做為計算值。 因此,如果您代表數值特徵 Z 分數,然後 則代表值通常為 0 (因為 0 通常是指 Z 分數)。
練習:隨堂測驗
以下是資料集的兩個資料欄,並依 Timestamp
排序。
時間戳記 | 溫度 |
---|---|
2023 年 6 月 8 日 09:00 | 12 |
2023 年 6 月 8 日 10:00 | 18 |
2023 年 6 月 8 日 11:00 | 遺漏 |
2023 年 6 月 8 日 12:00 | 24 |
2023 年 6 月 8 日 13:00 | 38 |
下列哪一個值是設定值的合理值 設定缺少 Temperature 值?