王素琴,張 洋,蔣 浩,朱登明
(1.華北電力大學(xué) 控制與計(jì)算機(jī)工程學(xué)院,北京 102206; 2.中國(guó)科學(xué)院計(jì)算技術(shù)研究所,北京 100080)
電子商務(wù)和社交媒體網(wǎng)站通常都面臨著嚴(yán)重的信息過(guò)載問(wèn)題,推薦算法是解決該問(wèn)題的有效手段之一。推薦算法一般根據(jù)用戶與網(wǎng)站的交互記錄來(lái)推測(cè)用戶可能喜歡的物品或者友人(以下統(tǒng)稱為物品)。當(dāng)新用戶登錄到系統(tǒng)中時(shí),由于他們沒(méi)有或者只有少量購(gòu)買記錄和瀏覽記錄,推薦系統(tǒng)很難為他們進(jìn)行有效的推薦,該問(wèn)題被稱為新用戶冷啟動(dòng)問(wèn)題[1]。
快速發(fā)展中的電子商務(wù)網(wǎng)站或者社交媒體網(wǎng)站,吸引著大量新用戶的涌入,但由于存在新用戶冷啟動(dòng)問(wèn)題,不能為他們提供充分的有用信息,常常導(dǎo)致新用戶大量流失。
為解決上述問(wèn)題,有研究者提出推薦算法。傳統(tǒng)的推薦算法有協(xié)同過(guò)濾算法[2-3]、基于內(nèi)容的推薦算法[4]以及混合推薦算法[5]等。協(xié)同過(guò)濾算法基于用戶的行為記錄,計(jì)算用戶之間的相似度或者物品之間的相似度并進(jìn)行推薦。但由于新用戶沒(méi)有或者只有少量的行為記錄,導(dǎo)致協(xié)同過(guò)濾算法難以為其進(jìn)行有效推薦。基于內(nèi)容的推薦算法首先提取用戶或者物品的特征,根據(jù)用戶或者物品之間特征的相似度來(lái)進(jìn)行推薦。但新用戶可能沒(méi)有任何特征或者只有少量特征可以提取,因此,基于內(nèi)容的推薦算法也難以取得良好效果。混合推薦算法是指將多種推薦算法有機(jī)地結(jié)合起來(lái)進(jìn)行推薦,但實(shí)際應(yīng)用結(jié)果表明,混合推薦算法也不能很好地解決新用戶冷啟動(dòng)問(wèn)題。
目前,有很多學(xué)者對(duì)新用戶冷啟動(dòng)問(wèn)題進(jìn)行了深入研究,提出了若干解決該問(wèn)題的算法。其中,最簡(jiǎn)單的方法是隨機(jī)推薦,當(dāng)新用戶進(jìn)入系統(tǒng)時(shí),推薦算法在物品庫(kù)中隨機(jī)選擇若干個(gè)物品推薦給用戶,但這種推薦結(jié)果往往無(wú)法令用戶滿意。文獻(xiàn)[6-7]提出基于偏好的推薦算法,在所有用戶中查找與當(dāng)前用戶偏好相近的用戶,根據(jù)領(lǐng)域相關(guān)度、評(píng)價(jià)相似度等對(duì)相似用戶進(jìn)行篩選,得到與當(dāng)前用戶相似度最高的一批用戶,根據(jù)這批用戶的偏好信息為當(dāng)前用戶進(jìn)行推薦。該算法相對(duì)于協(xié)同過(guò)濾算法在冷啟動(dòng)問(wèn)題上有一定改進(jìn),但是仍不能解決完全沒(méi)有任何信息的新用戶冷啟動(dòng)問(wèn)題。文獻(xiàn)[8]提出對(duì)已有的用戶信息或物品信息進(jìn)行分類,當(dāng)新用戶或新物品進(jìn)入系統(tǒng)時(shí)利用貝葉斯分類方法將其歸類到相應(yīng)的用戶類或物品類。這種方法在系統(tǒng)已經(jīng)獲取用戶的基礎(chǔ)信息或者少量的用戶交互信息時(shí)能給出較好的推薦,但是當(dāng)一個(gè)完全沒(méi)有任何信息的新用戶登錄到系統(tǒng)時(shí),這類方法不能取得較好效果。文獻(xiàn)[9]基于用戶的人口統(tǒng)計(jì)學(xué)信息為新用戶進(jìn)行推薦,但其在未獲取新用戶的人口統(tǒng)計(jì)學(xué)信息時(shí)無(wú)法使用。
以上各種解決新用戶冷啟動(dòng)問(wèn)題的算法都是在已知用戶信息或者用戶與推薦系統(tǒng)有過(guò)一些交互的基礎(chǔ)上進(jìn)行的推薦,這些算法在未獲知用戶信息、用戶與系統(tǒng)沒(méi)有交互或者交互非常少的情況下難以取得令人滿意的效果。為解決該問(wèn)題,本文建立N臂老虎機(jī)(N-armed bandit)[10]和免疫反饋(Immune Feedback)[11]相結(jié)合的模型,提出一種改進(jìn)的Epsilon-greedy算法EGIF為新用戶進(jìn)行推薦,并根據(jù)用戶的反饋及時(shí)調(diào)整策略,以不斷改善算法的推薦效果[12]。
一臺(tái)老虎機(jī)有多個(gè)拉桿,拉動(dòng)每個(gè)拉桿可能獲得0個(gè)或1個(gè)金幣,這個(gè)回報(bào)是隨機(jī)的。如果拉動(dòng)拉桿的次數(shù)有限,那么如何在老虎機(jī)上獲得最大回報(bào)(即最多的金幣數(shù)),就是所謂的N臂老虎機(jī)問(wèn)題。
為了獲得最大回報(bào),賭徒應(yīng)該盡快找出回報(bào)率最高的拉桿。最簡(jiǎn)單的方法是給每個(gè)拉桿相同的嘗試次數(shù)(如10次),統(tǒng)計(jì)每個(gè)拉桿返回的金幣個(gè)數(shù),找到返回金幣數(shù)最多的拉桿,以后一直選擇這個(gè)拉桿以期獲得最大回報(bào)。但這個(gè)策略存在一定缺陷:1)回報(bào)率低的老虎機(jī)可能在10次內(nèi)返回比回報(bào)率高的拉桿更多的金幣;2)如果拉桿較多,給每個(gè)拉桿10次實(shí)驗(yàn)機(jī)會(huì)無(wú)疑會(huì)造成很大的浪費(fèi)。
目前,解決N臂老虎機(jī)問(wèn)題的算法大致分3類:
1)無(wú)指導(dǎo)“探索”算法,如Epsilon-greedy[13]、Epoch-greedy[14]等,這類算法每次以Epsilon的概率在N臂老虎機(jī)中隨機(jī)選擇一個(gè)拉桿,否則就選擇目前為止平均收益最大的那個(gè)拉桿。
2)有指導(dǎo)“探索”算法,如UCB(Upper Confidence Bound)[15]、EXP4[16]等,這類算法每次選擇置信上限最高的那個(gè)拉桿。
3)概率匹配算法,如Thompson sampling[17]等,這類算法假設(shè)每個(gè)拉桿產(chǎn)生收益的概率p符合beta分布,通過(guò)實(shí)驗(yàn)不斷調(diào)整beta分布的參數(shù),每次選擇拉桿的方式為:用每個(gè)拉桿現(xiàn)有的beta分布產(chǎn)生一個(gè)隨機(jī)數(shù),選擇所產(chǎn)生的隨機(jī)數(shù)最大的那個(gè)拉桿。
在這些解決N臂老虎機(jī)問(wèn)題的算法中,Epsilon-greedy算法和UCB算法在實(shí)際應(yīng)用中表現(xiàn)較優(yōu)秀。
Epsilon-greedy算法是一種解決N臂老虎機(jī)問(wèn)題的簡(jiǎn)單算法。greedy算法總是選擇在當(dāng)前時(shí)刻算法認(rèn)為最好的動(dòng)作。Epsilon-greedy算法和greedy算法非常相似,它一般會(huì)選擇最好的動(dòng)作,也可能去“探索”其他可行的動(dòng)作。Epsilon-greedy算法每次以Epsilon的概率去“探索”(在所有拉桿中隨機(jī)選擇一個(gè)拉桿),以1-Epsilon的概率去“發(fā)現(xiàn)”(選擇之前“探索”到的回報(bào)率最高的那個(gè)拉桿)。
在Epsilon-greedy算法中,比較關(guān)鍵的問(wèn)題是如何確定Epsilon的值。如果Epsilon的值較大,會(huì)增加探索的概率,這雖能夠加快算法的收斂,但往往不能很好地利用已經(jīng)探索到的成果,導(dǎo)致結(jié)果較差;如果Epsilon的值較小,模型的穩(wěn)定性更好,但會(huì)使算法的收斂速度降低。
UCB算法在每輪選擇置信上限J(t)最大的拉桿,J(t)計(jì)算公式如下:
(1)
(2)
其中,μi為實(shí)際觀測(cè)到的老虎機(jī)返回金幣的概率,c(g)為返回金幣個(gè)數(shù),c(t)為全部嘗試次數(shù),ni為t輪內(nèi)嘗試?yán)瓌?dòng)第i個(gè)拉桿的次數(shù)。
UCB算法將“探索”和“發(fā)現(xiàn)”2個(gè)過(guò)程融合到一個(gè)公式中,能夠讓拉動(dòng)次數(shù)較少的拉桿有更多被嘗試的機(jī)會(huì)。
N臂老虎機(jī)問(wèn)題是優(yōu)化一個(gè)同時(shí)玩多個(gè)老虎機(jī)的賭徒的收入統(tǒng)計(jì)問(wèn)題[18-19]。文獻(xiàn)[20]基于內(nèi)容的N臂老虎機(jī)模型提出LinRel算法,文獻(xiàn)[21]提出LinUCB算法,改進(jìn)了LinRel算法并用基于內(nèi)容的N臂老虎機(jī)模型在新聞文本推薦中對(duì)用戶反饋進(jìn)行建模。N臂老虎機(jī)模型應(yīng)用于推薦算法時(shí),將N臂老虎機(jī)的拉桿定義為將要推薦給用戶的物品,將拉動(dòng)拉桿的動(dòng)作定義為給用戶進(jìn)行推薦,將拉桿返回的獎(jiǎng)勵(lì)定義為用戶點(diǎn)擊了為其推薦的物品。
在為用戶推薦物品時(shí),每次為用戶推薦一個(gè)物品后收集用戶對(duì)此物品的評(píng)分。根據(jù)已知的用戶評(píng)分決定下一輪應(yīng)該推薦的物品。此時(shí),可以繼續(xù)推薦用戶之前評(píng)分最高的物品,也可以隨機(jī)選擇一個(gè)物品推薦給用戶,前者稱為“發(fā)現(xiàn)”,后者稱為“探索”。
N臂老虎機(jī)模型能夠根據(jù)用戶的在線反饋為新用戶進(jìn)行合理的推薦,同時(shí)由于老虎機(jī)模型中存在的“探索”部分,能夠提高推薦結(jié)果的多樣性[22]。
免疫系統(tǒng)是人類和脊椎動(dòng)物所擁有的防御系統(tǒng),是由許多執(zhí)行免疫功能的免疫器官、免疫細(xì)胞和免疫分子等組成的復(fù)雜自適應(yīng)系統(tǒng)。免疫系統(tǒng)使機(jī)體免受病原體、有害物質(zhì)以及癌細(xì)胞等致病因子的侵害。在免疫系統(tǒng)中,有一種免疫反饋機(jī)制同時(shí)完成2項(xiàng)任務(wù):1)對(duì)出現(xiàn)的抗原快速反應(yīng);2)使免疫系統(tǒng)快速達(dá)到穩(wěn)定平衡。
免疫反饋機(jī)制的原理如圖1所示,人體的免疫細(xì)胞大致分為T細(xì)胞和B細(xì)胞2種。T細(xì)胞的主要功能是吞噬入侵的抗原,B細(xì)胞的主要功能是產(chǎn)生多種抗體,用抗體來(lái)中和入侵的抗原。當(dāng)抗原物質(zhì)(細(xì)菌、病毒)入侵人體后,會(huì)同時(shí)刺激輔助T細(xì)胞和抑制T細(xì)胞。一方面,輔助T細(xì)胞能夠協(xié)助B細(xì)胞產(chǎn)生抗體,促進(jìn)Killer T細(xì)胞的生成;另一方面,抑制T細(xì)胞也會(huì)抑制B細(xì)胞產(chǎn)生抗體,抑制Killer T細(xì)胞的生成。通過(guò)免疫系統(tǒng)中輔助T細(xì)胞和抑制T細(xì)胞之間的相互作用,使免疫系統(tǒng)實(shí)時(shí)的處在抗原和抗體的動(dòng)態(tài)平衡中。這種動(dòng)態(tài)平衡使得免疫系統(tǒng)能夠?qū)θ肭值目乖龀隹焖俜磻?yīng),并且能使免疫系統(tǒng)迅速達(dá)到平衡。

圖1 免疫反饋機(jī)制原理
研究人員借鑒免疫反饋思想來(lái)加速神經(jīng)網(wǎng)絡(luò)算法的收斂速度[23-24]。本文將免疫反饋模型應(yīng)用于Epsilon-greedy算法,使Epsilon-greedy算法能夠更快收斂,從而更好地為新用戶進(jìn)行推薦。
輔助T細(xì)胞對(duì)B細(xì)胞的刺激定義為:
Thelp(k)=K1ε(k)
(3)
其中,K1為T細(xì)胞對(duì)B細(xì)胞的刺激程度, ε(k)為第k代B細(xì)胞的數(shù)量。
抑制T細(xì)胞對(duì)B細(xì)胞的抑制定義為:
Tsup(k)=K2{Tkill(k-d)-Tkill(k-d-1)}2ε(k)
(4)
其中,K2為抑制因子,d為超參數(shù),表示第d代,Tkill(k-d)和Tkill(k-d-1)分別為第k-d代和第k-d-1代Killer T細(xì)胞數(shù)量。
Killer T細(xì)胞接受到的總刺激為:
TKiller(k)=Thelp(k)-Tsup(k)
(5)
若以Δreward作為抗原,Epsilon-greedy算法中的Epsilon參數(shù)值作為抗體,則有如下關(guān)系式[21]:
Epsilon(k)=Kp[1-γ{Epsilon(k-d)-
Epsilon(k-d-1)}2]Δreward
(6)
其中,Kp=K1,γ=K2/K1。參數(shù)Kp控制免疫系統(tǒng)對(duì)抗原的反應(yīng)速度,參數(shù)γ控制免疫系統(tǒng)的穩(wěn)定性。Epsilon(k)為第k次對(duì)用戶推薦時(shí)Epsilon的值,reward為用戶對(duì)推薦物品的喜好程度,其計(jì)算參考式(7)。
(7)
其中,click(k)是用戶的點(diǎn)擊率,recommended(k)是為用戶推薦物品的總數(shù)。Δreward的計(jì)算如式(8)。
Δreward=reward(k)-reward(k-d)
(8)
本文提出的EGIF算法將Epsilon-greedy算法和免疫反饋模型相結(jié)合,用以解決新用戶冷啟動(dòng)問(wèn)題。
將給用戶推薦的N個(gè)物品定義為N臂老虎機(jī)的N個(gè)拉桿,每次為用戶進(jìn)行推薦相當(dāng)于一次拉動(dòng)老虎機(jī)拉桿的動(dòng)作,每次推薦后用戶是否點(diǎn)擊了所推薦的物品相當(dāng)于用戶在拉動(dòng)某一個(gè)拉桿時(shí)是否獲得了獎(jiǎng)勵(lì)。
Epsilon-greedy算法以Epsilon的概率去隨機(jī)“探索”用戶的潛在偏好,并為用戶推薦物品,以1-Epsilon的概率去利用已經(jīng)“探索”到的用戶偏好來(lái)為用戶推薦物品。傳統(tǒng)的Epsilon-greedy算法的Epsilon參數(shù)值是固定不變的,如果Epsilon取值較小,算法在短時(shí)間內(nèi)不容易“探索”到用戶的潛在興趣,導(dǎo)致算法的收斂速度較慢,隨著時(shí)間的推移,在“探索”到用戶的興趣后,能以很大的概率去利用已經(jīng)“探索”到的用戶興趣并進(jìn)行推薦,從而取得較好的推薦效果。如果Epsilon取值較大,雖然算法能夠更快的收斂,在較短時(shí)間內(nèi)“探索”到用戶的興趣,但是在“探索”到用戶興趣后仍然保持很大的概率去“探索”,而不是根據(jù)已經(jīng)“探索”到的用戶興趣進(jìn)行推薦,這會(huì)導(dǎo)致算法的推薦效果較差。不同Epsilon值的平均推薦回報(bào)率如圖2所示。

圖2 不同Epsilon值的平均回報(bào)率
在免疫反饋系統(tǒng)中,當(dāng)抗原入侵機(jī)體后,在抗原的刺激下抗體數(shù)量迅速上升。隨著抗體數(shù)量的增多,抗體會(huì)抑制自身的增長(zhǎng)使抗體數(shù)量迅速下降,以便免疫系統(tǒng)保持平衡。本文利用免疫反饋模型來(lái)動(dòng)態(tài)調(diào)整Epsilon參數(shù)的值,使算法既能很快收斂,又能實(shí)現(xiàn)很好的推薦效果。根據(jù)式(6),在用戶剛進(jìn)入系統(tǒng)時(shí),Epsilon的值會(huì)迅速升高,以盡快“探索”用戶的偏好。隨著用戶與系統(tǒng)交互次數(shù)的增多,Epsilon的值會(huì)迅速降低,以便更好地利用已“探索”到的用戶偏好進(jìn)行推薦。本文EGIF算法具體描述如下:
1.begin
2.初始化拉桿的回報(bào)分布為用戶隨機(jī)推薦物品
3.k=0
4.while true do
5.begin
6.if 用戶點(diǎn)擊了推薦物品 then
7.返回1
8.else 返回0
9.記錄推薦物品、用戶是否點(diǎn)擊物品及點(diǎn)擊次數(shù)
10.根據(jù)式(7)計(jì)算reward(k)
11.根據(jù)式(8)計(jì)算Δreward
12.根據(jù)式(6)計(jì)算Epsilon
13.r←0到1之間的隨機(jī)數(shù)
14.if r>Epsilon then
15.隨機(jī)推薦物品
16.else 推薦點(diǎn)擊次數(shù)最多的物品
17.更新拉桿的回報(bào)分布
18.k++
19.end
20.end
EGIF算法需要實(shí)時(shí)分析和選擇將要推薦給用戶的物品,這意味著算法的行為要依賴于其看到的數(shù)據(jù),算法所看到的數(shù)據(jù)又依賴于算法的行為。算法數(shù)據(jù)和算法行為的關(guān)系如圖3所示。

圖3 算法數(shù)據(jù)與算法行為間的關(guān)系
因此,EGIF算法是一種在線算法,算法的測(cè)試需要在真實(shí)的系統(tǒng)中根據(jù)用戶反饋來(lái)進(jìn)行,但是在真實(shí)系統(tǒng)中進(jìn)行測(cè)試的風(fēng)險(xiǎn)很高。為解決這一問(wèn)題,本文采用蒙特卡羅模擬方法[25]進(jìn)行測(cè)試。該方法能夠提供實(shí)時(shí)的模擬數(shù)據(jù)供算法分析,從而對(duì)算法進(jìn)行評(píng)測(cè)。
本文的實(shí)驗(yàn)環(huán)境為:Intel Core i5 CPU,2.7 GHz主頻,Windows 7操作系統(tǒng),4 GB內(nèi)存,編程語(yǔ)言為Python。在實(shí)驗(yàn)中,N臂老虎機(jī)的拉桿為伯努利拉桿,共設(shè)置5個(gè)不同的拉桿,每個(gè)拉桿返回獎(jiǎng)勵(lì)的概率分別為0.1、0.2、0.3、0.5、0.9。實(shí)驗(yàn)共進(jìn)行5 000個(gè)epoch模擬,每個(gè)epoch按順序拉動(dòng)500次拉桿,記錄每個(gè)拉桿返回的reward值以及總reward值。
將EGIF算法應(yīng)用于推薦系統(tǒng),令用戶點(diǎn)擊算法推薦的物品的概率為p,沒(méi)有點(diǎn)擊算法推薦的物品的概率為1-p。每個(gè)拉桿的回報(bào)率各不相同,例如,拉桿1的回報(bào)率為0.1,代表拉動(dòng)拉桿10次,會(huì)有一次返回的獎(jiǎng)勵(lì)為1,其余時(shí)候返回的獎(jiǎng)勵(lì)為0。回報(bào)率表示推薦系統(tǒng)中用戶對(duì)每件物品的偏好程度。
在實(shí)驗(yàn)中,對(duì)EGIF算法進(jìn)行測(cè)試并返回一個(gè)測(cè)試結(jié)果數(shù)據(jù)集,以說(shuō)明每次模擬時(shí)算法選擇了哪個(gè)拉桿以及算法在每一個(gè)時(shí)間點(diǎn)的表現(xiàn)。由于每次模擬都根據(jù)隨機(jī)數(shù)生成,實(shí)驗(yàn)結(jié)果的噪聲很大,因此需要進(jìn)行多次模擬。EGIF算法和固定Epsilon的Epsilon-greedy算法的平均獎(jiǎng)勵(lì)指標(biāo)實(shí)驗(yàn)結(jié)果如圖4所示,其中,Epsilon-greedy算法的Epsilon超參數(shù)值分別選取0.1、0.3、0.5、0.7和0.9。從圖4可以看出,用戶與系統(tǒng)交互約5次時(shí),EGIF算法在平均獎(jiǎng)勵(lì)上已經(jīng)超出了固定Epsilon的Epsilon-greedy算法,表明EGIF算法能夠在極短的時(shí)間內(nèi)找到用戶的偏好,為用戶進(jìn)行更好的推薦。從圖4還能看出,不僅是在極短的時(shí)間內(nèi)EGIF算法能夠找到用戶的偏好,在以后更長(zhǎng)的時(shí)間里,EGIF算法能夠維持在0.85的平均獎(jiǎng)勵(lì),而固定Epsilon的Epsilon-greedy算法在與用戶交互100次時(shí)也只能達(dá)到0.8的平均獎(jiǎng)勵(lì)。綜上,與固定Epsilon的Epsilon-greedy算法相比,EGIF算法不僅能更好地解決新用戶冷啟動(dòng)問(wèn)題,而且能夠在較長(zhǎng)的時(shí)期內(nèi)維持較佳的推薦效果。

圖4 2種算法平均獎(jiǎng)勵(lì)比較
圖5、圖6所示分別為EGIF算法和固定Epsilon的Epsilon-greedy算法的獎(jiǎng)勵(lì)總和以及選擇到最好拉桿的概率結(jié)果。從圖5、圖6可以看出,相對(duì)于固定Epsilon的Epsilon-greedy算法,本文EGIF算法性能更優(yōu)。

圖5 2種算法獎(jiǎng)勵(lì)總和比較

圖6 2種算法選擇到最好拉桿的概率比較
EGIF算法在平均獎(jiǎng)勵(lì)指標(biāo)上與Softmax算法、Annelealing算法以及UCB算法的比較如圖7所示。從圖7可以看出,EGIF算法在用戶與系統(tǒng)交互的前20次中,雖然平均獎(jiǎng)勵(lì)值有所波動(dòng),但是該值幾乎一直高于Softmax算法和Anneleanling算法,而UCB算法波動(dòng)劇烈,平均獎(jiǎng)勵(lì)結(jié)果非常不穩(wěn)定。EGIF算法在平均獎(jiǎng)勵(lì)方面之所以有一定的波動(dòng),是因?yàn)槊庖叻答伳P蜁?huì)根據(jù)算法平均獎(jiǎng)勵(lì)的變化動(dòng)態(tài)地調(diào)整Epsilon參數(shù)的值,以使算法能夠快速收斂。

圖7 4種算法平均獎(jiǎng)勵(lì)對(duì)比
圖8、圖9所示分別為EGIF算法、Softmax算法、Annelealing算法以及UCB算法在獎(jiǎng)勵(lì)總和指標(biāo)和選擇到最好拉桿概率指標(biāo)上的比較結(jié)果。從圖8、圖9可以看出,EGIF算法在這2個(gè)指標(biāo)上的表現(xiàn)都優(yōu)于對(duì)比算法。

圖8 4種算法獎(jiǎng)勵(lì)總和對(duì)比

圖9 4種算法選擇到最好拉桿的概率對(duì)比
本文將Epsilon-greedy算法和免疫反饋模型相結(jié)合,提出一種解決新用戶冷啟動(dòng)問(wèn)題的EGIF算法。在傳統(tǒng)的Epsilon-greedy算法中利用免疫反饋模型動(dòng)態(tài)調(diào)整Epsilon的參數(shù)值,以解決傳統(tǒng)Epsilon-greedy算法不能快速收斂的問(wèn)題。實(shí)驗(yàn)結(jié)果表明,EGIF算法能夠在新用戶進(jìn)入系統(tǒng)時(shí)迅速找到用戶的偏好,為新用戶進(jìn)行更好的推薦。在解決N臂老虎機(jī)問(wèn)題的諸多算法中,除Epsilon-greedy算法外,其他算法也存在“探索”和“發(fā)現(xiàn)”問(wèn)題,本文僅對(duì)Epsilon-greedy算法和免疫反饋模型相結(jié)合進(jìn)行了研究。下一步考慮將免疫反饋模型與其他算法相結(jié)合,以進(jìn)一步提高本文推薦算法的性能。