。
[0180] 作為一種可選實(shí)施例,根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)獲取更新的隱變量的 變分分布,包括:
[0181] 根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式迭代更新行隱變量的變分分 布啦),
[0182]
,直至t3等于時(shí),
[0183] 根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式迭代更新列隱變量的變分分 布 #);)":
[0184]
,直至t4等于T2時(shí),
[0185] 交替更新
,直至達(dá)到預(yù)設(shè)終止條件時(shí),
交替更新
,直至達(dá)到預(yù)設(shè)終止條件時(shí),
為更新的行隱變量的變分分布,為更新的列隱變量的變分分布;
[0186] 根據(jù)更新的隱變量的變分分布獲取更新的模型參數(shù),包括:
[0187] 根據(jù)更新的隱變量的變分分布按照如下公式獲取模型參數(shù)
[0189] 根據(jù)更新的隱變量的變分分布以及從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公 式迭代更新模型參數(shù)uif1:
[0190]
和為更新的模型參數(shù);
[0191] 其中,
[0194]h代表當(dāng)前獲取更新的隱變量的變分分布及更新的模型參數(shù),t:t2代表當(dāng)前交替 更新行隱變量的變分分布及列隱變量的變分分布,t:t2t3代表當(dāng)前迭代更新行隱變量的變 分分布,t:t2t4代表當(dāng)前迭代更新列隱變量的變分分布,t:t5代表當(dāng)前迭代更新模型參數(shù), h-1代表上一次獲取更新的隱變量的變分分布及更新的模型參數(shù)或初始化隱變量的變分 分布及模型參數(shù),代表上一次交替更新行隱變量的變分分布及列隱變量的變分分布 或初始化行隱變量的變分分布及列隱變量的變分分布,tit2t3-l代表上一次迭代更新行隱 變量的變分分布或初始化行隱變量的變分分布,tit2t4-l代表上一次迭代更新列隱變量的 變分分布或初始化列隱變量的變分分布,代表上一次迭代更新模型參數(shù)或初始化模 型參數(shù)。
[0195] 作為一種可選實(shí)施例,根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)獲取更新的模型參 數(shù),包括:
[0196] 根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式獲取模型參數(shù)1和
[0198] 根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式迭代更新模型參數(shù)wf:
[0199]
和 < > 為更新的模型參數(shù);
[0200] 根據(jù)更新的模型參數(shù)獲取更新的隱變量的變分分布,包括:
[0201] 根據(jù)更新的模型參數(shù)以及從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式迭代更 新行隱變量的變分分布yzf廣-:
[0202]
,直至t3等于T/時(shí),
[0203] 根據(jù)更新的模型參數(shù)以及從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)按照如下公式迭代更 新列隱變量的變分分布g(Z;;f…:
[0204]
,直至t4等于T2'時(shí),
[0205] 交替更新
直至達(dá)到預(yù)設(shè)終止條件時(shí),
為更新的行隱變量的變分分布, '為更新的列隱變量的變分分布;
[0206] 其中,
[0209]t/代表當(dāng)前獲取更新的隱變量的變分分布及更新的模型參數(shù),2代表當(dāng)前交 替更新行隱變量的變分分布及列隱變量的變分分布,3代表當(dāng)前迭代更新行隱變量的 變分分布,4代表當(dāng)前迭代更新列隱變量的變分分布, 5代表當(dāng)前迭代更新模型參 數(shù),t/_l代表上一次獲取更新的隱變量的變分分布及更新的模型參數(shù)或初始化隱變量的 變分分布及模型參數(shù),f2_1代表上一次交替更新行隱變量的變分分布及列隱變量的變分 分布或初始化行隱變量的變分分布及列隱變量的變分分布, 3_1代表上一次迭代更新 行隱變量的變分分布或初始化行隱變量的變分分布,代表上一次迭代更新列隱變 量的變分分布或初始化列隱變量的變分分布,f5_1代表上一次迭代更新模型參數(shù)或初始 化模型參數(shù)。
[0210] 作為一種可選實(shí)施例,根據(jù)更新的隱變量的變分分布及更新的模型參數(shù)確定目標(biāo) 函數(shù)是否收斂,包括:
[0211] 比較根據(jù)更新的隱變量的變分分布及更新的模型參數(shù)確定的目標(biāo)函數(shù)與上一次 得到的目標(biāo)函數(shù)之間的距離是否小于閾值,上一次得到的目標(biāo)函數(shù)根據(jù)上一次更新的隱變 量的變分分布及更新的模型參數(shù)確定;
[0212] 如果根據(jù)更新的隱變量的變分分布及更新的模型參數(shù)確定的目標(biāo)函數(shù)與上一次 得到的目標(biāo)函數(shù)之間的距離小于閾值,則確定目標(biāo)函數(shù)收斂。
[0213] 本發(fā)明實(shí)施例提供的方法,通過(guò)根據(jù)對(duì)數(shù)似然、正則項(xiàng)及各個(gè)隱變量的變分分布 的對(duì)數(shù)確定目標(biāo)函數(shù)后,根據(jù)使目標(biāo)函數(shù)收斂的隱變量的變分分布及模型參數(shù)確定關(guān)系模 型,提高了關(guān)系模型的確定效率和精度,由于采用了正則項(xiàng),因而可以對(duì)模型的復(fù)雜度進(jìn)行 自動(dòng)控制,提高模型的確定效率。
[0214] 實(shí)施例二
[0215] 本發(fā)明實(shí)施例提供了一種關(guān)系模型的確定方法,結(jié)合上述實(shí)施例一的內(nèi)容,對(duì)本 發(fā)明實(shí)施例提供的方法進(jìn)行詳細(xì)地解釋說(shuō)明,參見(jiàn)圖2,方法流程包括:
[0216] 201 :獲取根據(jù)樣本數(shù)據(jù)、至少兩個(gè)隱變量及模型參數(shù)確定的對(duì)數(shù)似然、正則項(xiàng)及 各個(gè)隱變量的變分分布的對(duì)數(shù),每個(gè)隱變量用于說(shuō)明樣本數(shù)據(jù)擁有的特征;
[0217] 關(guān)于樣本數(shù)據(jù)的內(nèi)容及維度,本實(shí)施例不作具體限定。具體實(shí)施時(shí),樣本數(shù)據(jù)可以 為多個(gè)用戶對(duì)多個(gè)電影的評(píng)分,則樣本數(shù)據(jù)的維度可以為2,即從用戶和電影這兩個(gè)維度對(duì) 評(píng)分進(jìn)行統(tǒng)計(jì)。當(dāng)然,樣本數(shù)據(jù)除了上述內(nèi)容及維度外,還可以為其他內(nèi)容及維度。另外, 樣本數(shù)據(jù)可以為二進(jìn)制數(shù)據(jù)、自然數(shù)及實(shí)數(shù)等,本實(shí)施例對(duì)此不作具體限定。
[0218] 為了便于理解,以如下所示的樣本數(shù)據(jù)為例進(jìn)行說(shuō)明。該樣本數(shù)據(jù)以5*5矩陣的 形式表示,矩陣的行表示用戶1至用戶5,矩陣的列表示電影1至電影5,矩陣中的任一元素 Xu表示用戶i對(duì)電影j的評(píng)分;其中1彡i彡5,1彡j彡5,i和j均為整數(shù)。
[0220] 每個(gè)隱變量用于說(shuō)明樣本數(shù)據(jù)擁有的特征,根據(jù)樣本數(shù)據(jù)擁有的特征確定關(guān)系模 型,從而對(duì)樣本數(shù)據(jù)進(jìn)行聚類。為了便于理解,以樣本數(shù)據(jù)xn和x12都擁有特征A,樣本數(shù) 據(jù)xn同時(shí)還擁有特征B,樣本數(shù)據(jù)x13擁有特征B為例進(jìn)行說(shuō)明。根據(jù)樣本數(shù)據(jù)擁有的特 征確定樣本數(shù)據(jù)xn和x12屬于特征A對(duì)應(yīng)的類別A',確定樣本數(shù)據(jù)xn和x13屬于特征B對(duì) 應(yīng)的類別B',從而實(shí)現(xiàn)對(duì)樣本數(shù)據(jù)xn、x12及x13進(jìn)行聚類。
[0221] 模型參數(shù)的集合包括但不限于行混合比率、列混合比率及模型參數(shù)等,本實(shí)施例 不對(duì)模型參數(shù)的集合的具體內(nèi)容進(jìn)行限定。以矩陣式的樣本數(shù)據(jù)為例,行混合比率為確定 的關(guān)系模型的每個(gè)特征內(nèi)矩陣的行數(shù)占確定的關(guān)系模型中矩陣的總行數(shù)的比例,列混合比 率為確定的關(guān)系模型的每個(gè)特征內(nèi)矩陣的列數(shù)占確定的關(guān)系模型中矩陣的總列數(shù)的比例, 模型參數(shù)為關(guān)系模型中的樣本數(shù)據(jù)所服從的分布的參數(shù)。
[0222] 需要說(shuō)明的是,隱變量可以和模型參數(shù)相互獨(dú)立,還可以和模型參數(shù)存在依賴關(guān) 系。由于實(shí)際應(yīng)用中,隱變量和模型參數(shù)存在依賴關(guān)系,為了使確定的關(guān)系模型更加準(zhǔn)確, 本發(fā)明實(shí)施例以隱變量和模型參數(shù)存在依賴關(guān)系為例進(jìn)行說(shuō)明。
[0223] 為了獲取根據(jù)樣本數(shù)據(jù)、至少兩個(gè)隱變量及模型參數(shù)確定的對(duì)數(shù)似然、正則項(xiàng)及 各個(gè)隱變量的變分分布的對(duì)數(shù),本實(shí)施例提供的方法首先引出聯(lián)合概率密度函數(shù):
[0225] 其中,p表示聯(lián)合概率密度函數(shù),??為樣本數(shù)據(jù),隊(duì)為行樣本個(gè)數(shù),N。為列樣本個(gè) 數(shù),ZK為行隱變量,Ze為列隱變量,0為模型參數(shù)的集合,模型參數(shù)包括《、爲(wèi)"a、3 分別為行、列混合比率,-表示模型參數(shù),I是行特征的個(gè)數(shù),K。是列特征的個(gè)數(shù),^表示 第i行、第j列的樣本數(shù)據(jù),Zf為第i個(gè)行樣本數(shù)據(jù)擁有第k個(gè)行特征的行隱變量,為 第j個(gè)列樣本數(shù)據(jù)擁有第1個(gè)列特征的列隱變量,ak表示第k個(gè)行特征的行混合比率,3i表示第1個(gè)列特征的列混合比率,Zf表示ZK的第i行,Z丨表示Ze的第j行。
[0226] 上述聯(lián)合概率密度函數(shù)確定了關(guān)系模型的概率密度分布,確定聯(lián)合概率密度函數(shù) 中模型參數(shù)a、爲(wèi)-及隱變量ZK、Ze即可確定關(guān)系模型的概率密度分布,從而確定關(guān)系模 型。為使聯(lián)合概率密度函數(shù)可解,對(duì)聯(lián)合密度分布的等式兩邊分別取對(duì)數(shù),得到對(duì)數(shù)似然 為:
[0228] 作為一種可選實(shí)施例,根據(jù)樣本數(shù)據(jù)、至少兩個(gè)隱變量及模型參數(shù)確定的對(duì)數(shù)似 然為:
[0230] 其中,logp〇表示對(duì)數(shù)似然,p表示聯(lián)合概率密度函數(shù),為樣本數(shù)據(jù),N,為行 樣本個(gè)數(shù),N。為列樣本個(gè)數(shù),ZK為行隱變量,Ze為列隱變量,0為模型參數(shù)的集合,模型參 數(shù)包括a、爲(wèi)-,a、0分別為行、列混合比率,f表示模型參數(shù)。
[0231] 具體地,當(dāng)樣本數(shù)據(jù),^用矩陣的形式表示時(shí),N,為矩陣的行樣本個(gè)數(shù),N。為矩陣 的列樣本個(gè)數(shù),&為行特征個(gè)數(shù),K。為列特征個(gè)數(shù);ZK是隊(duì)的分塊變量矩陣;ZK的每一 個(gè)元素Zfe作,當(dāng)Zf=l時(shí),表示第i個(gè)行樣本數(shù)據(jù)擁有屬于第k個(gè)行特征的行隱變量; Ze是Ne*K。的分塊變量矩陣;Ze的每一個(gè)元素,當(dāng)4=1時(shí),表示第j個(gè)列樣本數(shù)據(jù) 擁有第1個(gè)列特征的列隱變量。由于同一樣本數(shù)據(jù)可能同時(shí)擁有多個(gè)特征,則行隱變量的 一行元素中可能有多個(gè)元素的取值為1,列隱變量的一行元素中可能有多個(gè)元素的取值為 1。行混合比率a表示關(guān)系模型中每個(gè)行特征內(nèi)的行數(shù)占樣本數(shù)據(jù)矩陣總行數(shù)的比例,列 混合比率0表示關(guān)系模型中每個(gè)列特征的列數(shù)占樣本數(shù)據(jù)矩陣總列數(shù)的比例,模型參數(shù)爐 表示關(guān)系模型中的樣本數(shù)據(jù)所服從的分布的參數(shù)。例如,樣本數(shù)據(jù)服從高斯分布,則表示 高斯分布的期望U和方差S;又例如,樣本數(shù)據(jù)服從泊松分布,則P表示泊松分布的期望 和方差X。需要說(shuō)明的是,除了上述分布外,樣本數(shù)據(jù)還可以服從其他分布,本實(shí)施例對(duì)此 不作具體限定。
[0232] 作為一種可選實(shí)施例,根據(jù)樣本數(shù)據(jù)、至少兩個(gè)隱變量及模型參數(shù)確定的正則項(xiàng) 為:
[0234] 其中,隊(duì)為行樣本個(gè)數(shù),N。為列樣本個(gè)數(shù)屯是行特征的個(gè)數(shù),K。是列特征的個(gè)數(shù); #(》為隱變量的變分分布的近似值,zf為第i個(gè)行樣本數(shù)據(jù)擁有第k個(gè)行特征的行隱變 量,〇為第j個(gè)列樣本數(shù)據(jù)擁有第1個(gè)列特征的列隱變量;a,@分別為行、列混合比率, -表示模型參數(shù),Da為a的維度,De為0的維度,仏為-的維度,L(a,b)=logb+(a-b)/ b,a為
> 因此,正則項(xiàng)可以展開(kāi)為:
[0236] 具體地,當(dāng)心表示分塊變量矩陣ZK的行特征個(gè)數(shù)時(shí),Da=D(a)=&-l;當(dāng)K。表 示分塊變量矩陣Ze的列特征個(gè)數(shù)時(shí),De=D(P)=Ke_l;當(dāng)樣本數(shù)據(jù)服從高斯分布時(shí),由于 高斯分布的期望和方差分別為U和S,即高斯分布有兩個(gè)參數(shù),巧=D(的=2;當(dāng)樣本 數(shù)據(jù)服從泊松分布時(shí),由于泊松分布的期望和方差均為X,即泊松分布有一個(gè)參數(shù)入, 參== 1 ?
[0237] 另外,本實(shí)施例不對(duì)隱變量的變分分布的近似值f()進(jìn)行具體限定,包括但不限 于取上一次更新或初始化獲取到的更新的隱變量的變分分布的取值。為了便于理解,本實(shí) 施例以上一次更新或初始化獲取到的更新的隱變量的變分分布的取值代表隱變量的變分 分布的近似值以)為例進(jìn)行說(shuō)明。當(dāng)首次確定正則項(xiàng)時(shí),隱變量的變分分布的近似值可取 初始化獲取到的更新的隱變量的變分分布的取值;當(dāng)非首次確定正則項(xiàng)時(shí),隱變量的變分 分布的近似值可取上一次更新獲取到的更新的隱變量的變分分布的取值。
[0238] 需要說(shuō)明的是,通過(guò)確定正則項(xiàng),使得確定的關(guān)系模型的復(fù)雜度可以獲得自動(dòng)的 控制,提_ 了關(guān)系t吳型的確定效率。
[0239] 作為一種可選實(shí)施例,根據(jù)樣本數(shù)據(jù)、至少兩個(gè)隱變量及模型參數(shù)確定的隱變量 的變分分布的對(duì)數(shù)為:
[0240] logq(ZK)和logq(Zc);
[0241] 其中,q(ZK)為行隱變量ZK的變分分布,q(Ze)為列隱變量Ze的變分分布。
[0242] 具體地,行隱變量ZK的變分分布可以表示為:
[0244] 列隱變量Ze的變分分布可以表示為:
[0246] 202 :根據(jù)對(duì)數(shù)似然、正則項(xiàng)及各個(gè)隱變量的變分分布的對(duì)數(shù)確定目標(biāo)函數(shù);
[0247] 上述步驟201中對(duì)數(shù)似然以因式分解的形式表示,為使對(duì)數(shù)似然可解,對(duì)每一 個(gè)因子使用拉普拉斯近似,得到對(duì)數(shù)似然的緊致下界,即FIC(FactorizedInformation Criterion,分解信息準(zhǔn)則)為:
[0250]及為FIC取最大值時(shí),0的取值。
[0251] 進(jìn)一步地,由于FIC中包括樣本數(shù)據(jù)和隱變量ZK、Ze,通常情況下需要通過(guò)EM (ExpectationMaximization,期望最大化)算法求解,但由于以非獨(dú)立的隱變量進(jìn)行關(guān)系 模型的確定,使得傳統(tǒng)的EM算法無(wú)法應(yīng)用于FIC的求解。為了使FIC可解,本實(shí)施例采取 了對(duì)FIC進(jìn)行縮放的方式,得到FIC的漸進(jìn)一致下界為:
[0254]函數(shù)L(a,b) =logb+(a_b)/b。
[0255] 作為一種可選實(shí)施例,根據(jù)對(duì)數(shù)似然的期望值、正則項(xiàng)的期望值及各個(gè)隱變量的 變分分布的對(duì)數(shù)的期望值確定的目標(biāo)函數(shù)1為:
[0257] 進(jìn)一步地,通過(guò)上述步驟即完成了目標(biāo)函數(shù)的確定,為了通過(guò)目標(biāo)函數(shù)確定關(guān)系 模型,本實(shí)施例提供的方法還包括后續(xù)步驟。
[0258] 203 :獲取更新的隱變量的變分分布及更新的模型參數(shù);
[0259] 以樣本數(shù)據(jù)是二進(jìn)制數(shù)據(jù)為例進(jìn)行說(shuō)明,設(shè)
,即 樣本數(shù)據(jù)服從伯努利分布;其中,Zf表示zK的第i行,< 表示Ze的第j行,伯努利分布 的參數(shù)為W,f。(x)為sigmoid函數(shù),f。(x)=l/(l+e^)。進(jìn)而/H%I#義,於)可改寫為:
[0260] 作為一種可選實(shí)施例,獲取更新的隱變量的變分分布及更新的模型參數(shù),包括但 不限于:
[0261] 根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)獲取更新的隱變量的變分分布,并根據(jù)更新 的隱變量的變分分布獲取更新的模型參數(shù)。
[0262] 作為一種可選實(shí)施例,根據(jù)更新的隱變量的變分分布獲取更新的模型參數(shù)之前, 還包括但不限于:
[0263] 確定更新的隱變量的變分分布是否收斂,如果更新的隱變量的變分分布未收斂, 則重新根據(jù)從樣本數(shù)據(jù)中抽取的子樣本數(shù)據(jù)獲取更新的隱變量的變分分布,直至得到收斂 的更新的隱變量的變分分布;
[0264] 根據(jù)更新的隱變量的變分分布獲取更新的模型參數(shù),包括:
[026