导读
谁说理解机器学习必须要熟读高数?
近日, 数据科学 Kyle 在 Medium 发布博客表示, 理解机器学习在做的事情, 有初中数学知识足矣.
这篇博客简洁易懂, 幽默风趣, 在 Medium 上几天内获得 600 多赞. 量子位将文章翻译整理如下, 与大家分享:
当下理解我们人工智能的方式通常比较极端, 要么通过媒体, 越来越耸人听闻的观点让人难以想象. 要么通过文献, 充满晦涩语言和特定术语的论文让人难以理解.
理解 AI 的正确姿势应该在两个极端之间, 这就需要你在新闻或文献之外理性判断, 对于一般人来说, 至少应该知道 AI 是什么.
这几乎是没有门槛的, 我认为理解 AI, 中学数学知识就足够了. 这篇文章我将简化人工智能中的数学, 带你拨开云雾看本质.
在这里给大家推荐一个 python 系统学习 q 群: 250933691 有免费开发工具以及初学资料,(数据分析, 爬虫, AI, 机器学习, 神经网络)每天有老师给大家免费授课, 欢迎一起交流学习
简单版 AI 和机器学习概念
能模仿人类的智慧, 这是最具代表性的 AI 的定义.
AI 可以有多重 "形态", 从虚拟游戏里的机器人, 谷歌 DeepMind 开发的下围棋程序 AlphaGo, 到现实世界里索菲亚这样的人型机器人, 这都是 AI"寄生" 的场所.
那 AI 和相关报道中经常提到的机器学习和深度学习是什么关系, 请看下面这张图:
人工智能 (AI): 泛指任何可以让计算机模拟人类智慧的技术, 可以通过逻辑, if-then 等规则, 决策树和机器学习(包括深度学习) 等方法实现.
机器学习: AI 的一个子分类, 让机器通过真实世界的数据去 "学习", 而非单调执行预先设定的规则.
深度学习: 机器学习的子类, 包含一系列算法. 机器通过多层神经网络去处理数据, 自己学习去执行任务. 在语言和图像识别等任务中经常看到.
发现了么, 机器学习的最大特色之一, 就是它的 "学习" 方式不同了. 这里的 "学习", 其实也没有看起来那样有未来感, 你在初中可能就已经接触过了.
如果你看过《黑镜》里类似的桥段, 就比较容易将现在 AI 可视化成一个有意识的实体, 一个有思想, 感觉, 可以做出复杂决策的物体.
在媒体的报道中这种观念更为普遍, 甚至经常会把 AI 人格化, 然后将其与电影《终结者》里的天网 (Skynet) 和《*** 帝国》里的 Matrix 相提并论.
实际上这都不是真的. 在现阶段 AI 就是数学. 有时是高难度的数学, 有时需要扩展到计算机科学, 统计学等其他领域的知识. 但 AI 的核心是一种数学函数.
也就是说, 机器学习可以从 y=mx+b 这个方程式来理解. 如下图所示, 我们已经知道了 x 值 y 值, 此时需要让一台计算机通过输入 (x) 和输出 (y) 去思考两者之间的关系, 推断出 m 和 b 的值.
这个公式推断起来不难吧, y=1x+1, 小学生也会做. 就是这样, 我们创造一个公式来描述所给的数据, 这大体上也是机器学习在做的事情.
这之间最有趣的部分就是, 怎样教机器选择最适合这些数据的公式. 一旦找到这其中的关联, 你还可以将它用图表的形式表现出来.
你不懂的数学, 拿给机器去做吧
y=1x+1 是个非常简单的例子, 我们需要机器学习最主要的原因是, 人类无法在数百万量级的数据点中找到合适的公式, 这就是计算机要去做的事了.
无论如何, 必须有足够多的数据才能找到正确的公式. 如果我们仅仅有 x=1 和 y=2 两个数据点, 输出的函数也是千变万化的, 可能是 y=2x, 可能是 y=x+1,, 也可能是 y=([x+1]*5-9)? + 1 等等.
根据少量数据构建公式, 然后把它用到更多数据上, 这个公式可能会出现大量错误.
并且, 现实世界总不可能一直这么完美. 在下面这个动图中可以看到, 机器会在一堆数据中进行取舍, 探索怎样最大化去满足这些数据, 进而才去创造公式.
和数学课上那些规律输入和输出值不同, 真实世界的数据更不可预测, 也更 "参差不齐".
△ 最佳公式
当面对一堆变量时, 人类找出合适公式的可能性更小了. 只有 x 和 y 很容易, 但如果 y 受 x 的 1 次方, 2 次方, 100 次方的影响呢?
人类就 hold 不住了, 但计算机可以.
现实生活中的机器学习和 AI
来看一个现实生活中的例子. 我在制药领域工作, 就举个 *** 相关数据集的例子好了.
这个数据集中有两个关于肿瘤大小的输入变量, 即半径和周长, 以及两个潜在的输出, 即良性肿瘤和恶性肿瘤. 用我们上述思路来考虑, 这事就是这样的:
y: 诊断结果, 可以是 0(良性)或 1(恶性)
x1: 半径
x2: 周长
每个 x 都有一个位置的 m, 先称之为 "某数" 吧
b: 依然是一个未知数
那么这个线性方程长什么样? 其实和上面的例子也没什么太大区别:
诊断结果 =(某数 1* 半径)+(某数 2* 周长)+b
这样看来, 这道题已经脱离了人类能力的范围了, 所以不用费时间去找这么多变量与结果的关系了, 我们可以让机器去做, 这之间就是机器学习!
在这里给大家推荐一个 python 系统学习 q 群: 250933691 有免费开发工具以及初学资料,(数据分析, 爬虫, AI, 机器学习, 神经网络)每天有老师给大家免费授课, 欢迎一起交流学习
来源: http://www.bubuko.com/infodetail-2974580.html