zoukankan      html  css  js  c++  java
  • 什么叫做机器学习?(科普向)

    什么叫做机器学习?

    本文写于 2020 年 11 月 12 日

    AI 人工智能大家肯定都知道,但往往和机器学习、深度学习、神经网络傻傻分不清楚。

    科学家在 1956 年就提出了 AI 概念,在这的 3 年后(1959) Arthur Samuel 就提出了机器学习,它是实现 AI 人工智能的一种手段

    机器学习并不是某种具体的算法,而是很多算法的统称,深度学习就是其中之一。其他方法包括决策树、聚类、贝叶斯……等等。

    其中深度学习这两年较为出名,大街小巷都在谈论。它的灵感来自大脑的结构和功能,即许多神经元的互连,也就是人工神经网络(ANN),是模拟大脑生物结构的算法。

    基础思路

    机器学习的基本思路非常的简单,就跟把大象放进冰箱一样简单。

    可以这么理解:我们有一个庞大的函数集,里面有无穷多个函数,我们知道很多组自变量和因变量的值,靠着这些值对,去找到其中最吻合的函数。

    只要得到了这个函数,我们就可以通过输入猜测输出了。

    例如,我们有大量猫的图片,通过训练我们的机器学习模型,最终获得了一个较为准确的函数,该函数可以接收一张图片作为参数,并且输出一个结果,这个结果就可以告诉我们这张图是不是一只猫。

    总的来说,这个思路就是:

    1. 把现实生活中的问题抽象成数学模型,并且很清楚模型中不同参数的作用;
    2. 利用数学方法对这个数学模型进行求解,从而解决现实生活中的问题;
    3. 评估这个数学模型,是否真正的解决了现实生活中的问题,解决的如何?

    但是不是所有问题都可以转换成数学问题的。

    那些没有办法转换的现实问题 AI 就没有办法解决,所以同时最难的部分也就是把现实问题转换为数学问题这一步

    我们都听过一个故事:

    有一个地主不识字,所以特别希望自己的儿子可以读书写字,于是他请了一个先生来教授自己的儿子。

    先生来了之后先教地主的儿子写“一”、“二”、“三”,一就是一个横,二就是两个横,三就是三个横。

    但是刚学完了这三个字,地主儿子就觉得自己学会了!一溜烟跑回了家。

    地主知道自己儿子会写字了,十分开心,对儿子说:“你爸爸有个朋友,姓万,你来写一下吧。”

    没想到过了 3 天,儿子还没写完,地主进了房间询问儿子。儿子哭丧着脸说道:“爸,你这朋友姓啥不好,非要姓万,我要写一万横啊!”

    这其实就是一个监督学习的案例。

    1. “一”、“二”、“三”在机器学习中叫训练集
    2. 上面提到的“一条横线“,”两条横线”这种区分不同汉字的属性叫特征
    3. 地主儿子不断学习的过程叫建模
    4. 学会了识字后总结出来的规律叫模型

    像这样通过训练集,不断识别特征,不断建模,最后形成有效的模型,这个过程就叫“机器学习”!!!(当然,如果我们的训练太少了,AI 就会像地主的儿子一样,总结出错误的模型)

    可以说,机器通过建模,自己定义了什么叫做汉字。

    机器学习的分类

    机器学习根据训练方法大致可以分为 3 大类:

    1. 监督学习
    2. 非监督学习
    3. 强化学习

    监督学习

    监督学习是指我们给算法一个数据集,并且给定正确答案。机器通过数据来学习正确答案的计算方法。

    非监督学习

    非监督学习中,给定的数据集没有“正确答案”,所有的数据都是一样的。非监督学习的任务是从给定的数据集中,挖掘出潜在的结构。

    例如,我们把很多很多猫和狗的照片给机器,但是不给这些照片打任何标签,我们希望机器能自己将这些照片分类。

    非监督和监督的本质的差别在于:

    非监督学习中,虽然照片分为了猫和狗,但是机器并不知道哪个是猫,哪个是狗。对于机器来说,相当于分成了 A、B 两类!

    强化学习

    强化学习更接近生物学习的本质,因此有望获得更高的智能。

    它关注的是智能体如何在环境中采取一系列行为,从而获得最大的累积回报。通过强化学习,一个智能体应该知道在什么状态下应该采取什么行为。

    2019 年 1 月 25 日,AlphaStar(Google 研发的人工智能程序,采用了强化学习的训练方式) 完虐星际争霸的职业选手职业选手“TLO”和“MANA”。

    (完)

  • 相关阅读:
    使用paramiko的问题记录
    python常见异常及解决方法
    linux ps -aux各列含义
    常用技能
    超时程序管理
    跨年的总结和展望
    java json和对象互转
    一些常用功能总结
    ResultSet转成java类对象
    python常用功能总结
  • 原文地址:https://www.cnblogs.com/xhyccc/p/13963932.html
Copyright © 2011-2022 走看看