[發(fā)明專利]一種基于大規(guī)模進化算法的商品推薦方法在審
| 申請?zhí)枺?/td> | 202111551750.4 | 申請日: | 2021-12-17 |
| 公開(公告)號: | CN114202387A | 公開(公告)日: | 2022-03-18 |
| 發(fā)明(設計)人: | 田野;鄭威;張亞杰;張興義 | 申請(專利權)人: | 安徽大學 |
| 主分類號: | G06Q30/06 | 分類號: | G06Q30/06;G06F9/50;G06N3/12 |
| 代理公司: | 安徽省合肥新安專利代理有限責任公司 34101 | 代理人: | 陸麗莉;何梅生 |
| 地址: | 230601 安*** | 國省代碼: | 安徽;34 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 大規(guī)模 進化 算法 商品 推薦 方法 | ||
1.一種基于大規(guī)模進化算法的商品推薦方法,其特征是按如下步驟進行:
步驟一、構建商品推薦的多目標優(yōu)化模型;
步驟1.1、獲取用戶與商品的交互行為的數(shù)據(jù)庫Y={Y1,Y2,…,Yi,…,Yn},其中,Yi表示第i個用戶的商品交互行為,n為數(shù)據(jù)庫中用戶的總數(shù);遍歷用戶與商品的交互行為的數(shù)據(jù)庫Y,得到所述數(shù)據(jù)庫Y中存在的所有商品項的數(shù)目D;
步驟1.2、根據(jù)所述商品項的數(shù)目D,采用二進制方式對數(shù)據(jù)庫Y進行編碼,得到大規(guī)模商品項模式集T={t1,t2,…,ti,…,tn},且T是一個n×D矩陣;其中,第i個商品項模式ti通過數(shù)據(jù)庫Y中第i個用戶與所有商品項的交互行為來表示;即ti={ti,1,ti,2,…,ti,d,…,ti,D},若第i個用戶存在與第d個商品的交互行為,則令ti,d=1,表示第i個商品項模式中存在第d個商品項,否則,令ti,d=0,表示第i個商品項模式中不存在第d個商品項;d∈[1,D];
令商品推薦方案X是由{0,1}組成的向量,且X={x1,x2,…,xk,…,xD};其中,若xk=1表示所述商品推薦方案X中第k個商品項被推薦;反之,xk=0則表示所述商品推薦方案X中第k個商品項未被推薦;k∈[1,D];
步驟1.3、利用式(1)建立商品推薦方案X的多目標優(yōu)化模型F(X):
Maximize F(X)=(f(X),O(X)) (1)
式(1)中,f(X)表示商品推薦方案X所推薦商品項的頻繁度,并有:
式(2)中,t表示大規(guī)模商品項模式集T中商品推薦方案X的支持事務,TX表示支持事務t的集合;|TX|表示支持事務集合中支持事務t的數(shù)目,|T|=n表示大規(guī)模商品項模式集T的商品項模式總數(shù)目;
式(1)中,O(X)表示商品推薦方案X所推薦商品項的占有度,并有:
式(3)中,|t|表示支持事務t所包含的商品項數(shù)目;|X|表示商品推薦方案X所推薦的商品項數(shù)目;
步驟二、初始化N個商品推薦方案作為初始種群,并給定初始參數(shù)值;
步驟2.1、定義商品推薦種群為P={p1,p2,...,pj,...pN},且P是一個N×D矩陣;其中,pj表示第j個個體,即從D個商品項中選擇不同商品項所構成的第j個商品推薦方案,且pj={pj1,pj2,...,pjd,...pjD},pjd表示第j個商品推薦方案pj是否選擇第d個商品項,若pjd=1,則表示第d個商品項選入第j個商品推薦方案,若pjd=0,則表示第d個商品項未選入第j個商品推薦方案;將種群中個體所在搜索空間定義為原始空間,且所述原始空間的維度為D;1≤N≤n;
步驟2.2、將初始種群P0中每個個體的長度初始化為D,且D是由0和1構成的向量;并利用式(1)計算得到所述初始化種群P0中的所有個體相應的頻繁度和占有度;
步驟2.3、利用非支配排序算法對所述初始化種群P0中所有個體的頻繁度和占有度進行排序,得到具有多個前沿面的種群P0′;
步驟2.4、根據(jù)歐式距離計算所述種群P0′中每個個體的擁擠距離,并根據(jù)所得到的擁擠距離,對所述種群P0′進行降序排序,得到排序后的種群P1;
步驟2.5進化過程的參數(shù)設置;
定義并初始化迭代次數(shù)t=1,定義并初始化第t次迭代的比率λt,定義并初始化第t次迭代的受限玻爾茲曼機RBM中隱層單元的數(shù)量Ht,令最大迭代次數(shù)為tmax;
步驟三、在遺傳算法中添加受限玻爾茲曼機RBM來學習Pareto最優(yōu)子空間,將在Pareto最優(yōu)子空間中產(chǎn)生的子代與采用NSGA-II算法產(chǎn)生的子代合并形成子代種群;
步驟3.1、將第t代種群Pt中處于Pareto最優(yōu)的個體NPt輸入受限玻爾茲曼機RBM中進行第t次訓練,得到第t次訓練后的受限玻爾茲曼機RBM;
步驟3.2、采用二元錦標賽選擇策略從第t代種群Pt中選出N個體放入交配池,并作為第t代父種群Pt′;
步驟3.3、從第t代父種群Pt′中隨機選取一對個體作為父代個體;生成第t次迭代的隨機數(shù)randt,若randt>λt,則使用單點交叉和逐位突變對父代個體進行處理,得到維度為D的一個子代個體;否則,將父代個體輸入第t次訓練后的受限玻爾茲曼機RBM中,得到降維后的父代個體;使用單點交叉和逐位突變對所述降維后的父代個體進行處理,得到子代個體;將所述子代個體輸入所述過第t次訓練后的受限玻爾茲曼機RBM中,得到維度為D的一個子代個體;
步驟3.4、重復步驟3.3執(zhí)行N次,從而在原始空間中產(chǎn)生數(shù)目為N的第t代子代種群Qt;步驟四、將第t代子代種群Qt與第t代父種群Pt′合并后進行環(huán)境選擇,生成新的個體種群,并自適應調(diào)整參數(shù),直至達到終止條件時停止迭代;
步驟4.1、將第t代子代種群Qt與第t代父種群Pt'合并后刪除重復的個體,從而得到第t代新種群PQt;
步驟4.2、對第t代新種群PQt中每個個體的頻繁度和占有度進行非支配排序,得到具有多個前沿面的種群PQ′t;
步驟4.3、計算所述種群PQ′t中每個個體的擁擠距離,并根據(jù)所得到的擁擠距離,對所述種群PQ′t進行降序排序,得到降序后的前N個個體作為第t+1代種群Pt+1;
步驟4.4、根據(jù)第t代父種群Pt'與第t+1代種群Pt+1自適應調(diào)整λt和Ht;
步驟4.4.1、利用式(1)更新第t次迭代的比率參數(shù)λt,得到第t+1次迭代的比率λt+1:
式(1)中,s1,t+1表示當randt≤λt時,所述第t+1代種群Pt+1中屬于第t代子代種群Qt的個體的數(shù)量,s2,t+1表示當randt>λt時,所述第t+1代種群Pt+1中屬于第t代子代種群Qt的個體的數(shù)量;
步驟4.4.2、根據(jù)第t+1代種群Pt+1中處于Pareto最優(yōu)的個體NPt+1,利用式(2)得到第t+1次迭代的受限玻爾茲曼機RBM中隱層單元的數(shù)量Ht+1:
式(2)中,hd表示二進制向量h中第d位二進制碼;
步驟4.5、將t+1賦值給t后,判斷t>tmax是否成立,若成立,則輸出第t代種群Pt;否則返回步驟三繼續(xù)執(zhí)行;
步驟五、將第t代種群Pt中處于Pareto最優(yōu)的個體作為商品推薦方案進行推薦。
2.根據(jù)權利要求1所述的基于大規(guī)模進化算法的商品推薦方法,其特征是,所述步驟4.4.2中的第d位二進制碼hd是按如下過程得到:
步驟4.4.2.1、根據(jù)個體NPt+1,利用式(3)估算第d位二進制碼hd的值為“1”的概率P(hd=1|NPt+1):
式(3)中,|NPt+1|表示個體NPt+1中個體的數(shù)目;pt+1表示NPt+1中的任一個體;如果個體pt+1中未選擇第d個商品項即則令|否則令
步驟4.4.2.2、將概率P(hd=1|NPt+1)與[0,1]內(nèi)均勻分布的隨機值進行比較,當隨機值大于概率值P(hd=1|NPt+1),則令hd=0,反之令hd=1。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于安徽大學,未經(jīng)安徽大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業(yè)授權和技術合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202111551750.4/1.html,轉載請聲明來源鉆瓜專利網(wǎng)。





