特徵工程入門與實踐----特徵工程簡介

        人工智能的發展,讓我們將那些需要手動操作才能處理的問題,讓計算機也可以解決。例如,自然語言處理、人臉識別和圖片分類等。因此,我們需要藉助機器學習的知識來構建一個AI系統,從用戶那裏讀取到原始數據,讓計算機來幫助我們達到識別的目的。爲了解決某個問題,需要收集大量的數據,這些數據都是在實際的情況中自然形成的,往往有雜亂或者不完整的情況。因此,我們需要對原始數據做處理。這就是所謂的特徵工程。在日常的工作中80%的時間都用在捕獲、清洗和組織數據上,20%的時間用在構造機器學習流水線上。下圖展示了不同工作時間的比例。
不同工作的時間比例

  • 設置訓練集:3%
  • 清洗和組織數據:60%
  • 收集數據集:19%
  • 挖掘數據模式:9%
  • 調整算法:4%

        準備數據包括捕獲數據、存儲數據、清洗數據。清洗數據的意思是將數據轉換爲雲系統和數據庫可以輕鬆識別的形式。組織數據是將數據集的格式轉換爲更乾淨的格式。我們主要專注於特徵工程,着眼於清洗和組織數據的過程,爲機器學習流水線所服務。因此,所謂特徵工程就是將數據轉換爲能更好的表示潛在問題的特徵,而最終的目的是提高機器學習的性能。下面我們就要了解幾個相關的概念。

  1. 特徵:特徵是對機器學習算法有意義的屬性,對應表格數據,一列就是一個特徵。
  2. 響應(標籤):響應也是屬性的一個,但是這個屬性是我們有希望進行預測的。
  3. 監督學習:利用有標籤的數據,通過機器學習方法進行預測或者分類的學習過程。
  4. 無監督學習:利用無標籤數據,通過機器學習算法進行預測或者分類的學習過程。

        我們要做的就是通過特徵工程,將雜亂、有問題的數據轉化爲乾淨、整潔的數據。這樣我們就可以通過機器學習的算法來解決相應的問題。特徵工程能提高機器學習的性能。評價一個特徵工程的好壞的步驟爲:
(1)在應用任何特徵工程之前,得到機器學習模型的基準性能。
(2)應用一種或多種特徵工程。
(3)對於每種特徵工程獲取一個性能指標,並與基準性能進行對比。
(4)如果性能增量大於某個閾值,則認爲這種特徵工程是有益的,可以應用在機器學習流水線上。
        接下來我們將學習以下幾部分內容,來深入理解特徵工程都在做什麼:

  • 特徵理解
  • 特徵增強
  • 特徵選擇
  • 特徵構建
  • 特徵轉換
  • 特徵學習

        最後,說一下我自己是怎麼開始認識到特徵工程的重要,在我們的學習中,都是使用一些被處理好的數據來實現我們的模型。並且大多數人都將學習重點放在了模型上。這也造成了很多人都不關心特徵工程這部分。直到最近參加了數學建模,選了一道需要特徵工程相關知識的題,才感覺到自己對這方面知識的欠缺。最後買了這本書《特徵工程入門與實踐》。希望學完這本書,可以增加自己對特徵工程的瞭解。

注:本文的內容與圖片來源於《特徵工程入門與實踐》。如有您也想學習相關知識,建議買一本來看。
個人博客.
聯繫方式:2391855138(加好友請備註)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章