写点什么

机器学习笔记(一):基本概念

  • 2020 年 2 月 17 日
  • 本文字数:1354 字

    阅读完需:约 4 分钟

机器学习笔记(一):基本概念

好记性不如烂笔头,打算以博客连载的方式把最近机器学习的一些学习笔记记下来,机器学习涉及的知识点很多,时间一长很容易遗忘,写在博客上也方便自己随时查阅及复习。学习笔记偏重实用工程,尽量不涉及复杂的数学推导。



机器学习分类

  • 监督学习:训练数据中带有标记(分类、回归);

  • 无监督学习:训练数据中无标记(聚类、异常检测、密度分析);

  • 半监督学习:训练数据中带有少量标记(分类、回归);

  • 强化学习:通过状态空间的大量试错学习达成最佳决策(决策);

  • 深度学习:利用多层神经网络进行监督、无监督或是强化学习的方法(分类、回归、聚类)。


数据划分

  • 留出法:直接将数据集 D 划分为两个互斥的集合,一个集合作为训练集 S,另一个作为测试机 T。

  • 交叉验证法:将数据集 D 划分为 k 个大小相同的互斥子集,每次用 k-1 个子集作为训练集,余下的作为测试集,可进行 k 次训练和验证,最后取测试结果的均值。

  • 自助法:有 m 个样本的数据集 D,每次随机从 D 中挑选一个样本放入 D‘,再把此样本放回 D 中,重复执行 m 次后,得到训练数据集 D’。约有 1/3 的数据没在训练数据中出现过,用于包外估计。(数据集较小时使用效果较好)


模型评估

泛化能力:指模型对未知数据的预测能力。


  • 泛化误差:偏差、方差、噪声之和。

  • 过拟合:模型在训练及上表现很好,但在未知数据上不能很好的预测。

  • 欠拟合:模型在训练集和测试集上都不能很好的预测。


性能度量指标:

  • 均方误差:m 个样本的方差的平均数,均方误差小的模型性能好,主要用于回归。


  • 错误率:分类错误的样本占样本总数的比例。

  • 精度:分类正确的样本占样本总数的比例。

  • 查准率:真正例样本数(TP)和预测结果是正例的样本数(TP(真正例数)+FP(假正例数))的比值。


  • 查全率(召回率):真正例样本数(TP)和真实正例样本数(TP(真正例数)+FN(假反例数))的比值。


  • P-R 图:以查全率做 x 轴,查准率做 y 轴的平面图。判断模型优劣的两种方式:1、平衡点(查全率=查准率时的取值)更大的性能更好;2、曲线没有交叉的情况下,被“包住”的曲线模型性能弱于外侧的模型,如下图,A 模型优于 C 模型。



  • 混淆矩阵:用在分类问题中的 NxN 矩阵,N 为分类的个数。如下图猫、狗、兔子的三分类系统,每一列代表预测值,每一行代表实际值,对角线两边的都是预测错误的,从混淆矩阵中可以很直观地发现问题在哪里。



  • ROC 和 AUC:ROC(受试者工作特征曲线)以假正例率为 x 轴,真正例率为 y 轴,AUC 是 ROC 曲线下的面积,面积越大分类效果越好(真正例率越高,假正例率越低越好)。



偏差(Bias):反映的是模型在样本上的输出与真实值之间的误差,即模型本身的精准度,高偏差,即为欠拟合。


方差(Variance):反映的是同样大小的训练集的变动导致的学习性能的波动,即刻画了数据扰动所造成的影响,即模型的稳定性。高方差,即为过拟合。


模型复杂度和偏差、方差的关系如下图,随着模型复杂度增大,偏差减小,方差变大,预测错误率在模型复杂度到达一定程度后,反而会增大,偏差和方差从某种程度上说是一对矛盾体,很难做到偏差和方差都很低,只能从偏差、方差和模型复杂度中找到一个平衡点。



2020 年 2 月 17 日 11:30591

评论

发布
暂无评论
发现更多内容

Tensor:Pytorch神经网络界的Numpy

华为云开发者社区

神经网络 数组 PyTorch Numpy Tenso

惠及百万用户 医保“上云”有了新思路

浪潮云

云计算

Java测试框架九大法宝

FunTester

自动化测试 JUnit 测试框架 selenium testNG

读完SpringBoot,Cloud,Nginx与Docker技术,我拿到了阿里offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

xposed 入门之修改手机 IMEI

Qunar技术沙龙

android 程序员 App 经验分享 安卓

Java 程序性能优化“学习日记”

Java 编程 面试 IT 计算机

算法有救了!GitHub 上神仙项目手把手带你刷算法,Star 数已破500k

Java 编程 程序员 面试 算法

毕业六年本科,去年疫情期间备战二个月,阿里巴巴四面成功!定级 P7

Java 程序员 架构 面试 IT

经过两年努力,我终于进入腾讯(PCG事业群4面总结)

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

百分点科技参加MIT数智未来创新峰会 入选产业数字化生态图谱

百分点科技技术团队

高频面试题-请把Java垃圾回收器说清楚

Java 编程 架构 面试 JVM

为什么安全性在托管中变得越来越重要

九河云安全

一文搞懂指标采集利器 Telegraf

尔达Erda

学习 微服务 开发者 云原生 插件开发

接口返回值一定不允许使用枚举类型吗?

skow

Java 面试 后端 开发规范

面试进阶齐飞!霸榜GitHub的 Java 全栈笔记太香了!

Java 编程 程序员 IT 计算机

凭借一份“面试真经pdf”,我四面字节跳动,拿下1-2级offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

收获颇丰!这份阿里架构师纯手敲JDK源码全彩小册可以打满分

Java架构追梦

Java 阿里巴巴 架构 面试 jdk源码

如何用Camtasia添加视频水印?

淋雨

视频剪辑 Camtasia 录屏软件

渣本全力以赴33天,四面阿里妈妈(淘宝联盟),拿下实习岗offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

28天读完349页,这份阿里面试通关手册,助我闯进字节跳动

Java~~~

Java 面试 算法 多线程 架构师

这波性能优化,太炸裂了!

why技术

Java 性能优化 JVM

MySQL中的DEFINER(定义者)是什么

Simon

MySQL

spring cloud 在国内中小型公司能用起微服务来吗?

Java 程序员 架构 面试 IT

2021 斩获 90K 月薪的 Spring 全家桶:文档 + 面试题 + 学习笔记 + 思维导图

编程 架构 微服务 IT 计算机

“助力金九银十”25 大Java后端面试指南,3000道面试题解析

Java 编程 程序员 面试 IT

经验分享:我是如何拿下微软、滴滴、百度等 20家大厂的 Offer?

Java 程序员 架构 面试 IT

社招三面阿里“落榜”,幸获内推名额,4面揽下美团offer

公众号_愿天堂没有BUG

Java 编程 程序员 架构 面试

台达AS228T_CanOpen_VFD_X

林建

台达 AS228T Canopen 功能块 E变址

Spring Boot 实战派,让开发像喝水一样简单!

Java 程序员 架构 面试 IT

2021 年主要网络安全威胁,及时发现提早规避风险

九河云安全

使用Micronaut框架构建一个微服务网络.

Java 编程 架构 面试 程序人生

机器学习笔记(一):基本概念_云计算_华为云开发者社区_InfoQ精选文章