好吧,只好拆分为上下两篇发布了>_<

终于肝出来了,今天就是除夕夜了,祝大家新快乐!^q^


《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础 (上)(逻辑回归、Softmax回归、信息论基础)(DL笔记整理系列)

3043331995@qq.com

https://fanfansann.blog.csdn.net/

https://github.com/fanfansann/fanfan-deep-learning-note

作者:繁凡

version 1.0  2022-1-20

声明:

1)《繁凡的深度学习笔记》是我自学完成深度学习相关的教材、课程、论文、项目实战等内容之后,自我总结整理创作的学习笔记。写文章就图一乐,大家能看得开心,能学到些许知识,对我而言就已经足够了 ^q^ 。

2)因个人时间、能力和水平有限,本文并非由我个人完全原创,文章部分内容整理自互联网上的各种资源,引用内容标注在每章末的参考资料之中。

3)本文仅供学术交流,非商用。所以每一部分具体的参考资料并没有详细对应。如果某部分不小心侵犯了大家的利益,还望海涵,并联系博主删除,非常感谢各位为知识传播做出的贡献!

4)本人才疏学浅,整理总结的时候难免出错,还望各位前辈不吝指正,谢谢。

5)本文由我个人( CSDN 博主 「繁凡さん」(博客) , 知乎答主 「繁凡」(专栏), Github 「fanfansann」(全部源码) , 微信公众号 「繁凡的小岛来信」(文章 P D F 下载))整理创作而成,且仅发布于这四个平台,仅做交流学习使用,无任何商业用途。

6)「我希望能够创作出一本清晰易懂、可爱有趣、内容详实的深度学习笔记,而不仅仅只是知识的简单堆砌。」

7)本文《繁凡的深度学习笔记》全汇总链接:《繁凡的深度学习笔记》前言、目录大纲

8)本文的Github 地址:https://github.com/fanfansann/fanfan-deep-learning-note/ 孩子的第一个 『Github』!给我个 ⭐Starred\boxed{⭐ \,\,\,\text{Starred}}⭐Starred​ 嘛!谢谢!!o(〃^▽^〃)o

9)此属 version 1.0 ,若有错误,还需继续修正与增删,还望大家多多指点。本文会随着我的深入学习不断地进行完善更新,Github 中的 P D F 版也会尽量每月进行一次更新,所以建议点赞收藏分享加关注,以便经常过来回看!

如果觉得还不错或者能对你有一点点帮助的话,请帮我给本篇文章点个赞,你的支持是我创作的最大动力!^0^

要是没人点赞的话自然就更新慢咯 >_<

文章目录

  • 《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础 (上)
    • 3.1 手写数字分类问题
      • 3.1.1 手写数字图片数据集
      • 3.1.2 构建模型
      • 3.1.3 误差计算
      • 3.1.4 非线性模型
      • 3.1.4 手写数字图片识别实战
        • 3.1.4.1 TensorFlow2.0 实现
        • 3.1.4.2 PyTorch 实现
    • 3.2 逻辑回归(Logistic Regression, LR)
      • 3.2.1 决策边界
      • 3.2.2 逻辑回归模型
      • 3.2.3 代价函数
      • 3.2.4 优化方法

一文让你完全弄懂 信息论基础 与 softmax 回归实战《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础(下)目录:
    3.3 信息论基础
      3.3.1 信息论
      3.3.2 香农熵
      3.3.3 相对熵(KL 散度)
      3.3.4 交叉熵
      3.3.5 JS 散度
      3.3.6 Wasserstein 距离
      3.3.7 结构化概率模型
    3.4 Softmax 回归
      3.4.1 Softmax 回归模型
      3.4.2 优化方法
      3.4.3 权重衰减
      3.4.4 Fashion-MNIST 数据集图片分类实战
    3.5 Softmax 回归与逻辑回归的关系
      3.5.1 Softmax 回归与逻辑回归的关系
      3.5.2 多分类问题的 Softmax 回归与 k 个二元分类器
    3.6 面试问题集锦
    3.7 参考资料

本章话题 第 3 章(上)(点击即可跳转哟):
话题 1 :什么是分类问题?

《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础 (上)

话题 1 :什么是分类问题?

分类问题(classification),即找一个函数判断输入数据所属的类别,也即预测预测值属于某一段连续的实数区间的方法。分类问题可以是二类别问题(是 / 不是),也可以是多类别问题(在多种类别中判断输入数据具体属于哪一个类别)。与回归问题(regression)相比,分类问题的输出不再是连续值,而是离散值,用来指定其属于哪个类别。分类问题在现实中应用非常广泛,比如垃圾邮件识别,手写数字识别,人脸识别,语音识别等。

图源:[15]

  

  本章我们先从简单的多分类手写数字图片分类问题实战开始入手,使用 简单神经网络 解决分类问题,带大家切身体会一下分类问题的流程以及神经网络的魅力,我们将在第 6 章 神经网络与反向传播算法 中详细讲解神经网络,并使用诸如 通用逼近定理(universal approximation theorem)等理论来尝试说明神经网络为何如此强大。在体验完神经网络解决手写数字分类问题以后,我们将详细介绍机器学习中关于分类问题的线性分类器:解决二分类问题的 逻辑回归 以及由其拓展而来的解决多分类问题的 softmax 回归,理解和掌握这些理论,是机器学习的基础。

3.1 手写数字分类问题

3.1.1 手写数字图片数据集

  我们前面讲过机器学习是一种需要从数据中间学习的行为,因在解决机器学习问题之前我们需要先采集大量的真实样本数据 (x,y)(x,y)(x,y) 。我们以手写的数字图片识别为例,如图 3.1 所示,我们需要收集大量的由真人书写的 0∼90\sim 90∼9​​ 的数字图片,为了便于存储和计算,一般把收集的原始图片缩放到某个固定的大小 (Size 或 Shape),比如图片有 224224224​​ 个像素的行和 224224224​​ 个像素的列,则称图片大小为 224×224224 × 224224×224​​。我们将这张图片作为一组输入数据的 xxx​​。

图 3.1 手写数字图片示例

  

  同时,我们需要给每一张图片标注一个标签,也即图片的真实分类 yyy​​​​​ ,表明这张图片属于哪一个具体的类别,我们一般通过映射方式将类别名一一对应到从 000​​​​​ 开始编号的数字,比如说硬币的正反面,我们可以用 000​​​​​ 来表示硬币的反面,用 111​​​​​ 来表示硬币的正面,当然也可以反过来。这种编码方式叫作数字编码(Number Encoding)。手写数字图片识别问题编码则更为直观,我们直接使用数字的 0∼90\sim 90∼9​​​​​ 来表示类别名字为 0∼90\sim 90∼9​​​​​​ 的图片。

  如果希望模型能够在新样本上也能具有良好的表现,即模型泛化能力 (GeneralizationAbility)较好,那么我们应该尽可能多地增加数据集的规模多样性(Variance),使得我们用于学习的训练数据集与真实的手写数字图片的分布(Ground-truth Distribution)尽可能的逼近,这样在训练数据集上面学到了模型能够很好的用于未见过的手写数字图片的预测。所以我们一般根据 828282 原则也即将数据集按照 8:28:28:2 的比例拆分为训练集(Training Set)和测试集(Test Set)。

  机器学习的主要目的就是从训练集上学习到数据的真实模型,从而能够在未见过的测试集上也能够表现良好。为了确保我们量化一下模型在训练集和测试集上的表现,将其分别称为 训练误差 (training error) 和 测试误差 (test error) ,后者也经常称为 泛化误差 (generalization error) 。可以说,理想的模型就是在最小化训练误差的同时,最小化泛化误差。因此为了评估和测试各种算法的性能,不同问题下的统一且质量高的数据集必不可少。在手写数字图片识别问题下,Lecun, Bottou, Bengio, & Haffner 于 1998 年发布了名为 MNIST\text{MNIST}MNIST​​ 的手写数字图片数据集,它包含了 0∼90\sim 90∼9​​​ 共 101010​​​ 种数字的手写图片,每种数字一共有 700070007000​​​ 张图片,采集自不同书写风格的真实手写图片,一共 700007000070000​​​ 张图片。其中 600006000060000​​​ 张图片作为训练集

一文让你完全弄懂逻辑回归和分类问题实战《繁凡的深度学习笔记》第 3 章 分类问题与信息论基础(上)(DL笔记整理系列)相关推荐

  1. 《繁凡的深度学习笔记》前言、目录大纲 一文让你完全弄懂深度学习所有基础(DL笔记整理系列)

    <繁凡的深度学习笔记>前言.目录大纲 (DL笔记整理系列) 一文弄懂深度学习所有基础 ! 3043331995@qq.com https://fanfansann.blog.csdn.ne ...

  2. 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述

    <繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...

  3. 一文让你完全弄懂回归问题、激活函数、梯度下降和神经元模型实战《繁凡的深度学习笔记》第 2 章 回归问题与神经元模型(DL笔记整理系列)

    <繁凡的深度学习笔记>第 2 章 回归问题与神经元模型(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net/ http ...

  4. 【机器学习】逻辑回归(LogisticRegression)原理与实战

    文章目录 前言 一.什么是逻辑回归 1.1 逻辑回归基础概念 1.2 逻辑回归核心概念 二.逻辑回归Demo 2.1 数据准备 2.2 创建逻辑回归分类器 2.3 分类器预测 三.逻辑回归实战 3.1 ...

  5. 逻辑回归 + GBDT模型融合实战!

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:吴忠强,东北大学,Datawhale成员 一.GBDT+LR简介 ...

  6. 【机器学习基础】逻辑回归 + GBDT模型融合实战!

    作者:吴忠强,东北大学,Datawhale成员 一.GBDT+LR简介 协同过滤和矩阵分解存在的劣势就是仅利用了用户与物品相互行为信息进行推荐, 忽视了用户自身特征, 物品自身特征以及上下文信息等,导 ...

  7. 15个小时彻底搞懂NLP自然语言处理(2021最新版附赠课件笔记资料)【LP自然语言处理涉及到深度学习和神经网络的介绍、 Pytorch、 RNN自然语言处理】 笔记

    15个小时彻底搞懂NLP自然语言处理(2021最新版附赠课件笔记资料)[LP自然语言处理涉及到深度学习和神经网络的介绍. Pytorch. RNN自然语言处理] 笔记 教程与代码地址 P1 机器学习与 ...

  8. 逻辑回归——一文带你搞懂逻辑回归原理

    目录   1.逻辑回归的由来   2.逻辑回归模型建立过程中存在的两个问题     1)问题一:如何将等式左右连续化     2)问题二:使用sigmoid函数,将任意范围的值,映射为(0,1)    ...

  9. 一文彻底搞懂逻辑回归模型

    1.逻辑回归   逻辑回归(Logistic regression,简称LR)虽然其中带有"回归"两个字,但逻辑回归其实是一个分类模型,并且广泛应用于各个领域之中. 将线性回归模型 ...

最新文章

  1. 英国伯明翰大学首席教授姚新:人工智能研究应从三个问题重新考虑
  2. .NET Framework开源详细配置
  3. 2020年信息系统项目管理师真题讲解:基础知识3/3
  4. 拳王虚拟项目公社:最新创业好项目有哪些,90后创业好项目,虚拟资源兼职副业好项目
  5. mysql5.7 非gtid同步
  6. python 将一个列表切割成随机指定长度的多个列表
  7. AEF横空出世——查询语法详解
  8. 阿里云云计算 5 阿里云的基础架构
  9. 数据库修改服务器,服务器数据库修改
  10. 社交网络中常用数据集
  11. cocoa和cocoa Touch的区别
  12. 图像同态滤波的Butterworth方程(Butterworth equations for homomorphic Filtering of images)
  13. [干货满满] 三年经验前端的面试经验分享
  14. 软件测试工程师应该学Python还是学Java?
  15. 于博士Cadence教程内容目录
  16. html5游戏 陈书艺,陈书艺:推动游戏前行 开启HTML5游戏之门
  17. MBA-day12数学-植树问题
  18. 汇编语言[BX]和loop指令
  19. (C++)设计一个日期类Date,包括年、月、日等私有数据成员。要求实现日期的基本运算,包括某日期加上指定天数、某日期减去指定天数、两个日期相差的天数等。
  20. 基于ENVI与ERDAS的Landsat 7 ETM+单窗算法地表温度(LST)反演

热门文章

  1. 使用Python+OpenCV实现图像数据采集
  2. 再次升级,985博士整理的71个OpenCV实战项目教程开放下载!
  3. 线性判别分析(LDA)原理总结
  4. 探究被Win7保留的100MB活动分区
  5. Docker快速验证tomcat单机多实例方案
  6. RedHat9.0下载地址
  7. SilverLight学习笔记--Silverlight中WebRequest通讯
  8. [python教程入门学习]Python是什么?
  9. Python基础编程——多重继承下方法的调用
  10. Java 2程序设计,Java2程序设计