机器学习几种训练方式
機器學習通常包括監督學習、非監督學習、半監督學習和強化學習四種訓練方式。
1、自監督學習(Self-supervised Learning)
監督學習是使用已知正確的答案的示例來訓練網絡。由于網絡在學習的過程中不僅有訓練數據,還有訓練結果(標簽),因此訓練的效果通常不錯。
學習技術:分類(classification)和回歸(regression)
2、無監督學習(Unsupervised Learning)
無監督學習是指只給網絡訓練數據,不給標簽,因此網絡無法準確知道哪些數據具有哪些標簽,只能憑借強大的計算能力分析數據的特征,從而得到一定的成果,通常是得到一些集合,集合內的數據在某些特征上相同或相似。
學習技術:自編碼(Autoencoding)、主成分分析(Principal components analysis, PCA)、隨機森林(Random forests)和K均值聚類(K-means clustering)
3、半監督學習(Semi-supervised Learning)
半監督學習在訓練階段結合了大量的未標記的數據和少量有標簽的數據。其基本規律是:數據的分布必然不是完全隨機的,通過一些有標簽數據的局部特征,以及更多的沒標簽數據的整體分布,就可以得到可以接受甚至是非常好的分類結果。
4、強化學習(Reinforcement Learning)
強化學習本質是解決決策(decision making)問題,即自動進行決策,并且可以做連續決策。
它主要包含四個元素:代理(Agent)、環境狀態(Environment)、行動(Action)、獎勵(reward),強化學習的目標就是獲得最多的累計獎勵。
具體流程:Agent觀察Environment,做出Action,這個Action會對Environment造成一定影響和改變,繼而Agent會從新的環境中獲得Reward。循環上述步驟。Agent學習的目標就是使得期望的回報(reward)最大化。
難點:Reward是比較難以獲得的,而Agent就是依靠Reward來進行學習,進行自身策略的調整。
注:State指的是Agent觀察到的Environment的狀態,不是指machine本身的狀態。
舉例:機器人把水杯打翻了,人類說“不能這么做”,機器人獲得人類的這個負向反饋,然后機器人觀察到水杯打翻的狀態,采取了拖地的行為,獲得了人類“謝謝”的正向反饋。
5、區別
強化學習和監督學習的區別:
監督學術好比在你學習的時候,有一個導師在旁邊指點,他知道怎么做是對的,怎么做事錯的。但是在實際問題中,不可能有一個導師知道所有可能的結果。
強化學習會在沒有任何標簽的情況下,通過先嘗試做出一些行為得到一個結果,通過這個結果是對還是錯的反饋,調整之前的行為,這樣不斷地調整,算法能夠學習到在什么情況下選擇什么樣的行為可以得到最好的結果。
-
兩種學習方式都會學習出輸入到輸出的一個映射,監督學習得到是之間的關系,可以告訴算法什么樣的輸入對應著什么樣的輸出;強化學習得到的是給機器的 反饋(reward function),即用來判斷這個行為的對錯。
-
強化學習面對的輸入總是在變化,每當算法做出一個行為,它影響下一次決策的輸入,而監督學習的輸入是獨立同分布的。
-
探索(exploration)會嘗試很多不同的事情,看他們是否比以前嘗試過得更好;
開發(exploitation)會嘗試過去經驗中最有效的行為。
通過強化學習,一個Agent可以在探索與開發之前作出權衡,并且選擇一個最大的回報;而一般監督學習就只是開發。
強化學習與無監督學習的區別:
無監督學習不是學習輸入到輸出的映射,而是模式。例如在向用戶推薦新聞文章的任務中,無監督學習會找到用戶先前已經閱讀過的類似的文章并向他們推薦其一;而強化學習將通過向用戶先推薦少量的新聞,并不斷獲得來自用戶的反饋,最后構建用戶可能會喜歡的文章的“知識圖”。
總結
以上是生活随笔為你收集整理的机器学习几种训练方式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Value function appro
- 下一篇: SHARD_ROW_ID_BITS