机器学习算法可以分为:

  • 监督学习
  • 非监督学习
  • 半监督学习
  • 增强学习

监督学习:给机器的训练数据拥有“标记”或者“答案”,例如:

我们需要告诉机器左边的画面是一只狗,而右边的照片是一只猫。同理对于MNIST数据集,给机器图像信息后还应该附上标记信息,如图所示:

运用监督学习的场景举例:

  • 图像已经拥有了标定信息
  • 银行已经积累了一定的客户信息和他们信用卡的实用信息
  • 医院已经积累了一定的病人信息和他们最终确诊是否患病的情况
  • 市场积累了房屋的基本信息和最终成交的金额
  • ......

此课程中学习的大部分算法属于监督学习算法

  • K近邻
  • 线性回归和多项式回归
  • 逻辑回归
  • SVM
  • 决策树和随机森林

非监督学习:给机器训练数据没有任何“标记”或者“答案”

聚类分析:对没有“标记”的数据进行分类

非监督学习一个非常重要的作用就是对数据进行降维处理。

  • 特征提取:信用卡的信用评级和人的胖瘦无关?无关的特征丢掉
  • 特征压缩:PCA

降维处理的意义:方便可视化

非监督学习还可以进行异常检测

如图所示:图中两个红点明显与其他点脱离,如果它们同属与一种数据,我们可以将这两个点归类为异常,将其去除。当突然图中为二维点,在高维中我们会使用相应的算法剔除异常数据。

半监督学习:一部分数据有“标记”或者“答案”,另一部分没有

相对监督学习,更常见的是各种原因产生的标记缺失的半监督学习。

通常都先使用无监督学习手段对数据做处理,之后使用监督学习手段作模型的训练和预测。

增强学习:根据周围环境的情况,采取行动,根据采取行动的结果,学习行动方式。

监督学习和半监督学习是基础。

Python3玩转儿 机器学习(3)的更多相关文章

  1. Python3玩转儿 机器学习(2)

    机器学习的基本任务 分类任务 回归任务 分类任务 手写输入数字识别 分类任务: 二分类任务 判断邮件是垃圾邮件或者不是垃圾邮件 判断发放给客户信用卡有风险或者没有风险 判断病患良性肿瘤还是恶性肿瘤 判 ...

  2. Python3玩转儿 机器学习(1)

    机器学习的基础概念 数据 著名的鸢尾花数据 https://en.wikipedia.org/wiki/lris_flower_data_set          lris setossa       ...

  3. Python3玩转儿 机器学习(4)

      jupyternotebook 的使用方法¶   最基本的使用¶ In [1]: 1+2 Out[1]: 3   菜单树¶   File¶ |------> New Notebook --- ...

  4. Python3玩转儿 机器学习(5)

    numpy 的使用 numpy.array基础 import numpy numpy.__version__ #查询当前numpy的版本 '1.14.0' import numpy as np np. ...

  5. 5分钟教你玩转 sklearn 机器学习(上)

    假期结束,你的状态有没有回归?那么,放空脑袋后,先来学习学习,欢迎大家继续关注腾讯云技术社区. 作者:赵成龙 这是一篇很难写的文章,因为我希望这篇文章能对大家有所帮助.我不会给大家介绍机器学习,数据挖 ...

  6. Python3玩转单链表——逆转单向链表pythonic版

    [本文出自天外归云的博客园] 链表是由节点构成的,一个指针代表一个方向,如果一个构成链表的节点都只包含一个指针,那么这个链表就是单向链表. 单向链表中的节点不光有代表方向的指针变量,也有值变量.所以我 ...

  7. Python3入门机器学习经典算法与应用

    <Python3入门机器学习经典算法与应用> 章节第1章 欢迎来到 Python3 玩转机器学习1-1 什么是机器学习1-2 课程涵盖的内容和理念1-3 课程所使用的主要技术栈第2章 机器 ...

  8. Python3入门机器学习经典算法与应用☝☝☝

    Python3入门机器学习经典算法与应用 (一个人学习或许会很枯燥,但是寻找更多志同道合的朋友一起,学习将会变得更加有意义✌✌) 使用新版python3语言和流行的scikit-learn框架,算法与 ...

  9. 机器学习(1)——K近邻算法

    KNN的函数写法 import numpy as np from math import sqrt from collections import Counter def KNN_classify(k ...

随机推荐

  1. 02_LInux的目录结构_我的Linux之路

    前两节已经教大家怎么在虚拟机安装Linux系统 这一节我们来学习Linux的目录结构,讲一下linux的整个系统架构,提前熟悉一下Linux 在Linux或Unix系统中有一个非常重要的概念,就是一切 ...

  2. alpha冲刺第四天

    一.合照 二.项目燃尽图 三.项目进展 今天实现了登录界面和服务器的连接了,牵手成功. 一些具体的界面细化实现,一些button的响应实现 四.明日规划 登录界面和服务器的连接实现耗费了太多时间,接下 ...

  3. beta冲刺用户测评-咸鱼

    测评人:庄加鑫-咸鱼 测评结果  一.使用体验数据加载响应很快!页面切换丝滑流畅!UI有点偏暗,有些字被覆盖了.页面布局过于居中,两侧空白范围较大.总体功能完善.二.登录.注册.忘记密码界面管理员登录 ...

  4. 单向链表在O(1)时间内删除一个节点

    说删链表节点,第一时间想到就是遍历整个链表,找到删除节点的前驱,改变节点指向,删除节点,但是,这样删除单链表的某一节点,时间复杂度就是O(n),不符合要求: 时间复杂度是O(n)的做法就不说了,看看O ...

  5. ExecutorService实际上是一个线程池的管理工具

    在Java5之后,并发线程这块发生了根本的变化,最重要的莫过于新的启动.调度.管理线程的一大堆API了.在Java5以后,通过Executor来启动线程比用 Thread的start()更好.在新特征 ...

  6. Flask 扩展 Mail

    安装 pip install flask-mail from flask import Flask from flask_mail import Mail, Message app = Flask(_ ...

  7. 翻译:CREATE FUNCTION语句(已提交到MariaDB官方手册)

    本文为mariadb官方手册:CREATE FUNCTION的译文. 原文:https://mariadb.com/kb/en/library/create-function/我提交到MariaDB官 ...

  8. python之路--day10-闭包函数

    1.命名关键字参数 格式:在*后面的参数都是命名关键字参数 特点: 1.必须被传值 2.约束函数的调用者必须按照key=value的形式传值 3.约束函数的调用者必须用我们指定的key名 def au ...

  9. 使用JDBC中的出现的乱码和查询无结果问题

    使用JDBC中的问题 连接的后出现查询结果是乱码. 1.可能是代码的编码与数据库的编码不同 ​ 有可以将二者都设置为UTF-8 2.如果比较懒得话可以只设代码为UTF-8 mysql 连接url中us ...

  10. Linux上 ps 命令的用法

    ps a 显示现行终端机下的所有程序,包括其他用户的程序.2)ps -A 显示所有程序. 3)ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示. 4)ps -e 此 ...