【機器學習實戰】第1章 機器學習基礎


第1章 機器學習基礎

機器學習基礎_首頁

機器學習 概述

機器學習就是把無序的數據轉換成有用的信息。

  1. 獲取海量的數據
  2. 從海量數據中獲取有用的信息

我們會利用計算機來彰顯數據背后的真實含義,這才是機器學習的意義。

機器學習 場景

例如:識別動物貓
模式識別(官方標准):人們通過大量的經驗,得到結論,從而判斷它就是貓。
機器學習(數據學習):人們通過閱讀進行學習,觀察它會叫、小眼睛、兩只耳朵、四條腿、一條尾巴,得到結論,從而判斷它就是貓。
深度學習(深入數據):人們通過深入了解它,發現它會'喵喵'的叫、與同類的貓科動物很類似,得到結論,從而判斷它就是貓。(深度學習常用領域:語音識別、圖像識別)

模式識別(pattern recognition): 模式識別是最古老的(作為一個術語而言,可以說是很過時的)。
    我們把環境與客體統稱為“模式”,識別是對模式的一種認知,是如何讓一個計算機程序去做一些看起來很“智能”的事情。
    通過融於智慧和直覺后,通過構建程序,識別一些事物,而不是人,例如: 識別數字。
機器學習(machine learning): 機器學習是最基礎的(當下初創公司和研究實驗室的熱點領域之一)。
    在90年代初,人們開始意識到一種可以更有效地構建模式識別算法的方法,那就是用數據(可以通過廉價勞動力采集獲得)去替換專家(具有很多圖像方面知識的人)。
    “機器學習”強調的是,在給計算機程序(或者機器)輸入一些數據后,它必須做一些事情,那就是學習這些數據,而這個學習的步驟是明確的。
    機器學習(Machine Learning)是一門專門研究計算機怎樣模擬或實現人類的學習行為,以獲取新的知識或技能,重新組織已有的知識結構使之不斷改善自身性能的學科。
深度學習(deep learning): 深度學習是非常嶄新和有影響力的前沿領域,我們甚至不會去思考-后深度學習時代。
    深度學習是機器學習研究中的一個新的領域,其動機在於建立、模擬人腦進行分析學習的神經網絡,它模仿人腦的機制來解釋數據,例如圖像,聲音和文本。

參考地址: 
http://www.csdn.net/article/2015-03-24/2824301
http://baike.baidu.com/link?url=76P-uA4EBrC3G-I__P1tqeO7eoDS709Kp4wYuHxc7GNkz_xn0NxuAtEohbpey7LUa2zUQLJxvIKUx4bnrEfOmsWLKbDmvG1PCoRkJisMTQka6-QReTrIxdYY3v93f55q

機器學習已應用於多個領域,遠遠超出大多數人的想象,橫跨:計算機科學、工程技術和統計學等多個學科。

  • 搜索引擎: 根據你的搜索點擊,優化你下次的搜索結果。
  • 垃圾郵件: 會自動的過濾垃圾廣告郵件到垃圾箱內。
  • 超市優惠券: 你會發現,你在購買小孩子尿布的時候,售貨員會贈送你一張優惠券可以兌換6罐啤酒。
  • 郵局郵寄: 手寫軟件自動識別寄送賀卡的地址。
  • 申請貸款: 通過你最近的金融活動信息進行綜合評定,決定你是否合格。

機器學習 組成

主要任務

  • 分類:將實例數據划分到合適的類別中。
  • 回歸:主要用於預測數值型數據。(示例:數據通過給定數據點來擬合最優曲線)

監督學習

  • 必須確定目標變量的值,以便機器學習算法可以發現特征和目標變量之間的關系。 (包括:分類和回歸)
  • 樣本集:訓練數據 + 測試數據
    • 訓練樣本 = 特征(feature) + 目標變量(label: 分類-離散值/回歸-連續值)
    • 特征通常是訓練樣本集的列,它們是獨立測量得到的。
    • 目標變量: 目標變量是機器學習預測算法的測試結果。
      • 在分類算法中目標變量的類型通常是標稱型(如:真與假),而在回歸算法中通常是連續型(如:1~100)。
  • 知識表示
    1. 可以采用規則集的形式【例如:數學成績大於90分為優秀】
    2. 可以采用概率分布的形式【例如:通過統計分布發現,90%的同學數學成績,在70分以下,那么大於70分定為優秀】
    3. 可以使用訓練樣本集中的一個實例【例如:通過樣本集合,我們訓練出一個模型實例,得出 年輕,數學成績中高等,談吐優雅,我們認為是優秀】

非監督學習

  • 數據沒有類別信息,也不會給定目標值。
  • 聚類:在無監督學習中,將數據集分成由類似的對象組成多個類的過程稱為聚類。
  • 密度估計:將尋找描述數據統計值的過程稱之為密度估計。【就是:根據訓練樣本確定x的概率分布】
  • 此外,無監督學習還可以減少數據特征的維度,以便我們可以使用二維或三維圖形更加直觀地展示數據信息。

訓練過程

機器學習訓練過程圖

算法匯總

算法匯總

機器學習 使用

選擇算法需要考慮的兩個問題

  1. 算法場景
    • 預測明天是否下雨,因為可以用歷史的天氣情況做預測,所以選擇監督學習算法
    • 給一群陌生的人進行分組,但是我們並沒有這些人的類別信息,所以選擇無監督學習算法、通過他們身高、體重等特征進行處理。
  2. 需要收集或分析的數據是什么

舉例

選擇算法圖

機器學習 開發流程

* 收集數據: 收集樣本數據
* 准備數據: 注意數據的格式
* 分析數據: 為了確保數據集中沒有垃圾數據;
    如果是算法可以處理的數據格式或可信任的數據源,則可以跳過該步驟;
    另外該步驟需要人工干預,會降低自動化系統的價值。
* 訓練算法: [機器學習算法核心]如果使用無監督學習算法,由於不存在目標變量值,則可以跳過該步驟
* 測試算法: [機器學習算法核心]評估算法效果
* 使用算法: 將機器學習算法轉為應用程序

Python語言 優勢

  1. 可執行偽代碼
  2. Python比較流行:使用廣泛、代碼范例多、豐富模塊庫,開發周期短
  3. Python語言的特色:清晰簡練、易於理解
  4. Python語言的缺點:唯一不足的是性能問題
  5. Python相關的庫
    • 科學函數庫:SciPyNumPy(底層語言:C和Fortran)
    • 繪圖工具庫:Matplotlib


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM