源之原味

机器学习并不像看起来那么难

 

增长、对讲机 @benmcredmond 高级主管本 McRedmond

这篇文章来自 intercom.com。原始 url 是: https://blog.intercom.com/machine-learning-way-easier-than-it-looks/

以下内容由机器翻译生成。如果您觉得可读性不好, 请阅读原文或 点击这里.

很容易相信机器学习是困难的。只有少数学者才知道的神秘工艺。

毕竟, 你教的机器, 工作在一个和零, 以达到他们自己的结论, 关于世界。你在教他们怎么思考!

事实上, 机器学习的大部分文献充斥着复杂的符号、公式和多余的语言。它把墙壁围绕着简单的想法。但是就像我们了解世界的所有最好的框架一样--牛顿的运动定律, 要完成的工作、供求--机器学习核心的最佳理念和理念是简单的。

作为对讲机自己的机器学习专家, Fergal 里德, 机器学习基本上是应用统计学的一个分支。他解释说, "你有一个问题, 你正在试图解决它, 然后你有一个系统, 当你给它更多的训练数据时, 性能提高.....。你得到的数据越多, 你的估计就越好。

如果你没有建立任何机器学习, 你应该尝试一下。我将遍历一个简单的示例, 演示如何将其应用于常见任务。

示例问题–不使用机器学习

说, 我们想包括一个 "你可能也喜欢" 部分在这个帖子的底部。我们该怎么做呢?

Machine learning example

一种方法是以下-天真-解决方案:

  1. 将当前帖子标题拆分为各自的单词。
  2. 得到所有其他职位。
  3. 所有其他职位的人在他们的身体与我们的标题相同的单词。

或者, 在 Ruby 中:

使用此方法查找此博客中类似的帖子, 以 "支持团队如何改进产品", 您将获得以下10强:

  • 如何使用已验证的想法进行启动
  • 了解您的客户以及他们如何决定
  • 设计第一次运行体验以取悦用户
  • 如何聘请设计师
  • 设计的 dribbblisation
  • 与瑞安歌手的访谈
  • 为什么首先不重要
  • 与对讲机的主动支持
  • 采访约书亚波特
  • 保留、队列和 visualisations

正如您所看到的, 有关运行 有效的支持过程 与队列分析几乎没有共同点, 也没有围绕设计的优点进行辩论。我们可以做得更好。

机器学习核心的最佳理念和理念是简单的

使用简单机器学习的相同示例

让我们尝试一个真正的机器学习方法。我们将把它分成两部分:

  1. 数学上代表帖子。
  2. 用 K 表示聚类这些数学表示法。

1. 在数学上代表员额

如果我们可以在数学上代表我们的帖子, 我们可以绘制帖子, 比较帖子之间的距离, 并确定类似帖子的簇。

机器学习-代表岗位数学上

将每个帖子映射到数学表示很容易, 我们可以在两个步骤中完成:

  1. 在所有帖子中查找所有单词。
  2. 将每个 post 转换为一个数组。每个元素都是1或 0, 表示存在一个单词。对于每个帖子, 此数组的顺序相同, 因为它基于 #1 步骤。

或者, 在 Ruby 中:

如果 @words 等于:

[' 你好 ', ' 里面 ', ' 对讲机 ', ' 读者 ', ' 博客 ', ' 帖子 ']

有尸体的柱子 "你好博客帖子读者" 将映射到:

[10, 01, 11]

我们没有简单的工具来绘制6维的向量, 就像我们为2维的那些一样, 但是像距离这样的概念很容易被推断出来。(使用2维示例还是有用的)。

2. 采用 k-均值算法的聚类帖子

现在, 我们有一个数学表示, 我们的博客帖子, 让我们尝试找到集群类似的帖子。要做到这一点, 我们将使用一个疯狂的简单的聚类算法称为 K 手段。它可以在5个步骤中描述:

  1. 将 "K" 设置为所需的簇数。
  2. 选择 "K" 随机点。
  3. 将每个文档分配到其最接近的点。
  4. 从分配给每个点的所有文档的 "平均值" 中选择 "K" 新点。
  5. 重复步骤3-4。直到文档的任务停止更改。

让我们想象一下这些步骤。首先, 我们选择 2 (即 k = 2) 随机点, 在与我们的帖子相同的空间:

机器学习群集帖子步骤1

我们将每个文档分配到最接近的点:

机器学习群集帖子步骤2

我们重新评估每个集群的中心, 成为该群集中所有职位的平均值:

机器学习群集帖子步骤3

这是我们第一次迭代的结束。现在我们重新分配每个帖子到它的新的最近的点:

机器学习群集帖子步骤4

我们找到了我们的集群!我们知道这一点, 因为在进一步的迭代中很明显, 分配不会改变。

或者, 在 Ruby 中:

下面是与此方法生成的 "支持团队如何改进产品" 类似的前10个帖子:

  • 你是清白的还是聪明的?
  • 3客户反馈规则
  • 询问客户您想听的内容
  • 航运是一个过程的开始
  • 特征蠕变是什么样子的?
  • 洞察你的 userbase
  • 在正确的时间用正确的信息转换客户
  • 与客户的对话
  • 您的应用程序是否有信息调度?
  • 你试过和你的客户谈过吗?

结果代表了他们自己。

我们实现了这一切, 不到40行代码, 和一些简单的算法, 可以在博客文章中描述。然而, 你永远不会知道这些想法是如何简单的阅读学术文献。下面是本文的摘录, 介绍了 k 表示法 (很难精确地指出 k 方法的第一次引入, 但这是第一篇使用 "k 表示" 一词的论文):

k-指学术论文

有用的资源

现在别误会我了学术文献 可以 通常是有用的, 如果你愿意使用的符号。然而, 如果你刚开始使用机器学习, 那么有很多优秀的替代资源是更加实用和平易近人的。

给它一个尝试

这些天来, 机器学习有很多的嗡嗡声。改进的技术帮助我们在诸如计算机视觉、音频识别和自然语言翻译等领域取得了惊人的突破。

但是机器学习并不只是为大的抽象问题预留的。想建议您的项目管理应用程序中的标签?还是客户支持工具中的受让方?还是社交网络上的团队成员?机会是一些简单的代码, 一个简单的算法将得到那里。所以, 当面对你的产品挑战, 你相信机器学习可以帮助, 不要气馁, 并尝试。

机器学习入门比你想象的容易。


我们喜欢打破他们的基本原则。如果这是你喜欢工作的方式, 加入我们的团队

Leave A Reply

Your email address will not be published.