2015年9月10日 星期四

『機器學習駭客秘笈』 讀書心得 (上)


書目: 機器學習駭客秘笈
Machine Learning for Hackers - Case Studies and Algorithms to Get You Started
作者: Drew Conway, John Myles White
譯者:林威仰
出版社:歐萊禮

我一直在猶豫我到底要不要寫這篇心得,因為我到底能寫出什麼有幫助的事情我也不知道?!不過看看就好... 希望沒有浪費讀者太多時間。

關於你要看這本書的話,有幾個建議:
*這本書的範例是用 R 語言來解說,所以,比較優良的情況是,你有學過基本的 R 應該會更上手,不過也不用太擔心,第一章節會介紹 R 的安裝跟一些基本概念。
*這本書介紹了幾個常見的 Machine Learning 的方法,像是分類, 回歸, 資料分群, 最佳化。


## 前言
* 『機器學習是什麼? 抽象來說,是一系列的工具與方法,協助我們從各種記錄或資料中,萃取出其模式規則甚至是隱含其中的深層資訊。』- 第一頁。
* 這本書雖然用了『駭客』兩字,但不是我們心中所認為的那種駭客,而是指喜歡學習新技術,並且用來解決問題的人
* 機器學習涉及到非常多領域,基礎理論是數學跟統計學 (當然還有其他的啦 XD)。
* 機器學習包含許多的理論,初學者如果想要看這本書,最好可以對一些基礎的理論有所涉略。
* 『動手實做才是機器學習的圭臬』 - p.1 前言
* 機器學習有兩種方式,一個是『監督式學習』,另一個是『非監督式學習』。書中的第三章, 第四章,都是監督式學習。


## 第一章 使用 R 語言
*『統計學探討如何從解讀資料中的資訊』 - p.1
*『機器學習則是要將資料轉換為有意義的事務』- p.1
* 機器學習處理的問題不外乎兩個型態,分類問題跟回歸問題。
* R 的缺點是無法處理極大量的資料,如果你只是為了驗證幾個簡單的概念,使用 R 蠻適合的,但是目標如果是建立企業級的資料分析系統,R 就不會是最好選擇,像是 google 或是 facebook 都用 R  來做實驗性的機器學習演算法,但是真的要實戰,是會把演算法移到像 C 語言來實做之類的。


## 第二章 資料探索
(我個人覺得整理資料最難..)
這章對我來說其實在講數學比較多,會介紹平均數, 中位數, 眾數, 分位數, 標準差, 變異數。看了很頭痛的東西 XD 好想哭,好吃力...


## 第三章 本文分類: 垃圾郵件判斷
* 二分法,也就是分類問題(classification) 是機器學習常見的方法,這本書舉例了垃圾郵件判斷,分類法最重要的一個點就是特徵擷取,比方說,你拿什麼特點來認定某封信件是否為垃圾郵件? 。在這本書會介紹如何用內文的內容,去做分類,比方說某些文字出現的機率過高,有可能是就是垃圾信件之類的。

* 本文分類演算法又稱為 『單純貝氏分類器 (Naive Bayes Classifier)』,在書中的範例,將每封信的文字分成兩類的文字,一類是可能出現在垃圾郵件的單字,另一類則否,然後算出一個大概的機率,這還會談到先驗機率 (機率為多少就可以判斷是垃圾郵件) 等等。

* 章節會有實作的 code 可以看,有實做一個貝氏垃圾分類器,另外還用到了 R 的 tm 套件,tm 套件就是 text mining,用來做本文探勘的工具,還會用到 ggplot2 畫一些圖,感受一下分類的結果,恩.. 如果你覺得這章很 hard code... 那後面的章節更 hard code (哭),但蠻有趣的,如果你跟我一樣不懂實做,那就把方法看一看。

這章的範例雖然有趣,但一般的分類問題絕對不是用一個簡單的條件就可以將條件一分為二,所以接下來來到了第四章。

## 第四章 項目排序: 優先收件匣
* 這個章節其實是延續第三章,如果我們今天把一堆郵件做分類,一類是正常的,一類是可能為垃圾郵件的,再來,我們希望針對垃圾郵件的可能性做排序...

* 為一組資料做排序,也是機器學習常見的工作,最有名的例子: 推薦系統。

* 如果你還沒看過這本書,可以先思考看看: 你打算用什麼來排序哪些信件是重要的?

* 小提示: 在解決一些機器學習的問題時,視覺化資料永遠是一個了解資料的一個不錯的方法,幫助你瞭解特徵之間的關聯性。 - 參考 p.107


第五章開始我留到下回再寫,有點累,內容有點多,後面開始講看不懂的線性回歸。


結論
* R 的話,可以去上 coursera 的課,或是 datacamp,只看第一章就想要把 R 弄熟,不可能 XD。
* 這本沒有我想像中的.. 基礎 XD 可能我不是這個領域的人吧.. 感覺看這本書在平行世界,但是學到很多方法 :)。



PS: 這本書已經賣出去了

4 則留言:

  1. 謝謝你的分享,後續還有新的心得嗎?
    有點考慮要不要買這本書~~XD

    回覆刪除
    回覆
    1. 沒有 之後太忙就沒有寫了
      最近有想要搬家 如果你有興趣的話我可以賣你呀 (不介意二手書的話 半價賣
      書我是... 因為我基礎沒有這麼好所以後面2-3張就不是這麼看得懂了@@ XD

      刪除
  2. 謝謝你的分享!!!
    最近也有考慮買這本書,如果還沒賣掉的話歡迎跟我聯絡喔!!!!

    回覆刪除
    回覆
    1. 請用 email跟我聯絡吧!
      yiyingwu.1990[小老鼠]gmail.com :)

      刪除

若你看的文章,時間太久遠的問題就別問了,因為我應該也忘了... XD

Vue multiselect set autofocus and tinymce set autofocus

要在畫面一進來 focus multiselect 的方式: 參考: https://jsfiddle.net/shentao/mnphdt2g/ 主要就是在 multiselect 的 tag 加上 ref (例如: my_multiselect), 另外在 mounted...