1.概要
FFM全称为:field-aware factorization machines,相比于FM模型,FFM引入了field的概念,特征可以被归类到field中。文章中举了一个例子,ESPN、Vogue和NBC同属于field出版商,Nike、Gucci和Adidas属于field 广告商,FFM可以利用这些信息,以下面的例子作进一步说明
在FM模型中,FM的信息包含:
w
E
S
P
N
∗
w
N
i
k
e
+
w
E
S
P
N
∗
w
M
a
l
e
+
w
N
i
k
e
∗
w
M
a
l
e
w_{ESPN}*w_{Nike}+w_{ESPN}*w_{Male}+w_{Nike}*w_{Male}
wESPN∗wNike+wESPN∗wMale+wNike∗wMale,ESPN会和Nike与Male的权重进行计算,但Nike和Male属于不同的field,所以它们的潜在影响可能会不同
FFM加入field的概念,
w
E
S
P
N
,
A
∗
w
N
i
k
e
,
P
+
w
E
S
P
N
,
G
∗
w
M
a
l
e
,
P
+
w
N
i
k
e
,
G
∗
w
M
a
l
e
,
A
w_{ESPN, A}*w_{Nike,P}+w_{ESPN,G}*w_{Male,P}+w_{Nike,G}*w_{Male,A}
wESPN,A∗wNike,P+wESPN,G∗wMale,P+wNike,G∗wMale,A,可以更形式化表示为:
这里j1,j2对应的是特征,f1是j1对应的field,
2.目标函数与优化
FFM的目标函数是:
首先根据FFM的表达式计算出
k
k
k的值:
再计算出下面的式子:
算法流程图:
(7)与(8)式