機器學習和深度網路新的收穫

2021-08-16 08:46:05 字數 2470 閱讀 6318

獨熱編碼(

one-hot code

):只有乙個位元為

1其它全為

0的一種碼制,本質是對離散性分類進行資料化。

距離0-9

的數字進行獨熱編碼,

5的編碼為:

0000010000

作用就是來處理非連續型數值特性,例如性別

[男、女、其它

]可以獨熱成

[100,010,001]

;也可以計算之間的歐氏距離(推薦演算法等用來求相似度);方便特徵組合。

過於稀疏的向量也會帶來新的問題:資料量龐大、計算量溢位。

奧卡姆剃刀定律:

切勿浪費較多東西去做用較少的東西同樣可以做好的事情

翻譯到ml

領域就是:只要能搞定,模型越簡單越好

由奧卡姆剃刀定律給我們的靈感,將模型的複雜度帶入

cost function

中,這種原則就是正則化。也就是說訓練的優化過程不僅要考慮到「**與實際值之間的損失項」,還要考慮到「模型的複雜度」,其中後者是以係數λ的形式參與進來的。

l2正則化:權重的平方和。

越大的w

對模型的影響越大,越小的

w對模型的影響微乎其微,所以我們盡量想給小權重更多的機會,打壓大權重。

引入l2

正則化後的

cost function

如下:

λ過大,使訓練集資料失去意義,會出現欠擬合;λ過小,使剃刀失去意義,變成了乙個普通的損失函式,會出現對訓練集的過擬合。

講到了l2就不得不說下l1,l1是w的絕對值求和,所以對l2求導後是2|w|,而l1求導後是常量。所以引入λ後l2是成比例的下降,但是永遠是趨於0但不會降到0;而l1是按常數下降,最終會降為0。所以使用l2是為了解決過擬合,使用l1是為了將高度稀疏的向量中將部分權重降為0從而從模型中移除,減少計算開銷,也能減少模型中的噪點。

分類不平衡資料集:

如果某資料集90%的結果為1,10%的結果為0,那麼我只要一股腦的全都**1我的準確率也有90%,但是這明顯是不科學的。所以對於這種分類不平衡的資料集需要引入其它引數來體現**的好壞。

準確率:**正確的概率,這個很好理解。

精準率:**為真時的正確率。**10次真,有3次是真的真,有7次是假的,那麼精確率是30%。

召回率:真正是真被識別出來的概率。假如有10個真,我們**了4個真6個假,那麼召回率是40%。

召回率和精準率是一對矛盾的,此消彼長,他們矛盾的地方就是對模稜兩可的資料要**成1還是0呢?如果**的激進一點,很容易將不是1的**成1,那麼精確率就會下降。如果**的保守一點,很容易將原本是1的**稱0,造成召回率下降。

roc曲線下的面積被稱為auc,auc越大模型的判斷越好。

softmax:

softmax雖然可以配合對數可以解決深層網路的梯度消失問題,但是應用場景有限制:

如果要被**的結果在業務場景上允許同時出現多個結果則不能使用softmax。

我現在掌握的推薦系統有2個大方向,3個小方向的。

大方向是,一種是基於協同過濾的;一種是基於內容的。其中基於協同過濾又可以拆分成基於使用者和基於物品的。

假如我們現在要做乙個餐館推薦系統,我們現在有上海市所有的餐館和使用者消費記錄,如果有m個餐館n個使用者,我們可以構造乙個n*m的矩陣集,只不過不可能每個人都吃過所有的餐館,所以這個矩陣比較稀疏。

基於使用者的協同過濾:每個使用者去過的餐館為一條記錄,找到與這個使用者消費的餐館比較相似的使用者群,然後從這批使用者群中找到該使用者還沒有吃過哪些餐館。

基於餐館的協同過濾:每個餐館來過的客人為一條記錄,找到來與這個餐館消費客戶群相似的餐館,然後這些相似的餐館中該客戶哪個還沒去過就推薦哪個。

基於內容來推薦:就是把所有餐館的菜品分門別類,北京烤鴨、魚香茄子、九轉大腸、東北拉皮等等,我們來給使用者推薦包含他喜歡吃的菜的餐館。但是基於內容的並不適用於全部場景,例如、音訊等無法來篩檢裡面的內容。

以上所有實現方式都涉及到求相似度的問題,需要用到歐氏距離、皮爾遜、余弦相似度等演算法。

歐氏距離相似度:

相似度=1/(1+歐氏距離)

皮爾遜相似度:

余弦相似度:

神經網路:

我以前接觸到的網路都是標準的一層層的,從這一層到下一層,最近接觸到新的神經元更像是樹狀的,不同的小網路組織成乙個大網路,如下:

標籤洩露:

將乙個最終結果label作為了特徵feature,使這個feature完全主導最終的結果,被稱為標籤洩露。

機器學習,深度學習,神經網路,深度神經網路

先來說一下這幾者之間的關係 人工智慧包含機器學習,機器學習包含深度學習 是其中比較重要的分支 深度學習源自於人工神經網路的研究,但是並不完全等於傳統神經網路。所以深度學習可以說是在傳統神經網路基礎上的公升級。神經網路一般有輸入層 隱藏層 輸出層,一般來說隱藏層大於2的神經網路就叫做深度神經網路,深度...

談談深度學習和機器學習

嚴格意義上講,深度學習屬於機器學習,所以這裡的機器學習嚴格意義上說,應該叫傳統意義的機器學習 基於概率統計的機器學習。在我讀研的時候,已經判斷機器學習會在後幾年火熱起來,但是,由於alphago的 攪局 這一時間點提前了,著實讓我有些狼狽的追趕,但是好歹也算是找到了機器學習的工作,雖然其中有一些彎路...

傳統機器學習和深度學習

托馬斯 貝葉斯 thomas bayes 同學的詳細生平在這裡。以下摘一段 wikipedia 上的簡介 所謂的貝葉斯方法源於他生前為解決乙個 逆概 問題寫的一篇文章,而這篇文章是在他死後才由他的一位朋友發表出來的。在貝葉斯寫這篇文章之前,人們已經能夠計算 正向概率 如 假設袋子裡面有n個白球,m個...