Xiaowuhu/20200106 (#455)

* Update 10.0-多入单出双层-非线性二分类.md

* add more detail for ROC

* fix pic bug

* Update 09.5-曲线拟合.md

* Update README.md
This commit is contained in:
xiaowuhu
2020-02-11 10:52:59 +08:00
committed by GitHub
parent 84dac5e860
commit 4fbe823741
6 changed files with 28 additions and 27 deletions
Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

After

Width:  |  Height:  |  Size: 14 KiB

@@ -1,13 +1,17 @@
<!--Copyright © Microsoft Corporation. All rights reserved.
适用于[License](https://github.com/Microsoft/ai-edu/blob/master/LICENSE.md)版权许可-->
# AI-神经网络基本原理简明教程目录
# 神经网络基本原理教程说明
## 写在前面
如果您觉得这个教程对您有用,请不要忘记给本站加星(点击网页顶部的Star标签),星越多说明本教程越对大家有帮助,我们就越会努力完善本站。
## 如何浏览本系列教程
1. 如果使用浏览器在线观看的话,可以使用Chrome浏览器,[加这个Math展示控件](https://chrome.google.com/webstore/detail/mathjax-plugin-for-github/ioemnmodlmafdkllaclgeombjnmnbima)
2. 也可以clone全部内容到本地,然后用VSCode浏览,但VSCode中需要安装能读取Markdown格式的扩展,比如Markdown Preview Enhanced.
2. 也可以clone全部内容到本地,然后用VSCode浏览,但VSCode中需要安装能读取Markdown格式的扩展,比如Markdown AllInOne插件。
## 写在前面,为什么要出这个系列的教程呢?
@@ -17,24 +21,6 @@
通过以下循序渐进地学习与动手实践,一方面可以帮助读者深刻理解“深度学习”的基础知识,更好地理解并使用现有框架,另一方面可以助力读者快速学习最新出现的各种神经网络的扩展或者变型,跟上快速发展的AI浪潮。
对于这份教程的内容,如果没有额外的说明,我们通常使用如下表格的命名约定:
| 符号 | 含义|
|:---:|---|
|X|输入样本|
|Y|输入样本的标签 |
|Z|线性运算的结果|
|A|激活函数/结果|
|W|权重矩阵|
|B|偏移矩阵|
|J|损失函数|
|大写字母|矩阵或矢量,如A,W,B|
|小写字母|变量,标量,如a,w,b|
|$x_{1,2}$|第1个样本的第2个特征值|
|$w^L_{2,3}$|第L层第2个神经元对第L-1层第3个神经元的权重值|
|矩阵的行|一批样本的某一个特征值的集合|
|矩阵的列|一批样本的某一个样本的所有特征值|
## 适用范围
没有各种基础想学习却无从下手哀声叹气的玩家,请按时跟踪最新博客,推导数学公式,跑通代码,并及时提出问题,以求最高疗效;
@@ -50,15 +36,14 @@
环境:
- Windows 10 version 1809
- Visual Studio 2017 Community or above
- Python 3.6.6
- Jupyter Notebook (可选)
- Visual Studio 2017 Community or above
- VS Code
自己:
清醒的头脑(困了的同学请自觉泡茶),纸和笔(如果想跟着推公式的话),闹钟(防止久坐按时起来转转),厚厚的衣服(有暖气的同学请忽略)
## 网络结构概览
|网络结构名称|网络结构图|应用领域|
@@ -71,6 +56,14 @@
|多入<br>单出<br>两层|<img src="./Images/10/xor_nn.png"/>|非线性二分类|
|多入<br>多出<br>两层|<img src="./Images/11/nn.png"/>|非线性多分类|
|多入<br>多出<br>三层|<img src="./Images/12/nn3.png"/>|非线性多分类|
|多层全连接网络|<img src="./Images/14/mnist_net.png"/>|非线性多分类|
|带批归一化层的多层全连接网络|<img src="./Images/15/bn_mnist.png"/>|非线性多分类|
|带丢弃层的多层全连接网络|<img src="./Images/16/dropout_net.png"/>|非线性多分类|
|简单的卷积神经网络|<img src="./Images/17/conv_net.png"/>|非线性多分类|
|复杂的卷积神经网络|<img src="./Images/18/mnist_net.png"/>|非线性多分类|
|单向循环神经网络|<img src="./Images/19/bptt_simple.png"/>|非线性多分类|
|双向循环神经网络|<img src="./Images/19/bi_rnn_net_right.png"/>|非线性多分类|
|深度循环神经网络|<img src="./Images/19/deep_rnn_net.png"/>|非线性多分类|
## 写在后面
@@ -146,7 +146,7 @@ testing...
### 代码位置
ch09, Level4
ch09, Level3, Level4
### 思考和练习
@@ -50,11 +50,16 @@ $$(521+435)/1000=0.956$$
可以用图10-3来帮助理解。
<img src="../Images/10/TPFP.png" ch="925" />
<img src="../Images/10/TPFP.png"/>
图10-3 二分类中四种类别的示意图
在圆圈中的样本是被模型判断为正类的,圆圈之外的样本是被判断为负类的。用表格的方式描述矩阵的话是表10-1的样子。
- 左侧实心圆点是正类,右侧空心圆是负类;
- 在圆圈中的样本是被模型判断为正类的,圆圈之外的样本是被判断为负类的;
- 左侧圆圈外的点是正类但是误判为负类,右侧圆圈内的点是负类但是误判为正类;
- 左侧圆圈内的点是正类且被正确判别为正类,右侧圆圈外的点是负类且被正确判别为负类。
用表格的方式描述矩阵的话是表10-1的样子。
表10-1 四类样本的矩阵关系
@@ -120,11 +125,14 @@ $$
- ROC曲线与AUC
ROCReceiver Operating Characteristic,接收者操作特征,又称为感受曲线(Sensitivity Curve),是反映敏感性和特异性连续变量的综合指标,曲线上各点反映着相同的感受性,它们都是对同一信号刺激的感受性。
ROC曲线的横坐标是FPR,纵坐标是TPR。
AUCArea Under Roc,即ROC曲线下面的面积。
在二分类器中,如果使用Logistic函数作为分类函数,可以设置一系列不同的阈值,比如[0.1,0.2,0.3...0.9],把测试样本输入,从而得到一系列的TP、FP、TN、FN,然后就可以绘制如下曲线,如图10-4。
<img src="../Images/10/ROC.png" ch="500" />
<img src="../Images/10/ROC.png"/>
图10-4 ROC曲线图