在《深入ffm原理與實踐》中提到:「所有二次項引數 wij
w_wi
j可以組成乙個對稱陣 w
ww,那麼這個矩陣就可以分解為w=v
tv
w=v^tv
w=vtv,v
vv 的第 j
jj 列便是第 j
jj 維特徵的隱向量。換句話說,每個引數 wij
=⟨vi
,vj⟩
w_=\left \langle v_i,v_j \right \rangle
wij=⟨
vi,
vj⟩
,這就是fm的核心思想。」
在poly2模型中等式為:y^(
x)=w
0+∑i
=1nw
ixi+
∑i=1
n∑j=
i+1n
wi,j
xixj
\hat(x)=w_0+\sum_^nw_ix_i+\sum_^n^nx_ix_j}}
y^(x)
=w0
+i=1
∑nw
ixi
+i=
1∑n
j=i+
1∑n
wi,j
xi
xj 在梯度下降時,偏導求解結果如下:
∂ ∂θ
y^(x
)=
\hat(x)=\begin 1 & \\ x_i & \\ x_iy_i &}\\ \end
∂θ∂y^
(x)
=⎩⎪⎨
⎪⎧1
xix
iyi
if
θisw
0if
θisw
iif
θisw
ij
而在fm模型中等式為:y^(
x)=w
0+∑i
=1nw
ixi+
∑i=1
n∑j=
i+1n
⟨vi,
vj⟩x
ix
j\hat(x)=w_0+\sum_^nw_ix_i+\sum_^n^nx_ix_j}}
y^(x)
=w0
+i=1
∑nw
ixi
+i=
1∑n
j=i+
1∑n
⟨vi
,vj
⟩xi
xj 偏導結果為:
∂ ∂θ
y^(x
)=
\hat(x)=\begin 1 & \\ x_i & \\ x_i\sum_^nv_x_j-v_x_i^2 &}\\ \end
∂θ∂y^
(x)
=⎩⎪⎨
⎪⎧1
xix
i∑j
=1n
vj,f
xj
−vi,
fxi
2i
fθis
w0i
fθis
wii
fθis
vi,f
於是便會發現在poly2模型中,如果訓練資料過於稀疏,導致 xiy
i=
0x_iy_i=0
xiyi
=0的情況大量出現,那麼在求解的時候 wij
w_wi
j也會大量出現0,也就是雖然引進兩兩組合的特徵,但是訓練效果不好;但是在fm模型中則不會出現這個問題,fm能夠抓住變數間的相互作用,並且時間複雜度為o(k
n)
o(kn)
o(kn)。
SELinux安全模型的核心思想與三種工作模式
什麼是selinux?在核心2.6版本之前linux的安全模型叫dac discretionary access contorl,即自主訪問控制 dac的核心思想 程序想要訪問某資源,只需要擁有該資源對應使用者的許可權 讀 寫 執行 即可以訪問,也就是說程序所擁有的許可權與執行該程序的使用者的許可權...
對遞迴模型的理解
一.遞迴模型 分而治之的思想也就是典型的遞迴思想,遞迴思想的核心就是 遞迴模型 的建立,遞迴模型 就是處理這類問題的乙個 相同的框架,這個框架不僅僅是處理總問題的框架,也是處理組成總問題的子問題的框架,這個框架具有公用性,要適用這種公用性,就可以推斷得出,這類問題的結構就有遞迴性質 從前有座上,山上...
對盒模型的理解
首先這是我第一次寫部落格,請大家多關照。寫的不好的地方請指出來。下面由我來說下我對盒模型的理解。我呢是乙個剛入門三個禮拜的小白,我自認為學前端跟其他的科目是不一樣的。前端是聽得懂,但自己動手時就不會去做。可能這都是小白的必經之路吧。盒模型是網頁布局的基石,盒模型由盒子內容 盒子內填充 盒子本身 盒子...