iT邦幫忙

2024 iThome 鐵人賽

DAY 4
2
AI/ ML & Data

征服機器學習的終極秘技系列 第 4

Day 4 - 機器學習項目的起點:問題定義與數據收集

  • 分享至 

  • xImage
  •  

簡介

在工作中,許多上層管理者或老闆常常對具體要做什麼並不清楚,只是聽說機器學習能帶來巨大效益,便急於要求團隊開始進行機器學習專案。同時,初學者常常直接跳到模型訓練階段,忽視了前期的關鍵步驟,這樣的情況容易導致專案後期面臨諸多挑戰。明確定義問題有助於避免「為了機器學習而機器學習、為了 AI 而 AI」的陷阱。唯有團隊聚焦真正重要的問題,才能節省資源,防止浪費時間及金錢在無意義的事情上。此外,即使問題定義清晰,如果數據不夠豐富或質量不高,模型的效果也無法保證會很好。

https://ithelp.ithome.com.tw/upload/images/20240905/20168116aNVx3tBfuL.jpg
source

問題定義

問題定義是機器學習的第一步,它的關鍵在於明確我們想要解決什麼問題。例如是要進行分類還是回歸?是要預測未來的趨勢還是識別特定的模式?這些問題必須在專案開始之前就要明確,否則整個專案會變得沒有方向。有效定義問題的關鍵在於與利益相關者深入溝通,理解業務痛點和目標,將業務問題轉化為機器學習任務(如「提高客戶留下率」轉化為「預測客戶流失風險」的分類問題),並設立具體可衡量的目標(如「將客戶流失率降低5%」而非模糊的「提高留下率」)。同時也要清楚專案可能面臨的局限性和挑戰。

我們可以通過以下幾個步驟來進行有效的問題定義:

  1. 目標明確化:目標應該是具體且可衡量的,我們需要明確預測的對象範圍。例如,預測未來一年的銷售量,我們需要知道是預測哪種產品的銷售量,以及在什麼地區和時間範圍內進行預測。如果我們的目標是進行分類,那麼我們需要明確分類的對象和類別。例如,識別手機簡訊是詐騙還是非詐騙,我們需要具體確定詐騙訊息的標準和範疇 (如:詐騙訊息的定義是什麼?標準是誰制定的?要確定這個標準不會因人而異或要讓同一個人標註,以避免主觀因素的偏差)

  2. 了解業務背景:這通常需要與對應領域的專業人士合作。例如,如果我們要進行建築成本預測,我們應該尋求建築師、營建工程專家、成本估算師等人的意見。通過與這些專家交流,我們可以確認所定義的問題是否真的能解決實際業務需求,是否能帶來實質性的效益。他們可以幫助我們理解問題的複雜性,例如在建築成本預測中可能需要考慮的材料價格波動、勞動力成本、項目規模、地理位置等多個因素。同時,專家們也可以幫助我們確定問題的邊界,明確什麼是在我們的控制範圍內,什麼是需要假設或簡化的。

  3. 問題分解通過將大問題分解為更小、更具體的子問題,不僅有助於更好地理解每個子問題的特徵和挑戰,還能使團隊能夠更有效地應對和解決這些問題。例如,在智慧醫療中,如果我們想要預測病人的治療方案,可以將這個大問題分解為不同類型的治療方式分類,每種治療方式可能涉及不同的病情分類、病人特徵、以及治療效果的預測等具體問題。這樣的分解不僅使得問題更具可管理性,同時也更有助於確保最終的機器學習模型能夠準確地滿足醫療實踐中的實際需求和預期效果。

  4. 假設驗證:在定義問題時,我們通常會做出一些假設。重要的是要明確這些假設,並在可能的情況下進行初步驗證。例如,在預測銷售量時,我們可能假設過去的銷售模式對未來仍然適用。在識別垃圾郵件時,我們可能假設垃圾郵件的特徵是相對穩定的。我們需要與業務專家討論這些假設是否合理,是否需要考慮其他因素。這個過程可以幫助我們避免基於錯誤假設而做出不恰當的問題定義,從而確保我們的分析方向是正確的。通過仔細驗證我們的假設,我們可以更好地理解問題的本質,並為後續的數據收集和分析工作奠定更加堅實的基礎。

https://ithelp.ithome.com.tw/upload/images/20240905/201681166yLoNqd0iL.jpg
[source:image_creators]

數據收集

沒有高質量的數據,即使問題定義得再好,也難以得到有價值的結果。想必大家都聽過「垃圾進垃圾出」的道理,主要就是在說數據品質決定了結果的質量。模型的性能上限也是取決於數據的質量,高質量的數據可以彌補算法的不足,但再好的算法也無法彌補糟糕的數據。盡可能完整地收集數據是重要的一環。即使後續的數據處理可以解決一些缺失或不完整的數據,但在收集階段保持數據的完整性可以減少後續的工作量,並提高最終模型的準確性。

數據收集的來源包含:

  • 內部數據:利用組織內部的現有資料來源,這些數據通常是最容易獲得和理解的。與業務部門和資料科學家合作,確保數據集包含充分的標籤和合適的特徵,以確保數據的完整性和準確性。此優點是數據相關性高、易於獲取, 缺點是資料可能有限。
  • 外部數據:來自於外部來源的數據,這些數據可以通過購買或者使用爬蟲來獲取。外部數據來源包括公共數據庫、第三方數據提供商或開放數據源。外部數據的優勢在於能夠補充內部數據的不足,提供更全面的視角和更多的資訊來源。但需確保從這些外部來源獲取的數據是合法和可信的,並且符合隱私和安全法規。
  • 生成數據:有時候需要通過實驗或模擬來生成特定類型的數據,尤其是在缺乏現有數據或需要擴展數據集時。這些生成的數據應該設計為符合實際情況,以確保模型在真實世界中的應用效果。

在收集數據時,保持數據的完整性和標註的準確性很重要。這些步驟確保我們所使用的數據是可靠高效有價值的。至於要如何確保數據質量呢?最主要是去看數據的相關性、完整性、準確性、代表性及多元性

  • 相關性:收集的數據需要跟待解決問題高度相關,有些毫無相關甚至躁聲數據會嚴重影響模型效能。例如,要預測建築營造成本,參數中就不應該有與非建築相關的參數如麥當勞六塊雞塊單價 (筆者在某次專案中,竟被要求納入這樣的數據,實在是讓人哭笑不得~[參見另一系列文章])
  • 完整性:盡可能獲取全面完整的數據,避免因數據缺失導致的偏差和漏網。例如,在預測市場需求時,需要收集各地區和各類產品的完整銷售數據,避免因某些地區或產品類別的數據缺失而導致模型在這些方面的無法判斷性。
  • 準確性:原始數據和監督式學習中的標註準確程度直接決定了模型性能的上限,因此需要有嚴格的質量控制流程,確保數據的準確性。這可以包括雙重標註或者第三方驗證等方法。如在進行醫療診斷標註時,我們會請醫師標註疾病的類別,為了確保準確性,也會請多位專科醫師對同一套數據進行標註,再做比較是否有誤診狀況。
  • 代表性:確保數據能夠很好地反映出整體數據集的特徵分佈,避免過度簡化或只反映局部的數據情況。例如,在市場分析中,要考慮來自全球各大洲、各種類型電子產品的銷售數據,以充分代表全球電子產品市場的多樣性。
  • 多元性:收集來自不同來源、不同場景的數據,以確保數據集能夠覆蓋多種情況和條件,避免特定範疇的偏差。例如,在醫療影像分析中,多樣性要求從不同地理位置、不同規模和技術水平的醫院收集影像數據,這樣可以確保模型在不同臨床情境和設備條件下的普遍適用性,而不僅僅侷限於單一或少數特定醫院的情況。

Note: 代表性強調數據樣本反映整體特徵分佈,而多樣性則強調數據集的覆蓋廣泛性和應用靈活性。

結論

在開始機器學習專案之前,投入更多時間和精力在問題定義和數據收集上是非常值得的。雖然這階段可能很耗時,但在機器學習領域,這些前期的工作是不可少的。在接下來的文章中,我們將進一步探討數據處理、特徵工程、模型選擇和評估等後續步驟。


上一篇
Day 3 - 機器學習的基本流程與重要步驟
下一篇
Day 5 - 數據質量提升之道:資料探勘
系列文
征服機器學習的終極秘技30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言