Neural networks

non-linear hypotheses 非线性假设

Neural model:logistic unit

第一层 Input layer

最后一层 Outer layer

其他层 Hidden layer

对于非线性模型问题,神经网络就是logistic回归的复杂模型。

前向传播

比较logistic和neural network

之前的logistic回归:有x个特征,真正需要的特征可能是y个(y>>x)
比如:预测房价,特征有房子长度和宽度(x=2),而真正需要的特征可能是长度、宽度、面积(长度*宽度)。y=3

logistic回归的重点是找到更多可能有用的多项式特征,来循环一个sigma函数。它更注重长度

Neural networks:只将x个特征作为输入层,不在乎多项式特征。

神经网络是n*m个sigma函数的组合,用少量的特征进行层层运算得到更复杂的特征。它更注重深度、宽度。

neural network分类

二元分类和多分类问题

neural network的cost function

这个看起来复杂很多的代价函数背后的思想还是一样的,我们希望通过代价函数来观察算法预测的结果与真实情况的误差有多大。

反向传播

back propagation: 求导数值

前向传播是特征值的“加权和+sigma函数”从左到右传播

反向传播是“偏导数加权和”从右向左传播

梯度检验

gradient checking:检验反向传播时求的导数值是否正确。但是因为计算一次导数梯度检验运行时间比反向传播长很多,所以一旦确定了反向传播没有计算错时,记得禁掉梯度检验的代码。

随机初始化

random initialization:初始化神经网络里的初始参数(权重)

neural network全过程回顾

  1. Pick network architecture
    Input layer:单元数目由特征个数决定
    Output layer:单元数目由分多少类决定
    Hidden layer:层数一般1层(也可以2、3层),单元数目一般和Input layer数目相等或是x倍(x=1、2、3)

2.1 初始化权重(接近于0)

2.2 前向传播求预测值

2.3 计算cost function

2.4 反向传播求偏导数

2.5 梯度检验验证反向传播求的偏导数

2.6 用梯度下降或其他高级优化方法minimize代价函数

Coursera-吴恩达机器学习课程笔记-Week4+5的更多相关文章

  1. ML:吴恩达 机器学习 课程笔记(Week1~2)

    吴恩达(Andrew Ng)机器学习课程:课程主页 由于博客编辑器有些不顺手,所有的课程笔记将全部以手写照片形式上传.有机会将在之后上传课程中各个ML算法实现的Octave版本. Linear Reg ...

  2. Coursera 吴恩达 机器学习 学习笔记

    Week 1 机器学习笔记(一)基本概念与单变量线性回归 Week 2   机器学习笔记(二)多元线性回归 机器学习作业(一)线性回归——Matlab实现 机器学习作业(一)线性回归——Python( ...

  3. ML:吴恩达 机器学习 课程笔记(Week7~8)

    Support Vector Machines Unsupervised Learning Dimensionality Reduction

  4. ML:吴恩达 机器学习 课程笔记(Week5~6)

    Neural Networks: Learning Advice for Applying Machine Learning Machine Learning System Design

  5. ML:吴恩达 机器学习 课程笔记(Week9~10)

    Anomaly Detection Recommender Systems Large Scale Machine Learning

  6. ML:吴恩达 机器学习 课程笔记(Week3~4)

    Logistic Regression Regularization Neural Networks: Representation

  7. Coursera-吴恩达机器学习课程笔记-Week2

    参考资料: 吴恩达教授机器学习课程 机器学习课程中文笔记 Week2 一. 多变量线性回归(Linear Regression with Multiple Variables) 多变量就时当一个exa ...

  8. Coursera-吴恩达机器学习课程笔记-Week1

    参考资料: 吴恩达教授机器学习课程 机器学习课程中文笔记 Week 1 一. 引言 机器学习模型可分为监督学习Superviese learning(每个数据集给出了正确的值)和无监督学习Unsupe ...

  9. Machine Learning|Andrew Ng|Coursera 吴恩达机器学习笔记

    Week1: Machine Learning: A computer program is said to learn from experience E with respect to some ...

随机推荐

  1. hadoop cdh 的那些坑 第二弹

    卧槽 ....一直连不上datanode 不知道为什么数据节点一直连接不上.. 2019-07-19 16:10:00,156 INFO org.apache.hadoop.ipc.Client: R ...

  2. 九、c++容器

    9.1 简介 容器库是类模板与算法的汇集,允许程序员简单地访问常见数据结构,例如队列.链表和栈. 有三类容器--顺序容器.关联容器和无序关联容器--每种都被设计为支持不同组的操作. 顺序容器:顺序容器 ...

  3. _mysql_exceptions.OperationalError: (2013, 'Lost connection to MySQL server during query')

    最近写了一个定时脚本,每天凌晨跑,每次跑时间很长. 在测试这个脚本的时候,跑了一个小时,发生一个错误,脚本中断,错误如下: _mysql_exceptions.OperationalError: (2 ...

  4. beego orm 多对多插入和查询操作

    // User 用户表 type User struct { ID int UserName string Password string Articles []*Article `orm:" ...

  5. Servlet文件上传下载

    今天我们来学习Servlet文件上传下载 Servlet文件上传主要是使用了ServletInputStream读取流的方法,其读取方法与普通的文件流相同. 一.文件上传相关原理 第一步,构建一个up ...

  6. 【C语言】数组名作函数参数,完成数据的升序排列

    #include<stdio.h> void sort(int x[],int n); int main() { ] = { ,,,,,,,,, },i; sort(arr, ); pri ...

  7. 【转载】Spring MVC入门

    转自:http://www.importnew.com/15141.html MVC框架是什么 模型-视图-控制器(MVC)是一个众所周知的以设计界面应用程序为基础的设计模式.它主要通过分离模型.视图 ...

  8. Python实现AVL树

    参考: https://www.cnblogs.com/linxiyue/p/3659448.html?utm_source=tuicool&utm_medium=referral class ...

  9. es7实现数学乘方

    //math.pow简写方法 console.log(2 ** 6)

  10. np.c_与np.r_

    import sys reload(sys) sys.setdefaultencoding('utf-8') import numpy as np def test(): ''' numpy函数np. ...