亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        淺談Mahout在個性化推薦系統(tǒng)中的應(yīng)用

        2016-11-16 14:41:13鄧秀娟
        電腦知識與技術(shù) 2016年25期
        關(guān)鍵詞:推薦系統(tǒng)組件

        鄧秀娟

        摘要:面對當(dāng)今信息過載的問題,推薦系統(tǒng)發(fā)揮了重要的作用,構(gòu)建一種基于Mahout的推薦引擎使推薦系統(tǒng)發(fā)揮更優(yōu)的推薦效果。本文介紹了Mahout中的各種推薦算法的基本特點(diǎn),基于某約會網(wǎng)站的數(shù)據(jù)示例,對幾種推薦算法進(jìn)行嘗試性測試,從而找出最優(yōu)的算法組合方案實(shí)現(xiàn)一個推薦引擎。

        關(guān)鍵詞:推薦系統(tǒng);Mahout;單機(jī)內(nèi)存算法;組件

        中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)25-0171-02

        隨著信息技術(shù)和互聯(lián)網(wǎng)的發(fā)展,人們逐漸從信息匱乏的時代進(jìn)入了信息過載的時代。推薦系統(tǒng)的出現(xiàn)可以幫助用戶發(fā)現(xiàn)對自己有價值的信息,同時能夠讓信息展現(xiàn)在對它感興趣的用戶面前。個性化推薦系統(tǒng)依賴于用戶的行為數(shù)據(jù),目前被廣泛地應(yīng)用在包括電子商務(wù)、社交網(wǎng)絡(luò)、電影和視頻、音樂、個性化郵件和廣告、基于位置的服務(wù)、閱讀等領(lǐng)域中,從而提高相關(guān)網(wǎng)站的點(diǎn)擊率和轉(zhuǎn)化率。Mahout是來自Apache的、開源的機(jī)器學(xué)習(xí)軟件庫,主要提供了機(jī)器學(xué)習(xí)領(lǐng)域的推薦引擎(協(xié)同過濾)、聚類和分類算法的實(shí)現(xiàn),為推薦系統(tǒng)的應(yīng)用和研究提供了支持。

        本文通過對Mahout中的推薦算法進(jìn)行研究,使用一個示例對推薦算法進(jìn)行評估,從而找到一個有效的推薦程序應(yīng)用到示例中,為用戶實(shí)現(xiàn)推薦。

        1 Mahout的推薦算法

        基于Hadoop分布式框架的機(jī)器學(xué)習(xí)算法庫Mahout封裝了多種機(jī)器學(xué)習(xí)算法的分布式實(shí)現(xiàn),由多個組件混搭而成,各個組件的組合可以定制,從而針對特定應(yīng)用提供理想的推薦。通常包括的組件如下:數(shù)據(jù)模型由DataModel實(shí)現(xiàn);用戶間的相似性度量由UserSimilarity實(shí)現(xiàn);用戶近鄰的定義由UserNeighborhood實(shí)現(xiàn);推薦引擎由一個Reommender實(shí)現(xiàn)。從數(shù)據(jù)處理能力上,Mahout推薦算法可以分為單機(jī)內(nèi)存算法和基于Hadoop的分布式算法,本文僅討論單機(jī)內(nèi)存算法。

        1.1 推薦數(shù)據(jù)的表示

        推薦引擎的輸入是偏好數(shù)據(jù)(preference data),通常用(用戶ID,物品ID,偏好值)的元組集合來表示。在Mahout中使用DataModel對推薦程序的輸入數(shù)據(jù)進(jìn)行封裝,GernericDataModel是現(xiàn)有DataModel實(shí)現(xiàn)中最簡單的,它通過程序在內(nèi)存中構(gòu)造數(shù)據(jù)表示形式,將偏好作為輸入,將用戶ID映射到這些用戶數(shù)據(jù)所在的PreferenceArray(一個接口,表示一個偏好的聚合)上。若用戶和物品的數(shù)據(jù)無偏好值時,可以使用GenericBooleanPrefDataModel來實(shí)現(xiàn)?;谖募臄?shù)據(jù)使用FileDataModel,從文件中讀取數(shù)據(jù),將所得的偏好數(shù)據(jù)存儲到內(nèi)存,即GernericDataModel中。基于數(shù)據(jù)庫的數(shù)據(jù)用JDBCDataModel實(shí)現(xiàn),若使用MySQL數(shù)據(jù)庫,可以使用其子類MySQLJDBCDataModel。

        1.2 相似性度量

        基于用戶的推薦程序和基于物品的推薦程序都依賴于UserSimilarity這個組件,及用戶或物品之間的相似性,缺乏對用戶或物品的相似性定義的推薦方法是毫無意義的。相似度算法包括了歐氏距離相似度(EuclideanDistanceSimilarity)、皮爾遜相關(guān)系數(shù)相似度(PearsonCorrelationSimilarity)、曼哈頓距離相似度(CityBlockSimilarity)、對數(shù)似然相似度(LogLikehoodSimilarity)、谷本系數(shù)相似度(TanimotoCoefficientSimilarity)等

        1.3 用戶近鄰

        近鄰算法適用于基于用戶的協(xié)同過濾算法,選出前N個最相似的用戶構(gòu)成鄰域,作為最終推薦參考的用戶。近鄰算法分為2種:基于固定大小和基于閾值的。NearestNUserNeighborhood實(shí)現(xiàn)基于固定大小的鄰域,指定N的個數(shù),如選出前10個最相似的用戶;ThresholdUserNerghborhood實(shí)現(xiàn)基于閾值的鄰域,指定比例,如選擇前10%最相似的用戶。

        1.4 推薦算法

        Mahout的推薦算法以Recommender作為基礎(chǔ)父類,實(shí)現(xiàn)類有基于用戶的推薦算法、基于物品的推薦算法、基于物品的KNN的推薦算法、Slope-one推薦算法、基于奇異值分解(SVD)的推薦算法、基于聚類(TreeCluster)的推薦算法。推薦算法對比如表1所示。

        2 Mahout在推薦系統(tǒng)中的應(yīng)用

        上節(jié)介紹了Mahout提供的推薦算法,接下來講述如何在數(shù)據(jù)集上使用Mahout開發(fā)推薦系統(tǒng)。首先分析樣本數(shù)據(jù),對數(shù)據(jù)做預(yù)處理,然后選取一個方法,收集數(shù)據(jù)、評估結(jié)果,多次重復(fù)這個過程,找到最優(yōu)的推薦算法創(chuàng)建一個推薦引擎。

        本示例數(shù)據(jù)來自捷克的一個約會網(wǎng)站(http://libimseti.cz)。該網(wǎng)站的用戶可以對其他用戶的檔案進(jìn)行評分,分值從1到10不等,分值1代表“喜歡”,分值10代表“不喜歡”。

        2.1 數(shù)據(jù)的輸入

        示例數(shù)據(jù)集有17359346份評分,存儲為ratings.dat文件,是一個簡單地以逗號分界的文件,包含用戶ID、檔案ID和評分,檔案是指其他用戶的檔案。每行代表一個用戶對另一個用戶檔案的一次評分,如:1,133,8,表示用戶ID為“1”的用戶對檔案ID為“133”的評分值為8。輸入數(shù)據(jù)的格式直接可以用于Mahout的FileDataModel。即用戶和檔案是數(shù)字,文件按字段依次以逗號分隔:用戶ID,物品ID,偏好值。

        2.2 尋找一個有效的推薦程序

        為了創(chuàng)建一個推薦引擎來處理示例數(shù)據(jù),需要從Mahout中挑選一個推薦程序。通過在基于用戶的推薦程序和基于物品的推薦程序下選擇幾種不同的相似性度量和鄰域定義進(jìn)行嘗試性測試,測試結(jié)果如表2、表3所示。

        以上的結(jié)果較為理想。這些推薦程序估計(jì)的用戶偏好平均偏差在1.12~1.56之間,而取值范圍為1~10。最佳的方案是選擇基于歐氏距離相似性度量和2個最近鄰域的基于用戶的推薦程序,其評分估值為1.12。

        從結(jié)果看出,平均誤差,即估計(jì)值和實(shí)際值的平均差值翻了大概2倍,具體值超過了2,顯然基于物品的推薦方法相較于基于用戶的推薦方法效果不佳。

        Slope-one推薦程序在數(shù)據(jù)模型中的大多數(shù)物品對之間求得一個差值。示例數(shù)據(jù)集中有168791個物品(檔案),意味著潛在存儲了280億個差值,它太龐大因而無法存入內(nèi)存??梢钥紤]在數(shù)據(jù)庫中存儲這些差值,但會極大地降低性能。對于示例數(shù)據(jù)集,Slope-one推薦程序也并非最佳選擇。

        讀者還可以嘗試更多的組合進(jìn)行測試,經(jīng)過目前所做的測試進(jìn)行對比分析,這里在Mahout中選擇最佳方案:基于用戶的推薦程序,采用歐氏距離測度且鄰域?yàn)?。

        2.3 評估性能

        使用Mahout的LoadEvaluator類評估該數(shù)據(jù)集上使用的推薦程序,采用如下的標(biāo)識類參數(shù):-server –d64 –XmX2048 –XX:+UseParallelGC –XX:+UserParallelOldGC。在測試機(jī)上平均每次推薦會用218ms。這個程序在運(yùn)行時僅占用1GB左右的堆空間。這些測試結(jié)果是否可被接受,依賴于應(yīng)用的需求和可用的硬件資源。對于許多應(yīng)用而言,這些測試數(shù)據(jù)應(yīng)該還是符合要求的。

        3 結(jié)束語

        本文通過使用一個來自約會網(wǎng)站的數(shù)據(jù)作為示例,分析了數(shù)據(jù)的格式,使之成為適合Mahout應(yīng)用的數(shù)據(jù)輸入格式。通過嘗試性測試不同算法組件的組合進(jìn)行對比,找出最佳的推薦程序,并對推薦程序進(jìn)行性能評估,使讀者了解在Mahout選擇和創(chuàng)建一個推薦引擎的基本過程。本文僅討論了基于單機(jī)內(nèi)存的算法,基于Hadoop的分布式算法將是今后考慮的研究方向。

        參考文獻(xiàn):

        [1] 朱倩,錢立.基于Mahout的推薦系統(tǒng)的分析與設(shè)計(jì)[J].科技通報,2013(6):35-36.

        [2] 韓懷梅,李淑琴.基于Mahout的個性化推薦系統(tǒng)架構(gòu)[J].北京信息科技大學(xué)學(xué)報:自然科學(xué)版,2014(4):51-54.

        [3] 陶維成,王婷婷,姚琪.基于Mahout的推薦系統(tǒng)構(gòu)建[J].重慶科技學(xué)院學(xué)報:自然科學(xué)版,2014(2):143-146.

        [4] 奉國和,黃家興.基于Hadoop與Mahout的協(xié)同過濾圖書推薦研究[J].圖書情報工作,2013(18):116-121.

        猜你喜歡
        推薦系統(tǒng)組件
        無人機(jī)智能巡檢在光伏電站組件診斷中的應(yīng)用
        能源工程(2022年2期)2022-05-23 13:51:50
        新型碎邊剪刀盤組件
        U盾外殼組件注塑模具設(shè)計(jì)
        橋梁組件搭配分析
        中國公路(2017年16期)2017-10-14 01:04:56
        數(shù)據(jù)挖掘在選課推薦中的研究
        軟件(2016年4期)2017-01-20 10:09:33
        基于用戶偏好的信任網(wǎng)絡(luò)隨機(jī)游走推薦模型
        基于個性化的協(xié)同過濾圖書推薦算法研究
        個性化推薦系統(tǒng)關(guān)鍵算法探討
        關(guān)于協(xié)同過濾推薦算法的研究文獻(xiàn)綜述
        商(2016年29期)2016-10-29 15:22:08
        UGC標(biāo)簽推薦系統(tǒng)的一種新的標(biāo)簽清理方法
        商(2016年15期)2016-06-17 17:39:50
        久久精品中文闷骚内射| 亚洲一区二区三区av色婷婷 | 国产精品一区二区夜色不卡| 特黄 做受又硬又粗又大视频| 国产精品无码av天天爽| av无码天一区二区一三区| 日本久久一级二级三级| 中文字幕人妻饥渴浪妇| 大桥未久亚洲无av码在线| 国产精品九九九久久九九| 成年人视频在线播放麻豆| 日本a级片免费网站观看| 全部孕妇毛片丰满孕妇孕交| 中文字幕一区二区三区四区在线| 亚洲一区二区观看播放| 日本高清色惰www在线视频| 国产一级黄色片一区二区 | 久久久久久人妻一区精品 | 国产卡一卡二卡三| 亚洲—本道中文字幕久久66| 国产亚洲av一线观看| 中文字幕中文字幕在线中二区| 成人午夜高潮a∨猛片| 国产日韩精品中文字无码| 欧美日韩精品乱国产538| 久久久精品亚洲懂色av| 亚洲国产精品国自产拍久久蜜av| 久久精品国产色蜜蜜麻豆| 中文字幕久无码免费久久| 亚洲中文高清乱码av中文| 女人18毛片a级毛片| 丰满爆乳无码一区二区三区| 国产精品无套粉嫩白浆在线 | 人妻熟女中文字幕在线视频| 黄片视频免费在线观看国产| 先锋影音最新色资源站| 大屁股少妇一区二区无码| 亚洲精品乱码久久麻豆| 欧美怡春院一区二区三区| 在线va免费看成| 天天插视频|