目录

0x00 什么是机器学习:

0x01 理念:

0x02 机器学习世界的数据

0x03 机器学习的基本任务

#分类任务:

#回归任务:

0x04 监督学习、非监督学习、半监督学习和增强学习

监督学习:

非监督学习:

半监督学习:

增强学习:

0x05 机器学习的其他分类

#在线学习和批量学习(Online Learning and Batch Learning)

批量学习:

在线学习:

#参数学习和非参数学习

0x06 和机器学习相关的”哲学“思考

#数据即算法?

#算法为王?

#如何选择机器学习算法?


0x00 什么是机器学习:

机器学习:让机器去学习(传统算法只是让机器去执行)

最早的机器学习的应用:垃圾邮件的分辨

传统算法的解决思路:

编写规则,定义 垃圾邮件,让计算机去执行。

但是定义规则是很难的,并且规则在不断变化

人类是如何学习的?

机器学习的过程与之类似

人类的大脑是非常厉害的,只需要几个样例,就可以总结出准确率比较高的知识和经验

但是对于机器来说,则需要几百张、几千张样例来实现。

我们的生活中已经大量运用了机器学习:

推荐系统、语音识别、人脸识别、量化交易、医疗诊断、市场分析

未来将有更多的领域需要运用机器学习:

无人驾驶领域、安全领域、医疗领域、自然语言处理领域、矿产勘查、宇宙探索、药物研发...

人工智能> 机器学习算法>深度学习

0x01 理念:

不反对调库,因为不论是在生产环境还是在测试环境,调库都是一个稳定而高效的做法。

反对只会调库,而对概念原理没有理解

深入代码内部,可以帮助我们更好的理解算法,更好的理解算法,可以帮助我们更好的选择算法

而选择算法 恰恰是机器学习领域一个非常重要的环节。

0x02 机器学习世界的数据

数据整体叫数据集

每行数据称为一个样本

除了最后一列,每一列都表达了样本的一个特征

最后一列,是需要机器学习需要学习的那个部分,称为标记

大写字母表表示矩阵,小写字母表示向量(行向量与列向量),数学通常习惯采用列向量

因为数学上习惯使用列向量 ,所以X(1) 这里用列向量的形式表示,X(1)的转置 就是一个行向量 对应 数据表中的一行。

将特征作为坐标轴,构成的坐标系就可以称为一个特征空间,例如,将鸢尾花的萼片长度和萼片宽度抽离出来,作为x轴和y轴,就构成了如下特征空间(feature space):

分类任务的本质就是在切分特征空间:

上例中特征空间是二维的,可以推广到高维空间中

同时 上例中,特征都是比较具体的,可以轻松地量化,但是特征可以很抽象

0x03 机器学习的基本任务

机器学习关注的基本任务主要有两类:分类任务 和 回归任务

(更准确的说是 监督学习主要解决两类问题:分类问题 和 回归问题)

#分类任务:

二分类任务:

例如给你的数据不是猫就是狗、判断邮件是垃圾邮件还是不是垃圾邮件、判断某支股票是涨还是跌

多分类任务:

例如手写数字识别、图像识别、判断发给客户信用卡的风险评级

很多复杂的问题也可以转化为一个多分类任务:例如下围棋、让机器自动玩2048的游戏

很多复杂问题可以转化为一个多分类问题不代表用多分类是解决这类问题的最佳方案

一些算法只支持完成多分类任务,但是多分类的任务可以转化为二分类的任务

还有一些算法天然额可以完成多分类任务

多标签分类:

例如给文章自动加标签,一个文章可以归类到多个标签中。

#回归任务:

标签列是一个连续数字的值,而非一个类别

例如:如果我们想让机器学习房屋的价格,进而预测房屋的价格的话,这就是一个回归任务

有一些算法只能解决回归问题

有一些算法只能解决分类问题

有一些算法的思路既能解决回归问题,又能解决分类问题

一些情况下,回归任务可以简化为分类任务

机器学习的算法本质上获得一个 函数 f(x) ,x就是一个样本资料 ,当我们将样本资料送给f(x)

之后就会得到一个结果 y,如果这个结果是一个类别,就是在解决分类问题,如果这个结果是

一个连续的数值,我们就是在解决回归问题

0x04 监督学习、非监督学习、半监督学习和增强学习

监督学习:

给数据的训练数据拥有”标记“ 或者 ”答案“

非监督学习:

给机器的训练数据没有任何标记 或者 范围

对没有”标记“的数据进行分类,这项任务称为聚类分析

例如:顾客去浏览电商网站,留下了大量的浏览痕迹,电商网站就可以对 浏览的顾客进行 聚类

分析,将客户分为不同的群体

非监督学习的意义:

对数据进行降维处理

1.特征提取:发现某些特征和结果其实是不相关的,例如 信用卡的信用评级和人的胖瘦无关

2.特征压缩:我们并不扔掉任何特征,但是有些特征 之间 的关联非常强,可以压缩为一个特征

,从而将高维特征空间压缩为低维特征向量,常用算法有:PCA算法

降维的意义:方便可视化,方便人类理解

3.异常检测:发现数据中的异常数据

半监督学习:

一部分数据有标记或者答案,另一部分数据没有

这种情况在现实中更为常见:各种原因导致标记的缺失

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

增强学习:

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

监督学习 和半监督学习 仍然是增强学习的基础

Agent:机器学习算法

机器学习算法Agent 往往会进行一些行动action,不同的行动环境就会给予不同的反馈

Agent根据反馈增强学习

0x05 机器学习的其他分类

#在线学习和批量学习(Online Learning and Batch Learning)

批量学习:

批量学习的优点:算法简单且固定,不需要考虑投入使用后如何优化算法

例如:我们今年 训练出了一个垃圾邮件识别系统,但是明年后年垃圾邮件的情况可能会发生

变化,原来训练的模型不好用了,因为垃圾邮件的变化速度是比较慢的,所以,我们可以:定时

重新批量学习

缺点:每次重新批量学习,运算量巨大,在某些环境变化非常快的情况下,甚至不可能

在线学习:

优点:及时反映新的环境变化

问题:新的数据带来不好的变化

解决方案:需要加强对数据进行监控

其他:也适用于数据量巨大,完全无法批量学习的环境

#参数学习和非参数学习

参数学习:

一旦学到了参数,就不再需要 原有的数据集了

例如:房屋的面积x和房屋的价格y 之间的关系可以近似拟合为一条直线 f(x) = a*x +b ,机器学习的任务就是训练出参数a

非参数学习:

不对模型进行过多假设

非参数学习不代表没有参数

0x06 和机器学习相关的”哲学“思考

以下是不同的机器学习算法

数据量和准确率之间的关系,可以看到:虽然不同的机器学习算法

有优有劣,但是随着数据量的增大,这些算法的准确率都在变高

这说明在机器学习这个领域,算法本身并不是那么重要,只要我们

喂给算法的数据足够多,得到的结果就足够准确

甚至有人提出了”数据即算法“的论断

#数据即算法?

数据确实非常重要

数据驱动:高度依赖数据的质量,开发人员需要花费更多的时间收集

更多的数据、提高数据的质量、提高数据的代表性、研究对于我们解决的

问题来说,到底数据的哪些特征才是更重要的特征(特征工程)

#算法为王?

AlphaGo Zero:我们并没有给算法输入任何数据,所有的数据都是算法

本身产生的

#如何选择机器学习算法?

针对你要应用的场景你要选择哪种机器学习算法呢?

奥卡姆的剃刀

简单的就是好的

在机器学习领域,到底什么叫简单?

没有免费的午餐定理:

可以严格得数学推导出,任意两个算法,他们的期望性能是相同的

期望 就是平均值呗,也就说,将任意两个算法,将他们应用于所有的

问题中,可能对于A问题,算法甲更好,但是对于B问题,算法乙更好

,但是总的来说,最后算出来的平均性能是相同的。

即 具体到某个特定问题的时候,有些算法可能更好。但是整体而言,

没有一种算法,绝对比另一种算法好。也就说,脱离具体问题,谈

那个算法好是没有意义的。在面对一个具体问题的时候,尝试使用多

种算法进行对比试验,是必要的

面对不确定的世界,怎么看待使用机器学习进行预测的结果?

例如,根据人脸的特征,机器预测出这个人是罪犯的可能性是百分之60

我们应该如何看待这个预测结果?

机器学习(课堂笔记)Day01:机器学习相关概念简介相关推荐

  1. 机器学习课堂笔记-作业二基本实现思路

    机器学习课堂笔记-作业二基本实现思路 作业2-年收入判断 项目描述 数据集介绍 项目要求 数据准备 环境配置/安装 事先说明 一.概率生成模型 1. 读取数据 整理训练数据 2. 协方差矩阵计算 手动 ...

  2. (B站动力节点老杜MySQL教程)MySQL课堂笔记-day01.txt

    文章目录 文件来源/资料下载: MySQL课堂笔记-day01.txt 1.sql.DB.DBMS分别是什么,他们之间的关系? 2.什么是表? 3.学习MySQL主要还是学习通用的SQL语句,那么SQ ...

  3. 机器学习入门 笔记(二) 机器学习基础概念

    第二章 机器学习基础概念 1.机器的数据 2.机器学习的主要任务 3.监督学习和非监督学习 4.批量.在线学习.参数.非参数学习 5.哲学思考 6.环境的搭建 1.机器的数据 我们以鸢尾花的数据为例. ...

  4. 机器学习读书笔记01 机器学习基础

    顾名思义,机器学习的目的就是让机器具有类似于人类的学习.认识.理解事物的能力.试想一下,如果计算机能够对大量的癌症治疗记录进行归纳和总结,并能够给医生提出适当的建议和意见,那对病人的康复来说,是多么的 ...

  5. 机器学习算法笔记(零)

    机器学习算法笔记(零) 简介 机器学习的定义:对于某类任务 T 和性能度量 P,一个计算机程序被认为可以从经验 E 中学习是指,通过经验 E 改进后,它在任务 T 上由性能度量 P 衡量的性能有所提升 ...

  6. 机器学习读书笔记(开篇)

    新近到手一本<机器学习实战>(Peter Harringtom),兴奋之余,本着好记性不如烂笔头的真理,打算将读书的过程记录下来,形成读书笔记,重点记录自己所理解的算法思想与应用示例.本人 ...

  7. (B站动力节点老杜MySQL教程)MySQL课堂笔记-day02.txt

    文章目录 文件来源/资料下载: MySQL课堂笔记-day02.txt 1.关于查询结果集的去重? 2.连接查询 2.1.什么是连接查询? 2.2.连接查询的分类? 2.3.在表的连接查询方面有一种现 ...

  8. (B站动力节点老杜MySQL教程)MySQL课堂笔记-day03.txt

    文章目录 文件来源/资料下载: MySQL课堂笔记-day03.txt 1.约束 1.1.唯一性约束(unique) 1.2.主键约束 1.3.外键约束 2.存储引擎?(整个内容属于了解内容) 2.1 ...

  9. 机器学习笔记day01

    前言 之前在百度上搜索过许多机器学习的资料,发现关于机器学习的视频资料比较少,而较为有名的是斯坦福大学Andrew Ng教授的公开课.出于个人兴趣原因,虽然是java工程师,但是对机器学习和人工智能方 ...

  10. [机器学习入门] 李弘毅机器学习笔记-7 (Brief Introduction of Deep Learning;深度学习简介)

    [机器学习入门] 李弘毅机器学习笔记-7 (Brief Introduction of Deep Learning:深度学习简介) PDF VIDEO Ups and downs of Deep Le ...

最新文章

  1. HTTP Slow Attack测试工具SlowHTTPTest
  2. 【项目管理】上线切割计划实践
  3. workerman-chat(PHP开发的基于Websocket协议的聊天室框架)(thinkphp也是支持socket聊天的)...
  4. ui边框设计图_UI设计形状和对象基础知识:填充和边框
  5. UITextField属性
  6. 超全!一文看懂 9 种Transformer结构!
  7. 精选素材模板丨极简风简历模板
  8. 开启事务处理插入多条数据 速度也可以
  9. 让学习体系化,造福一大波上进青年
  10. Using Java SecurityManager to grant/deny access to system functions
  11. Oracle中查询树结构start with...connect by prior子句用法
  12. JavaWeb07-HTML篇笔记(三)
  13. iOS开发-- 使用TestFlight进行Beta测试
  14. SharedCache-共享缓存概况和初步运用实例(1)
  15. java pdf 分页_java操作PDF文件,可支持分页、合并、图片转PDF等
  16. 【预测模型】基于粒子群优化宽度学习实现预测matlab代码
  17. 定时备份网站数据文件到阿里网盘
  18. java+图片高保真压缩_java对图片进行“高保真”压缩
  19. c++ 随机生成数独(不保证唯一解)
  20. 华为「天才少年」自制硬萌机器人,开源5小时,GitHub收获317星!

热门文章

  1. 尚学堂1811期python视频_尚学堂1811期人工智能全套视频教程震撼发布,转型百万年薪工程师!...
  2. 前后端分离,vue+springboot导出dbf
  3. Java Exception的日志输出
  4. 小牛叔讲Python第11章:函数的高级用法以及匿名函数
  5. 天池龙珠训练营Python_Task2: 数据结构_(4)字典
  6. JScript服务器运行,jscript模拟的“控制台”程序Web服务器教程
  7. python三国演义人物 统计分析_《python三国演义》人物统计(一),Python,出场,上...
  8. man fgetc fgets getc getchar ungetc
  9. 1934 贝茜放慢脚步(二路归并)
  10. RocketMQ源码解析之消息生产者(获取topic路由信息)