1. 程式人生 > >機器學習100天---day06 NMF非負矩陣分解

機器學習100天---day06 NMF非負矩陣分解

NMF,非負矩陣分解。這種方法只能應用於每個特徵都是非負的資料。 基本思想:將大矩陣分解成兩個小矩陣,使兩個小矩陣相乘後能夠儘可能的還原成大矩陣。 公式為:Vn∗m=Wn∗k∗Hk∗m W矩陣:基礎資料矩陣,相當於從V中抽取出K個特徵,每一列表示一個特徵,每行表示一個物件(比如:使用者,影象畫素);它們的值表示使用者與這一特徵的相關性; H矩陣:係數矩陣,表示係數m與特徵k之間的關聯。 矩陣優化目標:Vn∗m與Wn∗k∗Hk∗m之間的差值儘可能的小 則目標函式:Z2 = |Vn∗m - (Wn∗k∗Hk∗m)|2 損失函式:argminJ(W,H)=∑ij(XijlnXijWHij−Xij+WHij) 可計算W矩陣和H矩陣點積與W矩陣之間的差值,通過不斷迭代,逐漸減少誤差直至收斂。 可通過梯度下降法,找出梯度變化最快的方向,逐步更新矩陣W、H

NMFsklearn實現未完待續…