=================第2周 神经网络基础===============

===2.1  二分分类===

===2.2  logistic 回归===

  It turns out, when you implement you implement your neural network, it will be easier to just keep b and w as separate parameters. 本课程中将分开考虑它们。

===2.3  logistic 回归损失函数===
  损失函数loss func是在单个样本上定义的,而代价函数cost func它衡量在全体训练样本上的表现。其实Logistic Model 可以被看作是 一个非常小的神经网络。
 
===2.4  梯度下降法===
  凸函数这性质是我们使用logistic回归的这个特定成本函数J的重要原因之一。通常用0来初始化<w, b>,其他初始化也ok。
  仔细体会下图,梯度,梯度的正负,负梯度才是下降方向。也体会下,如果某点的梯度为正,那w增大,J也会增大。
 
===2.5  导数===
  一个直观的理解是,delta_y的变化是 delta_x 的变化的 dy/dx 倍。导数的定义是你右移a 一个不可度量的无限小的值, f(a)会增加 df/da times a的改变值。
 
 
===2.6  更多导数的例子===
 
===2.7  计算图=== &
===2.8  计算图的导数计算===
  仔细体会一下,求导的链式法则,当a改变0.001时,J改变多少,a是如何影响J的。
 
 
===2.9  logistic 回归中的梯度下降法===
 
===2.10  m 个样本的梯度下降===
  m个样本的梯度下降的逐样本迭代版本。当你应用深度算法时,你会发现在代码中显式地使用for循环会使算法很低效。
 
===2.11  向量化===
  下面的比较可以看出,向量化了之后快了大概 300 倍。
       
 
  GPU和CPU都有并行化的指令,有时候会叫做SIMD指令(single instruction multiple data.),意思是如果你使用了这样的内置函数np.function or other functions that don't require you explicitly implementing a for loop. It enables Python numpy to take much better advantage of parallelism. 这点对GPU和CPU上面计算都是成立的,GPU非常擅长SIMD计算,but CPU is actually also not too bad at that. 经验法则是 只要有其他可能 就不要使用显式for循环。
 
 
===2.12  向量化的更多例子===
  尝试用numpy内置函数代替显示loop实现你想要的功能。
 
===2.13  向量化 logistic 回归===
 
===2.14  向量化 logistic 回归的梯度输出===
 
 
===2.15  Python 中的广播===
  Broadcasting。例子中的 cal 后面的 reshape 其实可以不用加,但当我编写Python代码时,if I'm not entirely sure what matrix, whether the dimensions of a matrix, 我会经常调用reshape命令 确保它是正确的列向量或行向量。
 
===2.16  关于 python / numpy 向量的说明===
  注意在 In[7] 的这个数据结构中 有2个方括号,之前只有1个,So that's the difference between this is really a 1 by 5 matrix versus one of these rank 1 arrays

  rank 1 array 的行为和行向量或列向量都不一样,which makes some of its effects nonintuitive. 我的建议是不要使用它们。如果某些时候确实得到了rank 1 array,你可以用reshape,使它的行为更好预测。

===2.17  Jupyter / Ipython 笔记本的快速指南===
  使用愉快:)
 
===2.18  (选修)logistic代价函数的推导===
  If you assume that the training examples I've drawn independently or drawn IID, then the probability of the example is the product of probabilities. 从1到m的 p(y^(i) |x^(i))的概率乘积。
 
 
 

Andrew Ng - 深度学习工程师 - Part 1. 神经网络和深度学习(Week 2. 神经网络基础)的更多相关文章

  1. 【原】Coursera—Andrew Ng机器学习—编程作业 Programming Exercise 3—多分类逻辑回归和神经网络

    作业说明 Exercise 3,Week 4,使用Octave实现图片中手写数字 0-9 的识别,采用两种方式(1)多分类逻辑回归(2)多分类神经网络.对比结果. (1)多分类逻辑回归:实现 lrCo ...

  2. Andrew Ng - 深度学习工程师 - Part 1. 神经网络和深度学习(Week 1. 深度学习概论)

     =================第1周 循环序列模型=============== ===1.1 欢迎来到深度学习工程师微专业=== 我希望可以培养成千上万的人使用人工智能,去解决真实世界的实际问 ...

  3. 百度首席科学家 Andrew Ng谈深度学习的挑战和未来(转载)

    转载:http://www.csdn.net/article/2014-07-10/2820600 人工智能被认为是下一个互联网大事件,当下,谷歌.微软.百度等知名的高科技公司争相投入资源,占领深度学 ...

  4. 《Andrew Ng深度学习》笔记1

    深度学习概论 1.什么是神经网络? 2.用神经网络来监督学习 3.为什么神经网络会火起来? 1.什么是神经网络? 深度学习指的是训练神经网络.通俗的话,就是通过对数据的分析与计算发现自变量与因变量的映 ...

  5. 《Andrew Ng深度学习》笔记4

    浅层神经网络 1.激活函数 在神经网络中,激活函数有很多种,常用的有sigmoid()函数,tanh()函数,ReLu函数(修正单元函数),泄露ReLu(泄露修正单元函数).它们的图形如下: sigm ...

  6. 《Andrew Ng深度学习》笔记3

    浅层神经网络 初步了解了神经网络是如何构成的,输入+隐藏层+输出层.一般从输入层计算为层0,在真正计算神经网络的层数时不算输入层.隐藏层实际就是一些算法封装成的黑盒子.在对神经网络训练的时候,就是对神 ...

  7. 吴恩达深度学习第1课第4周-任意层人工神经网络(Artificial Neural Network,即ANN)(向量化)手写推导过程(我觉得已经很详细了)

    学习了吴恩达老师深度学习工程师第一门课,受益匪浅,尤其是吴老师所用的符号系统,准确且易区分. 遵循吴老师的符号系统,我对任意层神经网络模型进行了详细的推导,形成笔记. 有人说推导任意层MLP很容易,我 ...

  8. 【吴恩达课后测验】Course 1 - 神经网络和深度学习 - 第一周测验【中英】

    [吴恩达课后测验]Course 1 - 神经网络和深度学习 - 第一周测验[中英] 第一周测验 - 深度学习简介 和“AI是新电力”相类似的说法是什么? [  ]AI为我们的家庭和办公室的个人设备供电 ...

  9. DeepLearning.ai学习笔记(一)神经网络和深度学习--Week3浅层神经网络

    介绍 DeepLearning课程总共五大章节,该系列笔记将按照课程安排进行记录. 另外第一章的前两周的课程在之前的Andrew Ng机器学习课程笔记(博客园)&Andrew Ng机器学习课程 ...

  10. [DeeplearningAI笔记]神经网络与深度学习人工智能行业大师访谈

    觉得有用的话,欢迎一起讨论相互学习~Follow Me 吴恩达采访Geoffrey Hinton NG:前几十年,你就已经发明了这么多神经网络和深度学习相关的概念,我其实很好奇,在这么多你发明的东西中 ...

随机推荐

  1. ATX-UI自动化环境搭建

    基础环境准备(以下都是在Mac机上搭建的) 1.android sdk安装&配置 很完美的一个资源下载网:tools.android-studio.org,下载所需的包(我下的zip包直接解压 ...

  2. C# 基础之参数修饰符

    参数传参的时候一共有四种传递方式: 一.无修饰符传参 也就是说没有传参修饰符,这种情况传过去的是一个副本,本体是不会被改变的 二.out传参修饰符 在传参的参数全面加一个out: public voi ...

  3. centos系统与ubuntu系统的区别

    centos和ubuntu简述 CentOS(Community ENTerprise Operating System)是Linux发行版之一,它是来自于Red Hat Enterprise Lin ...

  4. 使用PRTG和panabit结合定位网络阻塞的来源

    一.背景   在网络管理工作中,有时会出现网络阻塞,需要定位阻塞来源以采取措施解决问题.二.以一个网络阻塞案例说明定位方法   案例:某企业日常使用多条网络线路,某一段时间发现某条线路传输速率下降,对 ...

  5. Redis详解(十二)------ 缓存穿透、缓存击穿、缓存雪崩

    本篇博客我们来介绍Redis使用过程中需要注意的三种问题:缓存穿透.缓存击穿.缓存雪崩. 1.缓存穿透 一.概念 缓存穿透:缓存和数据库中都没有的数据,可用户还是源源不断的发起请求,导致每次请求都会到 ...

  6. Chisel3 - model - 子模块,顶层模块

    https://mp.weixin.qq.com/s/3uUIHW8DmisYARYmNzUZeg   介绍如何构建由模块组成的硬件模型.   1. 子模块   一个模块可以有一个或多个子模块,创建子 ...

  7. 深入理解JVM(③)——之HotSpot虚拟机对象探秘

    前言 上篇文章介绍了Java虚拟机的运行时数据区域,大致明白了Java虚拟机内存模型的概况,下面就基于实用优先的原则,以最常用的虚拟机HotSpot和最常用的内存区域Java堆为例,升入探讨一下Hot ...

  8. Java实现 蓝桥杯 算法提高 进攻策略加强(暴力)

    试题 算法提高 进攻策略加强 问题描述 植物大战僵尸这款游戏中,还有一个特别的玩儿法:玩家操纵僵尸进攻植物. 首先,僵尸有m种(每种僵尸都是无限多的),玩家可以选择合适的僵尸来进攻.使用第i种僵尸需要 ...

  9. Java实现 蓝桥杯 算法提高 歌唱比赛(暴力)

    试题 算法提高 歌唱比赛 问题描述 X市正在进行歌唱比赛,请你写一个程序计算得分. 每名选手从1到N编号,每名选手的综合成绩由以下几个部分组成: 1.歌唱得分占70% 2.才艺展示得分占20% 3.观 ...

  10. Java实现字符串转换成整数

    1 问题描述 输入一个由数字组成的字符串,请把它转换成整数并输出.例如,输入字符串"123",输出整数123. 请写出一个函数实现该功能,不能使用库函数. 2 解决方案 解答本问题 ...