吴恩达深度学习笔记【1】

监督学习简介



前言

学习的第一天


一、监督学习常见应用

输入输出应用类别
房子特色房价房地产Stand NN
广告广告点击网络广告Stand NN
图像目标(1,……,n)图像目标CNN
音频转文字文字识别RNN
英语中文机器翻译RNNs
图像、雷达信息汽车位置自动驾驶hybrid neural network

图像分类

二、基础知识

1.数据类型

结构化数据非结构化数据
表格式的数据如图像、文本、声音

2.学习次序

weekcontent
1介绍
2神经网络程序基础
3单隐层神经网络
4多层神经网络

3.常用符号

在这里插入图片描述

功能矩阵大小
训练集输入X.shape=(n,m)
训练集标签Y.shape=(1,m )
训练集{(x1,y1),……(xm,ym)}
矩阵维数R
训练集M_train
测试集M_test
第i个集合xi或yi……

4.二分分类(logistics)

借用sigmoid函数:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
第一种表示(本课程使用):
在这里插入图片描述

第二种表示:
在这里插入图片描述
损失函数
(越小越好)
非凸:
在这里插入图片描述

本文使用:
在这里插入图片描述
在这里插入图片描述
成本函数
在这里插入图片描述

5.梯度下降法

从某一点开始,从最陡峭的那个坡往下走。(dw于程序中表示导数名)

6.导数和流程图(略)

在这里插入图片描述

7.logistics中的梯度下降

在这里插入图片描述
先算出dL/da,然后算出da/dz=a(1-a),从而得到dL/dz
在这里插入图片描述
再由dz/dw得到dL/dw
在这里插入图片描述
在这里插入图片描述

7.向量化的必要性

import numpy as np
import time

a=np.random.rand(1000000)#生成随机数
b=np.random.rand(1000000)

tic=time.time()#计时
c=np.dot(a,b)#点乘
toc=time.time()

print("array time is:"+str(1000*(toc-tic))+"ms")#输出+类似js的字符串合并+强制类型转换


c=0
tic=time.time()#计时
for i in range(1000000):#循环
    c+=a[i]*b[i]
toc=time.time()

print("loop time is:"+str(1000*(toc-tic))+"ms")

array time is:2.9914379119873047ms loop time is:365.05675315856934ms

相量比循环快了一百二十多倍(其实我在用MATLAB时就知道了),再用MATLAB试一试

a=rand(1,1000000);
b=rand(1,1000000);

tic
c=a.*b;
toc*1000


tic
for i=1:1000000
    c(i)=a(i)*b(i);   
end
toc*1000
ans = 8.179100000000000 ans = 23.912500000000001 可见用数组,python快于MATLAB,而用循环,MATLAB明显快于python

8.向量化的logistics

在这里插入图片描述
python和MATLAB都有“广播”功能,也就是当数组和实数相加时,会自动将实数扩展为数组。
python:

import numpy as np

#已知训练集x(n*m),标签Y(m*1),以及初始的w(1*n),b(1*1),训练次数N,学习率a
for i in range(N):
    z=np.dot(w.T,x)+b
    A=1/(1+np.exp(-z))
    dz=A-Y
    dw=1/m*x*dz.T
    db=1/m*np.sum(dz)
    w:=w-a*dw
    b:=b-a*db

MATLAB:

%已知训练集x(n*m),标签Y(m*1),以及初始的w(1*n)b(1*1),训练次数n,学习率a
for i=1:N
    z=w*x+b;
    A=1./(1+exp(-z));
    dz=A-Y;
    dw=1/m*x*dz';
    db=1/m*sum(dz);
    w=w-a*dw';
    b=b-a*db;
end

总结

我会继续努力的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值