共計(jì) 1193 個(gè)字符,預(yù)計(jì)需要花費(fèi) 3 分鐘才能閱讀完成。
這篇文章主要介紹“Mahout 的引擎 Taste 有什么優(yōu)點(diǎn)”,在日常操作中,相信很多人在 Mahout 的引擎 Taste 有什么優(yōu)點(diǎn)問(wèn)題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”Mahout 的引擎 Taste 有什么優(yōu)點(diǎn)”的疑惑有所幫助!接下來(lái),請(qǐng)跟著丸趣 TV 小編一起來(lái)學(xué)習(xí)吧!
Taste 是 Apache Mahout 提供的一個(gè)個(gè)性化推薦引擎的高效實(shí)現(xiàn),該引擎基于 java 實(shí)現(xiàn),可擴(kuò)展性強(qiáng),同時(shí)在 mahout 中對(duì)一些推薦算法進(jìn)行了 MapReduce 編程模式轉(zhuǎn)化,從而可以利用 hadoop 的分布式架構(gòu),提高推薦算法的性能。
在 Mahout0.5 版本中的 Taste,實(shí)現(xiàn)了多種推薦算法,其中有最基本的基于用戶(hù)的和基于內(nèi)容的推薦算法,也有比較高效的 SlopeOne 算法,以及處于研究階段的基于 SVD 和線性插值的算法,同時(shí) Taste 還提供了擴(kuò)展接口,用于定制化開(kāi)發(fā)基于內(nèi)容或基于模型的個(gè)性化推薦算法。
Taste 不僅僅適用于 Java 應(yīng)用程序,還可以作為內(nèi)部服務(wù)器的一個(gè)組件以 HTTP 和 Web Service 的形式向外界提供推薦的邏輯。Taste 的設(shè)計(jì)使它能滿足企業(yè)對(duì)推薦引擎在性能、靈活性和可擴(kuò)展性等方面的要求。
下圖展示了構(gòu)成 Taste 的核心組件:
從上圖可見(jiàn),Taste 由以下幾個(gè)主要組件組成:
DataModel:DataModel 是用戶(hù)喜好信息的抽象接口,它的具體實(shí)現(xiàn)支持從指定類(lèi)型的數(shù)據(jù)源抽取用戶(hù)喜好信息。在 Mahout0.5 中,Taste 提供 JDBCDataModel 和 FileDataModel 兩種類(lèi)的實(shí)現(xiàn),分別支持從數(shù)據(jù)庫(kù)和文件文件系統(tǒng)中讀取用戶(hù)的喜好信息。對(duì)于數(shù)據(jù)庫(kù)的讀取支持,在 Mahout 0.5 中只提供了對(duì) MySQL 和 PostgreSQL 的支持,如果數(shù)據(jù)存儲(chǔ)在其他數(shù)據(jù)庫(kù),或者是把數(shù)據(jù)導(dǎo)入到這兩個(gè)數(shù)據(jù)庫(kù)中,或者是自行編程實(shí)現(xiàn)相應(yīng)的類(lèi)。
UserSimilarit 和 ItemSimilarity:前者用于定義兩個(gè)用戶(hù)間的相似度,后者用于定義兩個(gè)項(xiàng)目之間的相似度。Mahout 支持大部分駐留的相似度或相關(guān)度計(jì)算方法,針對(duì)不同的數(shù)據(jù)源,需要合理選擇相似度計(jì)算方法。
UserNeighborhood:在基于用戶(hù)的推薦方法中,推薦的內(nèi)容是基于找到與當(dāng)前用戶(hù)喜好相似的“鄰居用戶(hù)”的方式產(chǎn)生的,該組件就是用來(lái)定義與目標(biāo)用戶(hù)相鄰的“鄰居用戶(hù)”。所以,該組件只有在基于用戶(hù)的推薦算法中才會(huì)被使用。
Recommender:Recommender 是推薦引擎的抽象接口,Taste 中的核心組件。利用該組件就可以為指定用戶(hù)生成項(xiàng)目推薦列表。
到此,關(guān)于“Mahout 的引擎 Taste 有什么優(yōu)點(diǎn)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!