Apache Mahout 简介:通过可伸缩、商业友好的机器学习来构建智能应用程序
2009-10-15 00:00:00 来源:WEB开发网Mahout 目前提供了一些工具,可用于通过 Taste 库建立一个推荐引擎 — 针对 CF 的快速且灵活的引擎。Taste 支持基于用户和基于项目的推荐,并且提供了许多推荐选项,以及用于自定义的界面。Taste 包含 5 个主要组件,用于操作 用户、项目 和 首选项:
DataModel:用于存储 用户、项目 和 首选项
:用于定义两个用户之间的相似度的界面
UserSimilarity
ItemSimilarity:用于定义两个项目之间的相似度的界面
Recommender:用于提供推荐的界面
UserNeighborhood:用于计算相似用户邻近度的界面,其结果随时可由 Recommender 使用
借助这些组件以及它们的实现,开发人员可以构建复杂的推荐系统,提供基于实时或者离线的推荐。基于实时的推荐经常只能处理数千用户,而离线推荐具有更好的适用性。Taste 甚至提供了一些可利用 Hadoop 离线计算推荐的工具。在许多情况中,这种合适的方法可以帮助您满足包含大量用户、项目和首选项的大型系统的需求。
为了演示如何构建一个简单的推荐系统,我需要一些用户、项目和评分。为此,我们会使用 cf.wikipedia.GenerateRatings 中的代码(包含在示例代码的源代码中)为 Wikipedia 文档(Taste 称之为 项目)随机生成大量 用户 和 首选项,然后再手动补充一些关于特定话题(Abraham Lincoln)的评分,从而创建示例中的最终 recommendations.txt 文件。此方法的内涵是展示 CF 如何将对某特定话题感兴趣的人导向相关话题的其他文档。此示例的数据来源于 990(标记为从 0 到 989)个随机用户,他们随机为集合中的所有文章随机分配了一些评分,以及 10 个用户(标记为从 990 到 999),他们对集合中包含 Abraham Lincoln 关键字的 17 篇文章中的部分文章进行了评分。
- ››apache设置域名绑定 以及绑定不起作用的排查
- ››apache rewrite将指定URL转向指定的几个服务器
- ››apache配置文件httpd.comf部分参数说明
- ››Apache+Mysql+PHP+phpMyAdmin+Mac OS X 10.7 Lion...
- ››apache+tomcat负载均衡_项目实例
- ››apache mysql php 源码编译使用
- ››Apache添加mod_aspdotnet.so支持ASP.NET配置指南
- ››Apache中改变php.ini的路径
- ››Apache2.2与Tomcat6整合及虚拟主机配置
- ››Apache+php+mysql在windows下的安装与配置图解
- ››Apache+Subversion完美结合,CentOS下实现版本控制...
- ››Apache HTTPServer2.2.16 发布
更多精彩
赞助商链接