本發(fā)明涉及一種商品推薦方法,尤其涉及一種動態(tài)自適應的商品推薦方法。
背景技術:
:當前,已經涌現大批電商平臺,商品數量數以億計,要消費者逐個去找到自己想要的東西變成不可能的任務,通常電商平臺都會對商品進行分門別類擺放,或者提供搜索能力,但這讓人找到想要的商品還是很吃力。目前,已經有些電商網站會為顧客提供推薦感興趣的商品,其依據是通過用戶行為,如購買歷史,瀏覽歷史等獲取用戶的偏好,利用協同過濾算法進行商品推薦。但當新用戶填寫注冊信息還未產生歷史數據時,無法推薦任何準確的商品;當用戶開始產生一些用戶行為歷史時,通過協同過濾算法確實可以產生推薦商品,但往往不準確,而且不全面,不能滿足處在某個生長階段的推薦對象要求。技術實現要素:為了解決上述技術所存在的不足之處,本發(fā)明提供了一種動態(tài)自適應的商品推薦方法。為了解決以上技術問題,本發(fā)明采用的技術方案是:一種動態(tài)自適應的商品推薦方法,該方法具體分為以下步驟:(1)根據推薦對象的適用生長階段屬性,建立推薦對象生長階段與商品需求列表一對多的關系模型m1;根據商品的消耗速度,建立商品與推薦周期對應關系模型m2;(2)通過推薦對象的生長階段屬性對模型m1進行查詢,生成通用推薦商品集合s={s1,s2...sn},(n>0);其中,,s為單個商品;(3)利用用戶歷史數據,通過基于物品的協同過濾算法,計算獲得歷史數據推薦商品集合p={p1,p2...pm},(m>=0);其中,p為單個商品;(4)對集合s和集合p取并集,得到整合商品集合q’=s∪p;(5)根據模型m2與購買歷史,對集合q’進行過濾,排除暫時不用購買的商品,得到商品集合q={q1,q2...qi},(i>0);其中,q為單個商品;(6)對q中每一件商品qj近一月的銷量因素、是否屬于特殊品類、是否促銷以及商品好評度計算商品推薦度d(qj),計算公式為:其中α為每個維度的調整參數,可以根據推薦效果適當調整;銷量權重w1(qj)為商品銷量n(qj)與其所屬品類c(qj)中商品的最高銷量nmax(c(qj))的比例,計算公式為:按照品類計算銷量比例,保證每個品類的商品都有平等的推薦概率。上述特殊品類商品優(yōu)先推薦的方式為,預先定義特殊類別l,特殊類別權重計算公式為:上述促銷商品優(yōu)先推薦的方式為,將促銷商品權重加大,若促銷商品列表為f,則促銷權重為:上述好評商品優(yōu)先推薦的方式為,需加上好評度權重w4(qj),根據現有電商平臺一般會提供用戶打分機制,若總分為tmax,商品評分為t(qj),則根據以上公式計算推薦度,并進行排序,將前λ個商品推薦給用戶。上述模型m1將根據購買歷史的統計數據進行更新,具體方式為:假設用戶總量為nuser,商品銷量n(qj),將符合條件的商品加入對應生長階段的商品需求列表中;其中,μ為閾值參數。本發(fā)明具有以下優(yōu)點:(1)通過推薦對象所處的生長階段,通過開始人為建立的推薦對象生長階段與商品需求關系模型,給出該生長階段推薦的商品集,縮小了候選推薦商品的候選集;(2)通過整合模塊和進行過濾,根據公式計算得到推薦度并進行排序,選擇推薦度靠前的商品進行推薦,保證了商品推薦的全面性、實用性和準確性;(3)根據用戶歷史數據自動更新推薦計劃,保證了推薦商品的實時性。附圖說明下面結合附圖和具體實施方式對本發(fā)明作進一步詳細的說明。圖1為本發(fā)明操作的流程圖。具體實施方式如圖1所示,本發(fā)明方法分為以下步驟:(1)根據推薦對象的適用生長階段屬性,建立推薦對象生長階段與商品需求列表一對多的關系模型m1;根據商品的消耗速度,建立商品與推薦周期對應關系模型m2;(2)通過推薦對象的生長階段屬性對模型m1進行查詢,生成通用推薦商品集合s={s1,s2...sn},(n>0);其中,s為單個商品;(3)利用用戶歷史數據,通過基于物品的協同過濾算法,計算獲得歷史數據推薦商品集合p={p1,p2...pm},(m>=0);其中,p為單個商品;(4)對集合s和集合p取并集,得到整合商品集合q’=s∪p;(5)根據模型m2與購買歷史,對集合q’進行過濾,排除暫時不用購買的商品,得到商品集合q={q1,q2...qi},(i>0);其中,q為單個商品;(6)對q中每一件商品qj近一月的銷量因素、是否屬于特殊品類、是否促銷以及商品好評度計算商品推薦度d(qj),計算公式為:其中α為每個維度的調整參數,可以根據推薦效果適當調整;銷量權重w1(qj)為商品銷量n(qj)與其所屬品類c(qj)中商品的最高銷量nmax(c(qj))的比例,計算公式為:按照品類計算銷量比例,保證每個品類的商品都有平等的推薦概率,再根據公式計算推薦度,并進行排序,將前λ個商品推薦給用戶。上述特殊品類商品優(yōu)先推薦的方式為,預先定義特殊類別l,特殊類別權重計算公式為:上述促銷商品優(yōu)先推薦的方式為,將促銷商品權重加大,若促銷商品列表為f,則促銷權重為:所述好評商品優(yōu)先推薦的方式為,需加上好評度權重w4(qj),根據現有電商平臺一般會提供用戶打分機制,若總分為tmax,商品評分為t(qj),則上述模型m1將根據購買歷史的統計數據進行更新,具體方式為:假設用戶總量為nuser,商品銷量n(qj),將符合條件的商品加入對應生長階段的商品需求列表中;其中,μ為閾值參數。下面結合實施例對本發(fā)明作進一步說明。其中,表1為生長階段與商品需求列表關系模型、表2是商品與推薦周期的關系模型、表3是部分商品表;因為相近時間出生的嬰幼兒需求類似,并且每個月的需求都會發(fā)生比較大的變化,所以下面推薦對象選擇為嬰幼兒,且以母嬰商城商品推薦舉例,推薦步驟如下:a、建立嬰幼兒成長階段與商品需求的關系模型,如表1所示:表1:生長階段與商品需求列表關系模型weeksexgood_needed1男1,21女1,2…68男1,2,368女1,2,3,4…表2:商品與推薦周期的關系模型goodweekunitduration(day)11100g52110piece3341300…如表2所示,商品與推薦周期對應關系模型中,單位是關鍵信息,而且隨著寶寶的成長,用量也會不一樣,所以也必須加上生長階段;表3:部分商品表idtitleprice1牛欄奶粉1段900g1502花王紙尿片nb1003好孩子扭扭車2004芭比娃娃50…b、根據用戶的寶寶信息,查詢得到寶寶的通用推薦商品集合s={s1,s2...sn},(n>0);c、利用用戶購買、瀏覽等行為歷史數據,通過基于物品的協同過濾算法,可以得到歷史數據推薦商品集合p={p1,p2...pm},(m>=0);d、將兩個推薦渠道的數據進行取并集得到整合商品集合,并且根據購買歷史與商品與推薦周期關系模型進行過濾,得到推薦集合q={q1,q2...qi},(i>0),并且根據推薦度公式進行排序,得到最終推薦結果為排名前λ的推薦商品q={q1,q2...qj},(j<λ);e、當用戶發(fā)生購買動作時,系統將該用戶信息、寶寶信息、商品、購買量、購買時間記錄到購買歷史表中;f、因為系統運行開始生長階段與商品需求列表關系模型是人為創(chuàng)建的,不一定符合寶寶的實際情況,所以系統需要自動更新關系模型。本實施例中,對所有商品進行遍歷,假設用戶總量為nuser,商品銷量n(qj),將符合條件(μ為閾值參數)的商品加入對應生長階段的商品需求列表中,這樣就可以把原先沒考慮加入需求模型中的商品補上,不斷完善需求模型。上述實施方式并非是對本發(fā)明的限制,本發(fā)明也并不僅限于上述舉例,本
技術領域:
的技術人員在本發(fā)明的技術方案范圍內所做出的變化、改型、添加或替換,也均屬于本發(fā)明的保護范圍。當前第1頁12