基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及人工智能領(lǐng)域的個性化服務(wù)技術(shù),具體來說是一種基于時間與區(qū)域粒 度的農(nóng)資協(xié)同過濾算法。
【背景技術(shù)】
[0002] 在現(xiàn)在電子商務(wù)中往往使用個性化服務(wù)技術(shù),來挖掘用戶潛在需求,提高用戶使 用體驗(yàn)。協(xié)同過濾算法是個性化服務(wù)技術(shù)中應(yīng)用最成功最廣泛的算法之一,協(xié)同過濾算法 是根據(jù)某顧客以往的購買行為以及從具有相似購買行為的顧客群的購買行為去推薦這個 顧客其"可能喜歡的品項(xiàng)",也就是借由社群的喜好提供個人化的資訊、商品等的推薦服務(wù)。 在用戶個性化需求挖掘中,需找用戶相似群體的用戶相似度計(jì)算方法成為重中之重。如何 更真實(shí)的找到和目標(biāo)用戶相似的用戶成為學(xué)術(shù)界的一個研究熱點(diǎn)。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明的目的是為了解決現(xiàn)有協(xié)同過濾算法在農(nóng)資領(lǐng)域預(yù)測準(zhǔn)確度較低和相似 度計(jì)算時用戶商品評分矩陣過于龐大的缺陷,提供了一種基于時間與區(qū)域粒度的農(nóng)資協(xié)同 過濾算法。本發(fā)明采用的技術(shù)方案是:
[0004] -種基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,包括下述步驟:
[0005] 步驟S1,通過已有的農(nóng)業(yè)統(tǒng)計(jì)規(guī)律調(diào)研結(jié)果建立時間與地域粒度矩陣Am*n;
[0006] 步驟S2,進(jìn)行K個年度的用戶行為數(shù)據(jù)采集,將采集來的用戶行為數(shù)據(jù)按照數(shù)據(jù)年 份劃分為K份,對每份數(shù)據(jù)再按照時間與地域粒度劃分為m*n粒度;
[0007] 步驟S3,根據(jù)劃分后的數(shù)據(jù)建立K個年度的用戶所在時間與區(qū)域粒度的用戶商品 評分矩陣;
[0008] 步驟S4,分別對K個矩陣的用戶相似度進(jìn)行計(jì)算,將K個年度的用戶商品評分矩陣 得到的用戶相似度加權(quán)后求和得到基于時間與區(qū)域粒度的用戶相似度;找到和目標(biāo)用戶最 相似的N個用戶;
[0009] 步驟S5,基于N個最相似的用戶的興趣給當(dāng)前目標(biāo)用戶進(jìn)行推薦。
[0010] 進(jìn)一步地,步驟S4中具體包括:分別對K個矩陣的用戶相似度進(jìn)行計(jì)算,加權(quán)后求 和得到基于時間與區(qū)域粒度的用戶相似度TA-S(a,b),計(jì)算公式如公式(1)和(2)所示:
[0011] (1)
[0012] (2)
[0013]其中,1(表示實(shí)驗(yàn)數(shù)據(jù)所選用的年數(shù)(1(6[1,3]),人1表示年度權(quán)重值\6(〇,1),且 與K值成反比;i分別表示用戶a,用戶b的評分平均值,ral表示用戶a對物品i的評分, rbi表示用戶b對物品i的評分;
[0014] 進(jìn)一步地,步驟S5中,基于N個最相似的用戶的興趣給當(dāng)前目標(biāo)用戶進(jìn)行推薦,推 薦算法公式如公式(3)所示:
[0015]
⑶
[0016] 其中I(a,i)表示用戶a對物品i的預(yù)測評分值,&分別表示用戶a,用戶b的評 分平均值,^1表示用戶b對物品i的評分,1(吧3表示用戶a的近鄰集合。
[0017] 本發(fā)明的優(yōu)點(diǎn):本發(fā)明提供的基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,與現(xiàn)有 技術(shù)相比,引入了時間與區(qū)域粒度的概念。該方法通過對用戶不同年度同一時間粒度的用 戶相似度加權(quán)求和得到新的用戶相似度,能夠更貼切真實(shí)的反映農(nóng)資領(lǐng)域的用戶的相似 度。在評分預(yù)測的準(zhǔn)確性上有所提高。
【附圖說明】
[0018] 圖1為本發(fā)明的算法流程圖。
[0019] 圖2為本發(fā)明與現(xiàn)有算法性能對比圖。
【具體實(shí)施方式】
[0020] 下面結(jié)合具體附圖和實(shí)施例對本發(fā)明作進(jìn)一步說明。
[0021 ]基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,包括下述步驟:
[0022] 步驟S1,時間與區(qū)域粒度劃分,根據(jù)農(nóng)業(yè)規(guī)律,將全國全年的數(shù)據(jù)劃分為M*N個粒 度;也就是通過已有的農(nóng)業(yè)統(tǒng)計(jì)規(guī)律調(diào)研結(jié)果建立時間與地域粒度矩陣A m*n;
[0023] 步驟S2,進(jìn)行K個年度的用戶行為數(shù)據(jù)采集,將采集來的用戶行為數(shù)據(jù)按照數(shù)據(jù)年 份劃分為K份,對每份數(shù)據(jù)再按照時間與地域粒度劃分為m*n粒度;這樣就可以將采集來的 用戶行為數(shù)據(jù)按照年度與時間與區(qū)域粒度矩陣劃分為K*m*n個粒度;
[0024] 步驟S3,根據(jù)劃分后的數(shù)據(jù)建立K個年度的用戶所在時間與區(qū)域粒度的用戶商品 評分矩陣;
[0025] 步驟S4,分別對K個矩陣的用戶相似度進(jìn)行計(jì)算,加權(quán)后求和得到基于時間與區(qū)域 粒度的用戶相似度TA_S(a,b),計(jì)算公式如公式(1)和(2)所示:
[0026] (1)
[0027]
(2)
[0028] 其中,K表示實(shí)驗(yàn)數(shù)據(jù)所選用的年數(shù)(Ke [1,3]),,表示年度權(quán)重值λΕ (〇,1),且 與Κ值成反比;》v, &分別表示用戶a,用戶b的評分平均值,ral表示用戶a對物品i的評分, rbi表示用戶b對物品i的評分;
[0029] 然后找到和目標(biāo)用戶最相似的N個用戶;
[0030] 步驟S5中,基于N個最相似的用戶的興趣給當(dāng)前目標(biāo)用戶進(jìn)行推薦,推薦算法公式 如公式(3)所示:
[0031]
(3)
[0032] 其中I(a,i)表示用戶a對物品i的預(yù)測評分值,& >在分別表示用戶a,用戶b的評 分平均值,^1表示用戶b對物品i的評分,1(吧3表示用戶a的近鄰集合。
[0033] 預(yù)測目標(biāo)用戶對物品的評分值(根據(jù)公式三計(jì)算),然后將預(yù)測評分值最高的幾個 物品推薦給目標(biāo)用戶。
[0034]在針對本算法的實(shí)驗(yàn)過程中,本文選用某省2013年1月到2016年1月,328個用戶對 150個農(nóng)資物品(包括農(nóng)藥,種子種苗,肥料,農(nóng)膜,中小農(nóng)具等)所產(chǎn)生的8167條交易與評價 數(shù)據(jù),評分值范圍為1 一5。實(shí)驗(yàn)中隨機(jī)選用整個實(shí)驗(yàn)數(shù)據(jù)集的80%作為訓(xùn)練集,剩余的作為 測試集。與傳統(tǒng)基于用戶的協(xié)同過濾算法性能對比如圖2所示。圖2中的縱坐標(biāo)為用戶對物 品的預(yù)測評分和真實(shí)評分的RMSE(均方根誤差)指標(biāo),越小代表性能越好。
【主權(quán)項(xiàng)】
1. 一種基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,其特征在于,包括下述步驟: 步驟SI,通過已有的農(nóng)業(yè)統(tǒng)計(jì)規(guī)律調(diào)研結(jié)果建立時間與地域粒度矩陣Am*n; 步驟S2,進(jìn)行K個年度的用戶行為數(shù)據(jù)采集,將采集來的用戶行為數(shù)據(jù)按照數(shù)據(jù)年份劃 分為K份,對每份數(shù)據(jù)再按照時間與地域粒度劃分為m*n粒度; 步驟S3,根據(jù)劃分后的數(shù)據(jù)建立K個年度的用戶所在時間與區(qū)域粒度的用戶商品評分 矩陣; 步驟S4,分別對K個矩陣的用戶相似度進(jìn)行計(jì)算,將K個年度的用戶商品評分矩陣得到 的用戶相似度加權(quán)后求和得到基于時間與區(qū)域粒度的用戶相似度;找到和目標(biāo)用戶最相似 的N個用戶; 步驟S5,基于N個最相似的用戶的興趣給當(dāng)前目標(biāo)用戶進(jìn)行推薦。2. 如權(quán)利要求1所述的基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,其特征在于; 步驟S4中具體包括:分別對K個矩陣的用戶相似度進(jìn)行計(jì)算,加權(quán)后求和得到基于時間 與區(qū)域粒度的用戶相似度TA-S(a,b),計(jì)算公式如公式(1)和(2)所示:(1 ) (2) 其中,K表示實(shí)驗(yàn)數(shù)據(jù)所選用的年數(shù)化e [1,3]),、表示年度權(quán)重值A(chǔ)e (0,1 ),且與K值 成反比;分別表示用戶a,用戶b的評分平均值,表示用戶a對物品i的評分,rbi表示 用戶b對物品i的評分。3. 如權(quán)利要求2所述的基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,其特征在于; 步驟S5中,基于N個最相似的用戶的興趣給當(dāng)前目標(biāo)用戶進(jìn)行推薦,推薦算法公式如公 式(3)所示:(3) 其中Ka, i)表示用戶a對物品i的預(yù)測評分值,G分別表示用戶a,用戶b的評分平 均值,rbi表示用戶b對物品i的評分,KNSa表示用戶a的近鄰集合。
【專利摘要】本發(fā)明提供一種基于時間與區(qū)域粒度的農(nóng)資協(xié)同過濾算法,包括步驟:通過已有的農(nóng)業(yè)統(tǒng)計(jì)規(guī)律調(diào)研結(jié)果建立時間與地域粒度矩陣;進(jìn)行用戶行為數(shù)據(jù)采集;將采集來的用戶行為數(shù)據(jù)按照時間與區(qū)域粒度矩陣劃分;建立用戶所在時間與區(qū)域粒度的用戶商品評分矩陣;根據(jù)用戶商品評分矩陣計(jì)算用戶相似度;找到最相似的N個用戶,基于N個最相似的用戶的興趣給當(dāng)前用戶進(jìn)行推薦。與傳統(tǒng)基于用戶的協(xié)同過濾算法相比,本算法解決了協(xié)同過濾算法在農(nóng)資領(lǐng)域預(yù)測準(zhǔn)確度較低和相似度計(jì)算時用戶商品評分矩陣過于龐大的缺陷。
【IPC分類】G06Q30/02
【公開號】CN105512919
【申請?zhí)枴緾N201610098741
【發(fā)明人】董恒, 孫丙宇, 王偉, 汪六三, 李文波
【申請人】無錫中科富農(nóng)物聯(lián)科技有限公司, 安徽中科物聯(lián)科技有限公司, 江蘇物聯(lián)網(wǎng)研究發(fā)展中心
【公開日】2016年4月20日
【申請日】2016年2月23日