探索机器智能:超越人类的机器
试图创造比人类更智能的机器的想法并不新鲜。 计算机科学早期对人类“智能”的探索之一就是通过国际象棋游戏。 国际象棋曾被许多人认为是人类智力和创造力的终极考验。早在 20 世纪 60 年代和 70 年代,计算机科学界就存在着不同的观点。
一些人认为,计算机在国际象棋方面超越人类只是时间问题,而另一些人则认为这永远不会发生。
卡斯帕罗夫与“深蓝”的对决
在人与机器的较量中,最引人注目的是 1996 年的国际象棋比赛。当时的世界冠军加里·卡斯帕罗夫,被誉为史上最伟大的棋手,对阵 “深蓝”,IBM 为此专门设计的超级计算机。
图片来源:维基百科
简而言之,卡斯帕罗夫在 1996 年的比赛中以 4-2 的比分令人信服地获胜,但在 1997 年的复赛中以 4.5-3.5 的比分失利。这场比赛充满了 争议,卡斯帕罗夫甚至直接指控 IBM 作弊。
无论如何,国际象棋与计算机科学的竞争时代已经结束。 计算机被认为在智力上超越了所有人类。 IBM 对此结果感到满意,他们拆除了“深蓝”,并继续进行其他研究。
如今,任何一位国际象棋大师都无法战胜在普通硬件上运行的常见国际象棋引擎。
什么不是机器学习?
在我们深入探讨机器学习之前,让我们先澄清一些误解。 机器学习并不是试图复制人类大脑。 尽管像埃隆·马斯克这样的人持有耸人听闻的观点,但计算机科学研究人员坚持认为,他们并非在寻找这种“圣杯”,当然也没有接近它。
简单来说,机器学习是将实例学习过程应用于计算机的实践。 它与传统方法形成对比,后者依赖于人类程序员将所有可能的场景和硬编码规则纳入系统。
机器学习的本质在于:向计算机提供大量数据,使其能够通过实例学习(试验 → 错误 → 比较 → 改进),而不是依赖于源代码。
机器学习的应用
那么,如果机器学习不是什么“黑魔法”,也不会产生“终结者”,它到底有什么用呢?
机器学习在传统编程方法无法实现的情况下非常有用,这些情况通常属于以下两种类别之一。
“分类”顾名思义,侧重于正确标记事物,而“预测”则旨在根据足够大的历史数据集来准确预测未来。
机器学习的一些有趣的应用包括:
垃圾邮件过滤
垃圾邮件无处不在,但试图阻止它是极其复杂的。 如何定义垃圾邮件? 是否存在特定的关键词? 或者可能是它的书写方式? 从编程的角度来看,很难制定一套详尽的规则。
这就是我们使用机器学习的原因。 我们向系统展示数百万封垃圾邮件和非垃圾邮件,然后让系统找出规律。 这就是 Gmail 出色的垃圾邮件过滤器背后的秘密,它在 21 世纪初震惊了个人电子邮件领域!
推荐系统
今天,所有主要的电子商务公司都拥有强大的推荐系统。 有时,它们推荐我们“可能”会觉得有用的商品的能力非常准确,即使我们以前从未点击过这些商品。
巧合吗? 一点也不!
机器学习在这里发挥了重要作用,它不断处理着数 TB 的数据,并试图预测我们不断变化的心情和偏好。
聊天机器人
您是否遇到过看似奇怪的机器人,但却可以进行有趣的闲聊,作为一级客户支持?
那么,您已经被机器学习的魅力所吸引!
从对话中学习并确定何时该说什么,是聊天机器人应用即将到来且令人兴奋的领域。
除草
在农业领域,机器学习驱动的机器人被用于选择性地在农田中喷洒杂草和其他不需要的植物。
否则,这项工作就必须手工完成,或者会造成浪费,因为系统也会向农作物喷洒有害液体!
语音搜索
与计算机系统的语音交互不再是科幻小说。 今天,我们拥有像 Alexa、Siri 和 Google Home 这样的数字助理,它们可以接受口头命令而不会出错(好吧,几乎!)。
有些人可能会认为,这项发明最好避免,因为它让人类比以往任何时候都更懒惰,但你无法否认它的有效性。
医疗诊断
我们正处于医疗诊断革命的边缘,基于机器学习的系统开始在 诊断 X 光片等方面超越经验丰富的医生。
请注意,这并不意味着我们很快就不需要医生了,而是医疗质量将大幅提高,而成本将大幅下降(除非商业集团另有规定!)。
这只是机器学习应用的一些例子。 如今,自动驾驶汽车、策略游戏机器人、T 恤折叠机、验证码破解以及为黑白照片着色都正在成为现实。
机器学习的类型
机器学习技术主要有两种。
监督学习,其中系统由人类判断指导,以及无监督学习,其中系统自行学习。 另一种解释是,在监督学习中,我们有一个包含输入和预期输出的数据集,系统会使用这个数据集进行比较和自我纠正。 然而,在无监督学习中,没有可衡量的现有输出,因此结果可能差异很大。
无监督机器学习令人兴奋且有些令人不安的应用是什么?
这可能是用于玩棋盘游戏的机器人。程序被教授游戏规则和获胜条件,然后就可以自行探索。 然后,程序会与自己进行数百万次游戏,从错误中吸取教训,并加强有利的决策。
如果您的计算机足够强大,那么您可以在几个小时内准备好一个世界一流的游戏 AI!
下图简要说明了这些概念(来源:Medium):
机器学习入门资源
既然大家对机器学习及其如何帮助你征服世界感到兴奋,那么从哪里开始呢?
下面我列出了一些很棒的网络资源,可以帮助你在没有获得博士学位的情况下流利地掌握机器学习的知识。 即使你不是机器学习的研究人员,你也会发现机器学习领域与一般的编程一样实用且令人愉快。
所以,不用担心,无论你现在的水平如何,你都可以像一个好的机器学习程序一样,自学并变得更好。 😛
1. 编程
入门机器学习的第一个要求是学习编程。 这是因为机器学习系统以各种编程语言的库的形式存在。
Python 是最受推荐的语言之一,部分原因是它学习起来非常有趣,部分原因是它拥有庞大的库和资源生态系统。
官方的 初学者指南是一个很好的起点,即使您对 Python 有一定的了解。 或者,选择这个 训练营课程 从零开始成为高手。
2. 思考统计
一旦掌握了 Python 的基本知识,我的第二个建议是阅读两本优秀的书籍。 它们都是 100% 免费的,可以下载 PDF 格式。 《思考统计》 和 《思考贝叶斯》 是每个有抱负的机器学习工程师都应该深入学习的两个现代经典。
3. Udemy
在这一点上,我建议你探索 Udemy。 交互式和自定进度的学习形式将帮助你深入了解细节并建立信心。
在开始之前,请务必查看课程预览、评论(尤其是负面评论!),以及课程的整体感觉。
您还可以在 YouTube 上找到许多精彩的免费教程。 Sentdex 是我可以推荐的一个频道,那里总是充满乐趣,但他的方法可能不太适合初学者。
4. 吴恩达
吴恩达教授的 Coursera 课程可以说是学习机器学习基础知识最受欢迎的资源。
尽管该课程使用 R 编程语言,但在主题的处理和清晰的解释方面,它仍然无与伦比。 由于这门课程,吴恩达在机器学习圈子中获得了近乎神圣的地位,人们对他无上的智慧充满敬意(我不是在开玩笑!)。
这不是一门针对初学者的课程,但如果您已经擅长数据整理并且不介意做一些额外的研究,那么这门课程是非常值得推荐的。
5. 优达学城
通过获取这个纳米学位,成为一名机器学习工程师 优达学城.
完成该课程大约需要 3 个月,您应该对机器学习算法、如何建模以及如何将它们部署到生产环境有一个大致的了解。
结论
互联网上的资源数不胜数,刚开始很容易迷失方向。 大多数教程和讨论都具有数学难度或缺乏结构,甚至可能在您开始之前就破坏了您的信心。
因此,我在此提醒大家不要自毁:保持目标适度,并以小步前进。 机器学习不是一两天就能掌握的知识,但是很快,你就会开始享受它带来的乐趣,谁知道呢,甚至可能创造出一些令人惊叹的东西!
祝你玩得开心! 🙂