//2019.08.01
機器學習基礎入門1-2
1、半監督學習的數據特征在於其數據集一部分帶有一定的"標記"和或者"答案",而另一部分數據沒有特定的標記,而更常見的半監督學習數據集產生的原因是各種原因引起的數據缺失。
2、半監督學習的數據集處理方式大多采用:先用無監督學習算法對數據進行相關的處理,再利用監督學習算法對其進行模型的訓練和預測。
3、增強學習:它是指根據周圍的環境進行相應的行動,然后根據采取行動的結果,學習行動的方式,其算法得到整體閉環原理圖如下圖所示:
圖1
4、機器學習算法的其他分類方式:
(1)在線學習(online learning)和批量學習(離線學習)(batch learning)
(2)參數學習(parametric learning)與非參數學習(nonparametric learning)
5、批量學習算法的整體流程如下圖所示:
圖2
它的優點在於比較簡單,它適應環境變化的方式是:進行定時重新批量學習,不過這種方式也有比較大的缺點就是:每次重新批量學習,其運算量巨大;另外在某些環境變化非常迅速的情況下,其實現是基本不可能的。
6、在線學習:它是指在批量學習的基礎上將新的產生的數據集輸入到機器學習算法的學習資料中進行實時的訓練和迭代優化,從而及時地適應環境的變化,其具體原理圖如下:
圖3
它的優點在於能夠及時地反映新的環境的變化,但是其缺點是如果新的數據帶來一些不好的變化,它也會及時進入到學習算法當中,從而對於整體的訓練模型產生不好的影響,解決此類問題的關鍵在於需要加氫對於實時數據的自我監控與預處理。
7、對於一些大批量數據,數據量巨大,完全無法批量學習的情況下,其在線學習是非常必要和正確的解決手段。
8、對於參數學習,其具體的含義在於在概率統計的各種假設前提下,將其數據輸入輸出之間的關系假設為一定的含參模型,利用原來的數據集對於其模型的參數進行概率的確定,一旦相應的參數確定完成之后,其輸入輸出的關系也隨之確定,因此原來的學習數據也已然不再需要。
例如對於假設的二維數據間的線性關系,通過原有的數據集可以確定出其模型中所需要確定的參數a和b,確定完成之后原來的數據將再不需要:
圖4
9、對於非參數學習,其含義在於我們不並將其進行概率意義上的多參數模型假設,但是非參數並不代表沒有參數,它在整體的學習過程中也會包含一定的參數。
#機器學習的相關思考
1、大多數機器學習算法的准確度高度依賴於其基礎的數據集,數據集的質量和數量很大程度上決定了其算法的最終准確度,因此也有一種說法是"數據即算法",2001年微軟發表論文表面對於不同的機器學習算法,當其訓練的數據集不斷增多時,其算法預測的准確度也在不斷地提高,並且最終都會彼此接近。因此,算法的准確度最終並不取決於算法本身,而是取決於基礎訓練數據集本身。
2、對於數據集的預處理主要關鍵在於:
(1)收集更多的數據
(2)提高數據的質量
(3)提高數據的代表性
(4)研究數據更重要的特征
3、不過對於一些問題,隨着機器學習算法的發展,有些算法並不需要基礎數據訓練集,算法本身就可以對其進行產生訓練和提高,比如AlphaGo Zero,它就是利用算法,從零開始進行訓練和解決,不過它具有一定的特殊性。所以也有人說“算法即王”
4、對於機器學習算法,簡單的就是好的,不過其簡單的評判標准也是不確定的。另外從數學的角度來講,任何兩個機器學習算法,嚴格數學推導其最終的期望性能是相同的,相當於說任何算法的性能其實質是相同的,但是它也是建立在數學概率的期望上,對於特定情況下的特定問題,其實質是個性問題,所以即使不同的算法其期望性能雖然相同,但是解決不同問題的適合性卻隨着問題的特殊性有所不同。因此對於同一個問題,利用不同的算法進行訓練、建模和測試對比是非常必要的。
5、機器學習基礎入門的IDE環境搭建:
(1)Anaconda,下載網址:www.anaconda.com
(2)Pycharm,下載網址:http://www.jetbrains.com