1. 程式人生 > >機器學習:sklearn資料集與機器學習組成

機器學習:sklearn資料集與機器學習組成

二、模型的選擇

演算法是核心,資料和計算是基礎。這句話很好的說明了機器學習中演算法的重要性。那麼我們開看下機器學習的幾種分類:

  • 監督學習
    • 分類 k-近鄰演算法、決策樹、貝葉斯、邏輯迴歸(LR)、支援向量機(SVM)
    • 迴歸 線性迴歸、嶺迴歸
    • 標註 隱馬爾可夫模型(HMM)
  • 無監督學習
    • 聚類 k-means

如何選擇合適的演算法模型

在解決問題的時候,必須考慮下面兩個問題:一、使用機器學習演算法的目的,想要演算法完成何種任務,比如是預測明天下雨的概率是對投票者按照興趣分組;二、需要分析或者收集的資料時什麼

首先考慮使用機器學習演算法的目的。如果想要預測目標變數的值,則可以選擇監督學習演算法,否則可以選擇無監督學習演算法,確定選擇監督學習演算法之後,需要進一步確定目標變數型別,如果目標變數是離散型,如是/否、1/2/3,A/B/C/或者紅/黑/黃等,則可以選擇分類演算法;如果目標變數是連續的數值,如0.0~100.0、-999~999等,則需要選擇迴歸演算法

如果不想預測目標變數的值,則可以選擇無監督演算法。進一步分析是否需要將資料劃分為離散的組。如果這是唯一的需求,則使用聚類演算法。

當然在大多數情況下,上面給出的選擇辦法都能幫助讀者選擇恰當的機器學習演算法,但這也並非已成不變。也有分類演算法可以用於迴歸。

其次考慮的是資料問題,我們應該充分了解資料,對實際資料瞭解的越充分,越容易建立符合實際需求的應用程式,主要應該瞭解資料的一下特性:特徵值是 離散型變數 還是 連續型變數 ,特徵值中是否存在缺失的值,何種原因造成缺失值,資料中是夠存在異常值,某個特徵發生的頻率如何,等等。充分了解上面提到的這些資料特性可以縮短選擇機器學習演算法的時間。

監督學習中三類問題的解釋

(1)分類問題分類是監督學習的一個核心問題,在監督學習中,當輸出變數取有限個離散值時,預測問題變成為分類問題。這時,輸入變數可以是離散的,也可以是連續的。監督學習從資料中學習一個分類模型活分類決策函式,稱為分類器。分類器對新的輸入進行輸出的預測,稱為分類。最基礎的便是二分類問題,即判斷是非,從兩個類別中選擇一個作為預測結果;除此之外還有多酚類的問題,即在多於兩個類別中選擇一個。


分類問題包括學習和分類兩個過程,在學習過程中,根據已知的訓練資料集利用有效的學習方法學習一個分類器,在分類過程中,利用學習的分類器對新的輸入例項進行分類。圖中(X1,Y1),(X2,Y2)...都是訓練資料集,學習系統有訓練資料學習一個分類器P(Y|X)或Y=f(X);分類系統通過學習到的分類器對於新輸入的例項子Xn+1進行分類,即預測術其輸出的雷標記Yn+1

分類在於根據其特性將資料“分門別類”,所以在許多領域都有廣泛的應用。例如,在銀行業務中,可以構建一個客戶分類模型,按客戶按照貸款風險的大小進行分類;在網路安全領域,可以利用日誌資料的分類對非法入侵進行檢測;在影象處理中,分類可以用來檢測影象中是否有人臉出現;在手寫識別中,分類可以用於識別手寫的數字;在網際網路搜尋中,網頁的分類可以幫助網頁的抓取、索引和排序。

即一個分類應用的例子,文字分類。這裡的文字可以是新聞報道、網頁、電子郵件、學術論文。類別往往是關於文字內容的。例如政治、體育、經濟等;也有關於文字特點的,如正面意見、反面意見;還可以根據應用確定,如垃圾郵件、非垃圾郵件等。文字分類是根據文字的特徵將其劃分到已有的類中。輸入的是文字的特徵向量,輸出的是文字的類別。通常把文字的單詞定義出現取值是1,否則是0;也可以是多值的,,表示單詞在文字中出現的頻率。直觀地,如果“股票”“銀行““貨幣”這些詞出現很多,這個文字可能屬於經濟學,如果“網球””比賽“”運動員“這些詞頻繁出現,這個文字可能屬於體育類

(2)迴歸問題

迴歸是監督學習的另一個重要問題。迴歸用於預測輸入變數和輸出變數之間的關係,特別是當初如變數的值發生變化時,輸出變數的值隨之發生的變化。迴歸模型正式表示從輸入到輸出變數之間對映的函式。迴歸穩日的學習等價與函式擬合:選擇一條函式曲線使其更好的擬合已知資料且很好的預測位置資料

迴歸問題按照輸入變數的個數,分為一元迴歸和多元迴歸;按照輸入變數和輸出變數之間關係的型別即模型的型別,分為線性迴歸和非線性迴歸。

許多領域的任務都可以形式化為迴歸問題,比如,迴歸可以用於商務領域,作為市場趨勢預測、產品質量管理、客戶滿意度調查、偷襲風險分析的工具。

(3)標註問題

標註也是一個監督學習問題。可以認為標註問題是分類問題的一個推廣,標註問題又是更復雜的結構預測問題的簡單形式。標註問題的輸入是一個觀測序列,輸出是一個標記序列或狀態序列。標註問題在資訊抽取、自然語言處理等領域廣泛應用,是這些領域的基本問題。例如,自然語言處理的詞性標註就是一個典型的標註,即對一個單詞序列預測其相應的詞性標記序

當然我們主要關注的是分類和迴歸問題,並且標註問題的演算法複雜