作者 | Peter

编辑 | AI有道

今天带来第四周课程的笔记:神经网络基础。

  • 非线性假设

  • 神经元和大脑

  • 模型表示

  • 特征和直观理解

  • 多类分类问题

非线性假设Non-linear Hypotheses

线性回归和逻辑回归的缺点:特征太多的时候,计算负荷会非常大

假设我们希望训练一个模型来识别视觉对象(例如识别一张图片上是否是一辆汽车),我们怎样才能这么做呢?一种方法是我们利用很多汽车的图片和很多非汽车的图片,然后利用这些图片上一个个像素的值(饱和度或亮度)来作为特征。

假设采用的是50*50像素的小图片,将所有的像素视为特征,则有2500个特征。普通的逻辑回归模型不能处理的,需要使用神经网络

神经元和大脑

模型表示

模型表示1

每个神经元是可以被认为一个处理单元/神经核processing unit/Nucleus,主要包含:

  • 多个输入/树突input/Dendrite

  • 一个输出/轴突output/Axon

神经网络是大量神经元相互链接并通过电脉冲来交流的一个网络

  1. 神经网络模型建立在很多神经元之上,每一个神经元又是一个个学习模型

  2. 神经元称之为激活单元activation unit;在神经网络中,参数又可被成为权重(weight)

  3. 类似神经元的神经网络

神经网络

下图是逻辑回归模型作为自身学习模型的神经元示例

类似神经元的神经网络结构

  • x1,x2,x3是输入单元,将原始数据输入给它们

  • 几个比较基础的概念

    • 输入层:数据节点所在的层

    • 网络层:输出hihi连同它的网络层参数w,bw,b

    • 隐藏层:网络层中间的层

    • 输出层:最后一层

    • 偏置单元:bias unit,每层加上偏置单元

上面模型的激活单元和输出分别表示为:

三个激活单元的表达式:

输出的表达式为:

将特征矩阵的每行(一个训练实例)喂给了神经网络,最终需要将整个训练集都喂给神经网络。

这种从左到右计算的算法称之为:前向传播法FORWARD PROPAGATION

模型标记的记忆方法

其尺寸具体表示为:

  • 以第jj 层的激活单元数量为行数

  • 以第 j+1j+1层的激活单元数+1为列数的矩阵

模型表示2

FORWARD PROPAGATION相对于使用循环来编码,利用向量化的方法会使得计算更为简便,

假如现在有:

其中z满足:

也就是上面三个激活单元式子中的括号里面部分,那么有:

那么输出h可以表示为 :

特征和直观理解

神经网络中,单层神经元(无中间层)的计算可用来表示逻辑运算,比如逻辑与(AND)、逻辑或(OR)

实现逻辑”与AND”

实现逻辑"或OR"

实现逻辑“非not”

多类分类问题

当输出中不止有两种分类时,比如使用神经网络算法来识别路人、汽车、摩托车等。

  • 输入向量有3个维度,两个中间层

  • 输出层有4个神经元表示4种分类,也就是每一个数据在输出层都会出现[a,b,c,d]T[a,b,c,d]T,且[a,b,c,d][a,b,c,d]中仅有一个为1,表示当前类

TF中解决办法

上述多类分类问题和TF中手写数字问题类似,解决办法如下:

  1. 手写数字图片数据

总类别数是10,即输出节点总数值dout=10dout=10,假设某个样本的类别是i,即图片中的数字是ii,需要一个长度为10的向量yy,索引号为ii的位置设置为1,其余是0。

  • 0的one-hot编码是[1,0,0,0,….]

  • 1的one-hot编码是[0,1,0,0,….]

  • 其余类推

至此,第四周的课程笔记完毕!

系列文章:

吴恩达《Machine Learning》精炼笔记 1:监督学习与非监督学习

吴恩达《Machine Learning》精炼笔记 2:梯度下降与正规方程

吴恩达《Machine Learning》精炼笔记 3:回归问题和正则化


推荐阅读

(点击标题可跳转阅读)

干货 | 公众号历史文章精选

我的深度学习入门路线

我的机器学习入门路线图

重磅

AI有道年度技术文章电子版PDF来啦!

扫描下方二维码,添加 AI有道小助手微信,可申请入群,并获得2020完整技术文章合集PDF(一定要备注:入群 + 地点 + 学校/公司。例如:入群+上海+复旦

长按扫码,申请入群

(添加人数较多,请耐心等待)

感谢你的分享,点赞,在看三连↓

吴恩达《Machine Learning》精炼笔记 4:神经网络基础相关推荐

  1. coursera—吴恩达Machine Learning笔记(1-3周)

    Machine Learning 笔记 笔记主要按照进度记录上课主要内容和部分代码实现,因为我会看一阶段再进行整理,内容会有一定交叉.关于代码部分,一开始我是只为了做作业而写代码的,现在觉得不妨仔细看 ...

  2. 吴恩达ex3_吴恩达Machine Learning Ex3 python实现

    1.Multi-class classification 使用Logistic regression和neural networks来识别手写数字识别(从0到9).在第一部分练习中使用Logistic ...

  3. 深度学习入门首推资料--吴恩达深度学习全程笔记分享

    本文首发于微信公众号"StrongerTang",可打开微信搜一搜,或扫描文末二维码,关注查看更多文章. 原文链接:(https://mp.weixin.qq.com/s?__bi ...

  4. 机器学习-吴恩达网易云课堂笔记

    机器学习-吴恩达网易云课堂笔记 Machine Learning: A computer program is said to learn from experience E with respect ...

  5. coursera-斯坦福-机器学习-吴恩达-第9周笔记(下)-推荐系统

    coursera-斯坦福-机器学习-吴恩达-第9周笔记(下)-推荐系统 coursera-斯坦福-机器学习-吴恩达-第9周笔记下-推荐系统 1预测电影等级 1任务设想 2基于内容的推荐 2协同过滤 1 ...

  6. 737 页《吴恩达深度学习核心笔记》发布,黄海广博士整理!

    点击上方"AI有道",选择"置顶"公众号 重磅干货,第一时间送达 深度学习入门首推课程就是吴恩达的深度学习专项课程系列的 5 门课.该专项课程最大的特色就是内容 ...

  7. 吴恩达深度学习课程笔记(初步认识神经网络)

    吴恩达深度学习课程笔记1 课程主要内容 1.神经网络与深度学习介绍 2.Improving Deep Neural Networks:超参数调整,正则化,优化方法 3.结构化机器学习工程:比如如何分割 ...

  8. 吴恩达机器学习MATLAB代码笔记(1)梯度下降

    吴恩达机器学习MATLAB代码笔记(1)梯度下降 单变量线性回归 1.标记数据点(Plotting the Date) fprintf('Plotting Data') data = load('D: ...

  9. 吴恩达深度学习课程笔记(四):卷积神经网络2 实例探究

    吴恩达深度学习课程笔记(四):卷积神经网络2 实例探究 吴恩达深度学习课程笔记(四):卷积神经网络2 实例探究 2.1 为什么要进行实例探究 2.2 经典网络 LeNet-5 AlexNet VGG- ...

  10. 免费分享全套吴恩达深度学习课程笔记以及编程作业集合

    分享吴恩达深度学习全套 笔记 笔记来源于吴恩达老师课程中口述翻译,并包含板书.可以取代看视频,做到更快速学习. (部分目录) (部分目录) (板书) 编程作业 扫描二维码后台回复"0&quo ...

最新文章

  1. C语言比较字符串长短
  2. buffers和cache的区别
  3. wpf 点击按钮弹出选择框_关于WPF的弹出窗口
  4. 简单介绍CUDA中loop unrolling(循环展开)技术
  5. pytorch---nn.moduleList 和Sequential
  6. 因为一条SQL,我差点被祭天......
  7. 什么是 Apache Shiro
  8. 主成分分析在生命科学研究中的应用
  9. springboot+vue旅行社旅游拼团系统java
  10. 一位博士在华为的22年(干货满满)
  11. 常用时序数据地址 MTGNN
  12. 【解决】Python程序运行时所占内存越来越大
  13. python数据抓取工具_【重磅开源】Hawk-数据抓取工具:简明教程
  14. 【CSS3】text-shadow/text-overflow,边框图片,透明度,小米轮播图子菜单另一种实现,覆盖准则
  15. 我的武林秘籍设计模式之策略模式
  16. 《大学四年》——知乎 读书笔记
  17. 记面试中问到的MySQL的SQL调优问题
  18. Hex文件转Bin文件
  19. 【5G核心网】5G Non 3GPP接入-N3IWF
  20. 分形之Julia集和Mandelbrot集及浅谈分形理论的应用

热门文章

  1. 各个会议期刊论文录取情况
  2. getOutputStream() has already been called for this response异常的原因和解决方法
  3. 安装、部署和卸载解决方案
  4. 《Head First Python》第三章--文件与异常
  5. 强连通Tarjan NYOJ 120 校园网络
  6. 使用Docker搭建Elasticsearch6.8.6集群及设置集群用户密码
  7. CodeForce 237C Primes on Interval(二分+ 素数筛法)
  8. NYOJ 330 一个简单的数学题
  9. Flutter Widget截图
  10. Android Studio在Git上将项目推送到新的Url地址中