AI產品之路:機器學習(二)
關于機器學習,你了解多少呢?
上篇文章里,主要分享了關于機器學習、深度學習的基本概念和他們之間的區別,最后介紹了有監督學習方式中的回歸。其實我在最后留下一點小問題,那就是如果數據不是線性關系的話,怎么回歸?這篇文章就會回答這個問題,主要分享監督學習和非監督學習中的三大類:
- 監督學習方式下,回歸中的“非線性回歸”
- 監督學習方式下的“分類”
- 非監督學習方式的“聚類”
- 關于機器學習的復盤
1.非線性回歸
直逼主題,上篇我們假定的數據都是線性的,那么最后當然可以回歸出y=wx+b這樣的線性方程,可我們最終是想通過機器學習解決現實問題,而現實中的很多數據不可能單單是線性關系,如果強行使用,那么算法模型只能是欠擬合,誤差非常大。
這里我們就著重說一下,回歸中的非線性回歸,而其中應用最多的就是“邏輯回歸”。
先上公式:
看到這個公式先別慌,其中你們注意(wx+b)是我們上篇已經熟悉的線性回歸方程,把它想象成一個整體,帶入到這個新公式中,代表著什么呢?下面我們看這個公式的函數圖
可以看到,在x可以?。?無窮小,+無窮大)的區間里,整個y值是的區間只能是【0,1】之間。具體的數學函數轉換如果搞不明白完全沒關系,只需要回憶一下上一篇中“線性回歸”的思想,通過找到損失函數Loss最小的對應wx+b中對應的w與b的值。而這個邏輯回歸函數的作用,在僅僅是把x多映射一次,即讓輸出的y值恒定落在【0,1】這個區間而已,其回歸思想的本質并沒有改變。
那么為什么要加入這個函數呢?其實是方便做概率判斷:
因為這個函數會讓x無論輸入的是什么,最終輸出的y肯定是0-1之間的值,那么越接近1,我們可以認為越接近“1”代表的特征,越接近0,我們認為越接近“0”代表的特征。而“0”與“1”具體要賦予什么意義,就看我們到底想通過機器學習去識別什么了。
2.監督學習–“分類”
先感性談談“分類”這個概念。就是我們希望有一臺機器,可以幫助我們進行圖像的分類識別。比如我這里有一堆混雜著“魚”、“狗”和“貓”的圖片,光靠人力完成是非常困難的,我想通把這些大量的數據輸入給計算機,它很快就能完成而不需要耗費我很長時間去一個一個挑選。但我們知道計算機天生不具備這樣的功能,就可以通過機器學習中的“分類”去完成。有了前面“回歸”機器學習的思想基礎,這個應該很好理解了。
即我會找到大量的“魚”“貓”和“狗”的圖片,每種都對應好標簽比如“1”“2”“3”。這時候我們拿這些數據去訓練分類器。分類器的訓練過程和線性回歸基本很相似:
- 建立映射關系的假說即 ?y=wx+b
- 找到全局損失函數Loss與我們想要求解的w與b的映射關系方程
- 找到Loss符合誤差范圍的w與b (訓練過程結束)
- 拿著訓練好的模型去用驗證集驗證
3.非監督學習–“聚類”
前面我們介紹的線性回歸、非線性回歸和分類,都屬于“監督學習方式”,要在訓練數據之前進行標記,這樣的數據模型才可以被訓練。但數據量很大的時候,人工標注起來是非常困難的。
先回憶一下非監督學習的定義:?獲得訓練的向量數據后沒有標簽的情況下,嘗試找出其內部蘊含的一種關系的挖掘工作。而聚類,在感性的認知就是把特征形態相同或相近的聚合到一個概念類別下,把特征形態不同的分開。
聚類核心思想:通過對數據進行特征抽象和提取,轉換為空間中的向量,通過計算每個“向量”的距離,從遠近的角度去判定是否從屬一個類別。其本質就是把現實世界中的特征,轉化為數學的空間向量,這樣我們就把現實的特征問題,轉化成了一個可能通過數學方式解決的“向量計算問題”。當然在具體計算的時候還涉及到“特征提取及轉換”的步驟(這也是深度學習的重要內容)
舉個例子我這里有幾個概念,“卡車”、“汽車”、“飛機”和“人”,他們每個都可以用空間中的向量去表示,那么“卡車”與“汽車”的距離就應該是最近的,其次是“飛機”,因為他們都屬于“交通工具”這個大類,“汽車”與“人”代表的向量應該是空間中距離最遠的,這樣就是實現了現實世界概念特征的聚類。
4.機器學習的復盤
到這里已經把機器學習中最重要的概念和原理大體講了一遍。其實發現并沒有特別難的樣子,主要在于理解機器學習的思想與基本原理。
其實機器學習(深度學習)都是手段,我們的目的是讓計算機可以對現實物理世界比如圖像、聲音、視頻等進行分類、識別甚至一定程度的理解和反饋??捎嬎銠C并不能像人類一樣可以進行抽象思考,而機器學習的本質,就是把這些物理世界的特征進行數學化,轉換成計算機可以聽懂的語言,這樣它就可以對這些“數學化的物理特征”進行計算了,只不過在我們看來,它好像是通過像人一樣學習和思考似的。
對于如何判定機器學習的結果,其本質也是轉換成數學中的誤差問題進行求解,找到符合我們要求的誤差,即認為機器學習完成。
最后我們記住一個公式: y=wx+b,看似簡單的公式,后面在神經網絡和深度學習中會經常用到,而且無論是學習方式的轉換,還是神經網絡結構的變換,其最終目的,簡單理解的話都可以認為是建立損失函數Loss與w和b的一個映射關系,找到Loss符合我們要求的對應的w和b。(當然怎么找,這就非常復雜了,我也在學習中)
機器學習的部分就分享到這里,下一篇會更新有關“神經元和神經網絡”的知識,這是了解深度學習的基石。
相關閱讀
本文由 @?Free 原創發布于人人都是產品經理。未經許可,禁止轉載。
題圖來自PEXELS,基于CC0協議
監督學習–“分類”這個模塊標注,并非是給不同圖標注1、2、3。而是標注上圖片里的生物特征,幾個爪子什么顏色眼睛之類的。
非監督學習–“聚類”這個模塊由于數據量大需要用非監督學習,是對一個品類(如貓這個品類)需要標注的字端及其復雜,人工識別標注幾張圖就要非常非常久。
樓主看下,我理解的對么 ??
兩篇文章仔細看下來,說不清楚具體學到了什么。但總算對機器學習有個大致了解,希望以后能成為AI產品經理一員。多謝分享~