前言

在刚入门的时候,我们很容易被这些词语弄得眼花缭乱,如人工智能、机器学习、深度学习及强化学习等等。它们之间互相联系,却有一定区别。我们学习人工智能AI,需要对这些词语有一定的概念,不然,研究了这么久的算法和知识,却连我们在干什么都不知道,就十分不好,也会影响我们学习的进度。

人工智能

人工智能(Artificial Intelligence),缩写为AI。它是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。人工智能是包括十分广泛的科学,它由不同的领域组成,如机器学习,计算机视觉等等,总的说来,人工智能研究的一个主要目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作。

机器学习

Maching Learning,是实现人工智能的一种手段,广泛应用于自然语言处理、(NLP)、计算机视觉(CV)及推荐系统等等方面。能应用机器学习的场景很多,如人脸识别、图像处理和车牌识别等等,这些在我们生活中以及很常见了。

机器学习主要分为监督学习,无监督学习和半监督学习三种。从算法上来说有贝叶斯分类,决策树,线性回归,决策树和森林模型,主成分分析,流行学习,k-means聚类,高斯混合模型等等。

从大体上来讲,机器学习包括深度学习和强化学习,也就是说,深度学习和强化学习均是机器学习的一种技术。总之,先进行机器学习,打好基础,再进行其他方向的发展,是一个较好的策略。

深度学习

Deep Learning,由于深度学习在现代机器学习中的比重和价值非常巨大,因此常常将深度学习单独拿出来说。神经网络,是深度学习方向的主要工具。我们知道,在机器学习中也有神经网络,而深度学习中,神经网络更复杂,涉及的层数更多。我们了解的DNN(深度神经网络),CNN(卷积神经网络),RNN(循环神经网络),LSTM(长短期记忆网络)都是隶属于深度学习的范畴。

强化学习

Reinforcement Learning,又称再励学习或者评价学习。也是机器学习的技术之一。所谓强化学习就是智能系统从环境到行为映射的学习,以使奖励信号(强化信号)函数值最大,由于外部给出的信息很少,强化学习系统必须依靠自身的经历进行自我学习。通过这种学习获取知识,改进行动方案以适应环境。强化学习最关键的三个因素是状态,行为和环境奖励。

深度强化学习

深度强化学习是深度学习与强化学习的结合,具体来说是结合了深度学习的结构和强化学习的思想,但其侧重点在深度学习上,解决的依然是决策类问题,不过需要借助深度神经网络来解决拟合。

深度强化学习是一种与环境交互的训练神经网络方法,无现成数据,数据在与环境交互中产生。深度强化学习采用深度神经网络作为函数拟合器。

一张图来概括它们之间的关系

转自:https://zhuanlan.zhihu.com/p/123211148

ML、DL及RL介绍和区别的更多相关文章

  1. 快速理解Parquet的DL和RL

    关于Parquet的详细介绍,请参考: 新一代列式存储格式Parquet,此文中对Parquet做了详细的介绍,这里不做重复介绍,但其中关于Definition Level(DL)和Repeated ...

  2. 2017 年 机器学习之数据挖据、数据分析,可视化,ML,DL,NLP等知识记录和总结

    今天是2017年12月30日,2017年的年尾,2018年马上就要到了,回顾2017过的确实很快,不知不觉就到年末了,再次开篇对2016.2017年的学习数据挖掘,机器学习方面的知识做一个总结,对自己 ...

  3. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

  4. [转]MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    本篇文章是对MySQL数据库引擎介绍.区别.创建和性能测试进行了详细的分析介绍,需要的朋友参考下   数据库引擎介绍 MySQL数据库引擎取决于MySQL在安装的时候是如何被编译的.要添加一个新的引擎 ...

  5. jar包和war包的介绍和区别

    jar包和war包的介绍和区别 Java程序员的日常 关注 做Java开发,jar包和war包接触的挺多的,有必要对它们做一个深入的了解,特总结整理如下: 1.jar包的介绍 JAR(Java Arc ...

  6. 【转】VMware网络连接模式—桥接、NAT以及仅主机模式的详细介绍和区别

    ☞ 本文主要介绍软件『VMware Workstation(虚拟机)』的相关内容:VMware网络连接模式—桥接.NAT以及仅主机模式的详细介绍和区别. 其下列版本/分支可以参考本文: 全部版本/分支 ...

  7. 杂项-Java:jar 包与 war 包介绍与区别

    ylbtech-杂项-Java:jar 包与 war 包介绍与区别 1.返回顶部 1. 做Java开发,jar包和war包接触的挺多的,有必要对它们做一个深入的了解,特总结整理如下: 1.jar包的介 ...

  8. SQL中varchar和nvarchar的基本介绍及其区别

    SQL中varchar和nvarchar的基本介绍及其区别 varchar(n) 长度为 n 个字节的可变长度且非 Unicode 的字符数据.n 必须是一个介于 1 和 8,000 之间的数值.存储 ...

  9. ML,DL核心数学及算法知识点总结

    ML,DL核心数学及算法知识点总结:https://mp.weixin.qq.com/s/bskyMQ2i1VMNiYKIvw_d7g

随机推荐

  1. omnet++:cMessage、cSimpleModule、cGate

    cMessage Message可以被调度(self-message).取消.从一个Gate发送出去.直接发给另一个module:所有以上,都是通过cSimpleModule来实现的. Message ...

  2. git命令合集

    ##快捷键 ##一. 快捷键 1. 清屏快捷键 control+L 2. vim快捷操作 * control+b 往上翻页 * Control+f 往下翻页 * shift+g 回到末尾 3. oh ...

  3. LeetCode-107-二叉树的层序遍历 II

    二叉树的层序遍历 II 题目描述:给定一个二叉树,返回其节点值自底向上的层序遍历. (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历) 示例说明请见LeetCode官网. 来源:力扣(Leet ...

  4. Typora使用教程 之 PicGo集成做图床

    目录 一.Typora是什么 二.研究它的原因 三.需要解决的问题 四.解决图床问题 1.下载PicGo 2.安装下载的PicGo,并根据下图所示配置(必须安装nodejs,否则插件一直是" ...

  5. SQL从零到迅速精通【实用函数(3)】

    1.LOWER()函数 使用LOWER函数将字符串中所有字幕字符转换为小写,输入语句如下. SELECT LOWER('BEAUTIFUL'),LOWER('Well'); 2.UPPER()函数 S ...

  6. CentOS Linux服务器安装Nginx

    1.安装nginx前,我们首先要确保系统安装了g++.gcc.openssl-devel.pcre-devel和zlib-devel软件,可通过如图所示命令进行检测,如果以安装我们可以通过图二所示卸载 ...

  7. Swagger 接口文档

    目录 Swagger 介绍 Swagger 依赖 SpringBoot 集成 Swagger 配置类 常用注解 效果示例 Swagger 介绍 Swagger UI 允许任何人(无论是开发团队还是最终 ...

  8. 35个高级python知识点

    No.1 一切皆对象 众所周知,Java中强调"一切皆对象",但是Python中的面向对象比Java更加彻底,因为Python中的类(class)也是对象,函数(function) ...

  9. bash shell 快捷键

     Bash Shell 快捷键: Ctrl + a - 跳到行首      Ctrl + e - 跳到行尾     Ctrl + k - 从光标处删除到行尾     Ctrl + l - 清屏,类似  ...

  10. k8s原来这么简单(一)核心组件与工作原理

     k8s官方文档:https://kubernetes.io/zh/docs/home/ 前提 掌握容器技术:Docker,Containerd等 K8S优势 使用简单,少量人/小团队可以轻松维护大型 ...