机器学习

  • 简介

    • 机器学习一词来源于Machine Learning的翻译,主要研究计算机模拟或者实现人类的行为,顾名思义,像学生一样,通过学习获取新的知识或者技能,完善自身的知识结构,并不断提升自己的性能。
    • 机器学习是人工智能的核心,其应用编辑人工智能的多个领域,如图像处理、人脸识别、自然语言处理(NLP)、数据挖掘、生物特征识别、检测信用卡欺诈、证券市场分析、语音和手写识别等。
  • 工作原理
    • 传统的计算机工作,人赋予一串指令(称为程序),计算机根据这串指令一步一步执行下去。这个过程因果关系明确,只要人的理解不出偏差,运行结果是可以准确预测的。
    • 机器学习,打破了传统模式,计算机确实还需要人类赋予它一串指令,但这串指令往往不能得到直接的结果,相反,这串指令赋予了机器“学习能力”,从中学习出最终的结果。这个结果往往不能直接编程得到。
    • 这就有了机器学习的一种定义:是一种让计算机利用数据而非指令来进行各种工作的方法。在这背后,关键就是“统计学”思想,它所推崇的“相关而非因果”的概念是机器学习的理论根基。在此基础上可以说机器学习是计算机使用输入给它的数据,利用人类赋予它的算法得到某种模型的过程,其最终目的是使用该模型预测未知数据的信息
  • 分类
    • 说明

      • 机器学习的基础是数据,但是核心是各种算法模型,只有通过这些算法,机器才能消化吸收各种数据,不断完善自身性能。机器学习的算法很多,很多算法是一类的算法只是实现过程略有不同,而有些算法是从其他算法延伸出来的。
      • 根据学习方式的不同一般分为监督学习算法非监督学习算法、半监督学习算法、强化学习算法
    • 监督学习算法
      • 一个人类监督学习的案例:当一个孩子逐渐认识事物的时候,父母会给他一些苹果和橘子,并且告诉他苹果是什么样的,有哪些特征;橘子是什么样的,有哪些特征。经过父母的不断介绍,这个孩子已经知道苹果和橘子的区别,如果孩子在看到苹果和橘子的时候给出错误的判断,父母会指出错误的原因,经过不断的学习,再见到苹果和橘子的时候,孩子立即就可以判断出哪个是苹果哪个是橘子。
      • 上面这个例子就是监督学习的过程,学习中不仅提供事物的具体特征还提供了事物的名称或者分类。不过人类可以去触摸去体会,但是机器不一样,必须提供每个样本的特征及其类别,使用这些数据,通过算法让机器学习,进行判断,逐步减小误差概率。
      • 不妨这样理解:监督学习是从给定的训练数据集中“学习”出一个函数,当新的数据到来时,可以根据这个函数预测结果。监督学习的训练集的数据要求包括输入和输出,也可以说是包括特征和目标,目标是人类事先标注的。
      • 监督学习主要应用于分类(Classify)和回归(Regression)。常见的监督学习算法有**k-近邻算法(KNN)、决策树、朴素贝叶斯(NB)、Logistic回归、支持向量机(SVM)、AdaBoost算法、线性回归(LR)、局部加权线性回归(LWLR)、收缩和树回归等。
    • 非监督学习算法
      • 一个人类非监督学习的案例:当一个孩子逐渐认识事物的时候,父母会给他一些苹果和橘子,但是没有告诉他哪个是苹果哪个是橘子,而是让他根据两个事物的特征自己进行判断,会把苹果和橘子分到两个不同的组中。下次再给孩子一个苹果,他会把苹果分到苹果组中,而不是分到橘子组中。
      • 上面的这个例子就是非监督学习的过程,也就是说,在学习的过程中,只是提供事物的具体特征,但不提供事物的名称,让学习者自己总结归纳。所以非监督学习又被称为归纳性学习(Clustering),是指将数据集合分成由类似的对象组成的多个簇或者组的过程。当然,在机器学习的过程中,人类只提供样本的特征,使用这些数据,通过算法让机器学习,进行自我归纳,以达到同组内的事物特征非常接近,不同组的事物特征相距很远的结果。
      • 非监督学习主要应用于聚类。常见的非监督学习算法有k-均值(k-means)、Apriori和FP-Growth等。
    • 增强学习算法
      • 我们都玩过迷宫游戏,从一个入口进去,穿过不同的路线,从另外一个入口出来,中间很多路是不通的。如何走出来能?只有分布==分别尝试不同的路线,如果一个走错,那么久记录下来,再尝试其他的路线,有可能回到上一个路口,走过的路是否正确,自己心中已经有一个规划,最终找到最合理的路径。这就是增强学习的一个例子。
      • 增强学习(Reinforcement Learning,RL)又叫做强化学习,是近年来机器学习和智能控制领域的主要方法之一。通过增强学习,人类或者机器可以知道在上面状态下应该采取什么样的行为。增强学习是从环境状态到动作的映射的学习,把这个映射称为策略,最终学习到一个合理的策略。它通过试错的方式获得最佳策略。另外,由于增强学习指导信息很少,往往事后(最后一个状态)才得到反馈信息,以及采取某个行动是获得正回报还是负回报,如何将回报分配给前面的状态以改进相应的策略,规划下一步动作。
      • 增强学习的算法主要有动态规划、马尔可夫决策过程等。
    • 简要比对
      • 监督学习:提供数据特征,也提供数据类别,主要用于预测和分类。
      • 非监督学习:提供数据特征,不提供数据类别,主要用于发现事物内部结构。
      • 增强学习:在学习过程中根据外部状态实时调整自己的策略,主要用于路径规划。
  • 与深度学习关系
    • 机器学习是人工智能的一部分,而深度学习(源于人工神经网络的研究)是机器学习的一部分。即人工智能>机器学习>深度学习。
  • 机器学习术语
    • 数据集

      • DataSet,数据的集合,每一条数据成为样本(Sample),一般而言每一个样本相互独立。(特殊的是隐含马尔可夫模型和条件随机场模型)。
      • 训练集(Training Set)
        • 用来训练模型的数据集,一般选取一部分数据作为训练集。
      • 测试集(Test Set)
        • 用来测试、评估模型泛化能力的部分,测试集不会用于训练,对模型而言是“未知”的。一般,选取一部分数据作为测试集。
      • 交叉验证集(CV Set)
        • 比较特殊的一部分数据,它是用来调整模型具体参数的。
      • 训练集用来估计模型,交叉验证集用来确定网络结构和控制模型复杂程度的参数,测试集用来检验最终选择最优的模型性能如何。一个典型划分为训练集占50%其余各占25%。但是,当样本过少时这个划分就不太合理,此时选取少部分作为测试集对其余N个样本使用K折交叉验证法。
    • 属性或特征
      • 对于每个样本,通常具有一些“属性”(Attribute)或者说是“特征”(Feature),特征所取的具体的值为“特征值”(Feather Value)。特征和样本所组成的空间被称为“特征空间”(Feather Space)和样本空间(Sample Space),可以把它们简单理解为特征和样本“可能存在的空间”。
    • 标签或类别
      • 与之对应的有“标签空间”(Label Space),它描述了模型的输出“可能存在的空间”;当模型是分类器时,通常会称为“类别空间”。
  • 补充说明
    • 参考书籍推荐为《Python3数据分析与机器学习实战》
    • 机器学习领域常用Python库有
      • 矩阵操作函数库(numpy)
      • 科学计算的核心包(scipy)
      • Python绘图库(matplotlib)
      • 数据分析包(pandas)
      • 机器学习函数库(scikit-learn,sklearn)
      • 统计建模工具包(StstsModels)
      • 深度学习框架(TensorFlow)
      • 深度学习函数库(keras)

机器学习-机器学习概论(入门机器学习基础知识)相关推荐

  1. 【机器学习】聚类【Ⅰ】基础知识与距离度量

    主要来自周志华<机器学习>一书,数学推导主要来自简书博主"形式运算"的原创博客,包含自己的理解. 有任何的书写错误.排版错误.概念错误等,希望大家包含指正. 由于字数限 ...

  2. python基础一入门必备知识-Python数据分析入门必备基础知识

    今天,老师要带大家解数据分析的定义.核心思路.应用领域以及开发流程,向大家全方位展示数据分析入门必备基础知识,全都是干货哦!虽然看完本文,不能让大家立马变身为一名数据分析师,但是能让大家对数据分析有一 ...

  3. GPS 入门 1 —— 基础知识[转]

    GPS 入门 1 -- 基础知识 [转] (2008-10-11 18:14:57) <script> var $tag='gps,杂谈'; var $tag_code='b7179ced ...

  4. 小白入门SQL基础知识汇总

    小白入门SQL基础知识汇总 课程链接:link

  5. 炒股入门初学者基础知识讲解,如何掌握新手炒股入门基础知识

    对一些刚入股市的新手来讲,要学习的股票术语和一些图标实在是太多了,很多的新手在炒股的时候不知道炒股的技巧是什么,毕竟万事开头难,所以大家要多了解一些基础的知识.下面为大家介绍下QR技术分析社区中关于炒 ...

  6. 炒股入门基础知识之炒股入门?炒股入门股票基础知识该掌握哪些

    最近几年越来越多的朋友们开始进入股票市场,为了也是自己在业余的时间,可以有一个事情做,如果能够赚钱的话自然是更好的,但是如果赔钱自己也能够乐观的面对,毕竟投资是有风险的,我们为大家介绍一下<阿尔 ...

  7. C语言零基础入门——1.基础知识与环境搭建。

    C语言零基础入门--1.基础知识与环境搭建. 好了.终于迎来了第一篇文章,这篇文章要做的事情非常简单,主要有三个事情 ​ 第一:C语言的介绍. ​ 第二:计算机的基础知识. ​ 第三:C语言的环境安装 ...

  8. PLC编程入门-01基础知识介绍

    PLC编程入门-01基础知识介绍 PLC的组成结构 PLC编程语言: PLC输入输出的特点 输入 输出 PLC的组成结构 简图 明细图 CPU:控制器和运算器本身就是CPU主要组成部分,和PC的CPU ...

  9. 【机器学习】扎实入门机器学习的路子

    今天是一点经验分享,包大人当初用这个路子入门机器学习的. 前言 回顾了下我当初入门机器学习方式,发现还是有些特点的.因为是科班出身,所以是那种稳扎稳打,自顶向下,理论结合实践的方式,比较注重用代码实现 ...

  10. 1000行代码入门python-Python基础知识和工作环境

    Python基础知识和工作环境 第一堂课的教学目标是: [1]掌握Python的基础知识,比如,谁是Python的创始人,它有哪些特点: [2]Python的开发工具Anaconda的操作界面是怎样的 ...

最新文章

  1. 原生html js css绘制折现图,HTML5教程 Chart.js自定义提示折线图
  2. 人群场景的属性--Deeply Learned Attributes for Crowded Scene Understandin
  3. 网站建设难?三个技巧来帮你!
  4. Java中的某些接口为什么没有任何方法?
  5. JVM、JRE和JDK的概念
  6. 一分钟开启Tomcat https支持
  7. 8 .5 .5 创建操作员
  8. 创建一个catkin工作空间
  9. jsp复选框追少选择一个否则不能提交_Filecoin的惩罚机制/至联云IPFS:选择无良矿商,你的抵押币就回不来了...
  10. Burpsuite学习(2)
  11. 数据结构期末复习之选择排序
  12. 什么时候用removeUnusedSpriteFrames和removeUnusedTextures
  13. 【语音编码】基于matlab LPC编解码【含Matlab源码 554期】
  14. 100个javaweb实战项目(视频+源码+文档),带你上天!
  15. 闲鱼x-sign, x-mini-wua算法签名接口调用
  16. List集合排序Collections.sort()方法的一个容易忽略的小问题
  17. [Irving]SQL去重复-DISTINCT用法
  18. excel行列互换_excel:关于选择性粘贴,你可能还不知道的操作
  19. 必应每日一图直接获取及接口
  20. c语言机考答案,c语言题库答案机考

热门文章

  1. MyBatis 编程式开发中的核心对象及其作用?
  2. Spring 核心容器类BeanFactory
  3. Aop动态代理解决问题
  4. 类加载器的概述和分类
  5. hystrix之熔断
  6. Spring注解编程基石(四)
  7. Spring Cloud异常
  8. 应用指定显示到副屏_LED灯杆屏广泛应用逐渐成为智慧城市信息化的重要窗口
  9. BAT Window批量重命名
  10. Linux系统管理初步(七)系统服务管理、chkconfig与systemd 编辑中