Mahout 机器学习


Apache Mahout 是一个高度可扩展的机器学习库,使开发人员能够 使用优化算法。 Mahout 实现了流行的机器学习技术,例如推荐、分类和聚类。因此,在我们进一步讨论之前,最好先简要介绍一下机器学习。

什么是机器学习?


机器学习是科学的一个分支,它处理系统编程的方式,使它们能够自动学习并随着经验而改进。在这里,学习意味着识别和理解输入数据,并根据提供的数据做出明智的决策。

很难根据所有可能的输入来满足所有决策。为了解决这个问题,开发了算法。这些算法利用统计、概率论、逻辑、组合优化、搜索、强化学习和控制理论的原理从特定数据和过去的经验中构建知识。

开发的算法构成了各种应用的基础,例如:

  • 视觉处理
  • 语言处理
  • 预测(例如,股市趋势)
  • 模式识别
  • Games
  • 数据挖掘
  • 专家系统
  • Robotics

机器学习是一个广阔的领域,涵盖其所有功能远远超出了本教程的范围。有几种方法可以实现机器学习技术,但最常用的是 有监督的 and 无监督学习 .

监督学习


监督学习处理从可用的训练数据中学习一个函数。一个 监督学习算法分析训练数据并产生推断函数,可用于映射新示例。监督学习的常见示例包括:

  • 将电子邮件分类为垃圾邮件,
  • 根据网页内容标记网页,以及
  • 语音识别。

有许多监督学习算法,例如神经网络、支持向量机 (SVM) 和朴素贝叶斯分类器。 Mahout 实现了朴素贝叶斯分类器。

无监督学习


无监督学习可以在没有任何预定义数据集的情况下理解未标记的数据。无监督学习是一种非常强大的工具,用于分析可用数据并寻找模式和趋势。它最常用于将相似的输入聚类到逻辑组中。无监督学习的常见方法包括:

  • k-means
  • 自组织地图,以及
  • 层次聚类

推荐


推荐是一种流行的技术,它根据用户信息(例如以前的购买、点击和评分)提供密切推荐。

  • 亚马逊使用此技术显示你可能感兴趣的推荐商品列表,并从你过去的操作中提取信息。亚马逊背后有推荐引擎来捕捉用户行为并根据你之前的操作推荐选定的商品。

  • Facebook 使用推荐技术来识别和推荐“你可能认识的人列表”。

Recommendation

分类


分类,也称为 分类 ,是一种机器学习技术,它使用已知数据来确定应如何将新数据分类到一组现有类别中。分类是监督学习的一种形式。

  • 邮件服务提供商,例如 Yahoo! Gmail 使用此技术来决定是否应将新邮件归类为垃圾邮件。分类算法通过分析用户将某些邮件标记为垃圾邮件的习惯来训练自己。基于此,分类器决定将来的邮件是否应该存放在你的收件箱或垃圾邮件文件夹中。

  • iTunes 应用程序使用分类来准备播放列表。

Classification

聚类


聚类用于根据共同特征形成相似数据的组或集群。聚类是无监督学习的一种形式。

  • 谷歌和雅虎等搜索引擎!使用聚类技术对具有相似特征的数据进行分组。

  • 新闻组使用聚类技术根据相关主题对各种文章进行分组。

聚类引擎对输入数据进行完整的遍历,并根据数据的特征决定将其分组到哪个聚类中。看看下面的例子。

Clustering

我们的教程库包含各种主题的主题。当我们在 NewbieGo 收到一个新教程时,它会由一个集群引擎处理,该引擎根据它的内容决定它应该在哪里分组。