美文网首页
深度学习 第2次作业 神经网络基础

深度学习 第2次作业 神经网络基础

作者: S_Valley_DiDa | 来源:发表于2018-11-03 20:11 被阅读0次

1.二分分类
举例一个典型的二分类问题。一般来说,彩色图片包含RGB三个通道。例如下图所示:cat图片的尺寸为(64,64,3)。在神经网络模型中,我们首先要将图片输入x(维度是(64,64,3))转化为一维的特征向量。方法是每个通道一行一行取,再连接起来。由于64x64x3=12288,则转化后的输入特征向量维度为(12288,1)。此特征向量x是列向量,维度一般记为nx

二分分类.png

如果训练样本共有m张图片,那么整个训练样本X组成了矩阵,维度是(nx,m)。注意,这里矩阵X的行nx代表了每个样本x(i)特征个数,列m代表了样本个数。这里,Andrew解释了X的维度之所以是(nx,m)而不是(m,nx)的原因是为了之后矩阵运算的方便。所有训练样本的输出Y也组成了一维的行向量,写成矩阵的形式后,它的维度就是(1,m)。

  1. logistic 回归
    如何使用逻辑回归来解决二分类问题。使用线性模型,引入参数w和b。权重w的维度是(nx,1),b是一个常数项。这样,逻辑回归的线性预测输出可以写成:
    y^=wTx+b
    逻辑回归要求输出范围在[0,1]之间,所以还需要对上式的线性函数输出进行处理。方法是引入Sigmoid函数,让输出限定在[0,1]之间。这样,逻辑回归的预测输出就可以完整写成:
    Sigmoid函数是一种非线性的S型函数,输出被限定在[0,1]之间,通常被用在神经网络中当作激活函数使用。Sigmoid函数的表达式和曲线如下所示:
    逻辑回归预测图.png 从Sigmoid函数曲线可以看出,当z值很大时,函数值趋向于1;当z值很小时,函数值趋向于0。且当z=0时,函数值为0.5。还有一点值得注意的是,Sigmoid函数的一阶导数可以用其自身表示:

3.logistic 回归损失函数

损失函数,它是衡量错误大小的,损失函数越小越好。
m个样本的损失函数的平均值,反映了m个样本的预测输出y^与真实样本输出y的平均接近程度。损失函数可表示为:

逻辑回归问题可以看成是一个简单的神经网络,只包含一个神经元。

4.梯度下降值
根据损失函数的表达式,接下来将使用梯度下降算法来计算出合适的w和b值,从而最小化m个训练样本的损失函数,即J(w,b)。


梯度下降值.png 梯度下降算法每次迭代更新,w和b的修正表达式为:

5.计算图
整个神经网络的训练过程实际上包含了两个过程:正向传播和反向传播。正向传播是从输入到输出,由神经网络计算得到预测输出的过程;反向传播是从输出到输入,对参数w和b计算梯度的过程。用计算图的形式来理解这两个过程。

举例:损失函数为J(a,b,c)=3(a+bc),包含a,b,c三个变量。用u表示bc,v表示a+u,则J=3v。它的计算图(正向传播)可以写成如下图所示: 正向传播.png 计算输出对输入的偏导数,即反向传播: 反向传播.png 6.逻辑回归的梯度计算 单个样本梯度计算.png m个样本的逻辑回归梯度计算: m个样本的逻辑回归梯度计算示意图.png 7.向量化逻辑回归

8.Python中的广播
一个向量加上一个数的时候,python会自动把这个数变成向量再一一相加。用一个mn的矩阵加(减乘除)上1n的向量时,python会自动把1n的向量竖直复制变成mn再相加。用一个mn的矩阵加上m1的向量时,python会自动把m1的向量水平复制变成mn再相加。

9.python / numpy中的向量说明 代码示例.png

相关文章

  • 18-tensorflow

    基础 深度学习介绍 深度学习,如深度神经网络、卷积神经网络和递归神经网络已被应用计算机视觉、语音识别、自然语言处理...

  • TensorFlow 深度学习中文第二版(初稿)

    TensorFlow 深度学习中文第二版 第 1 章深度学习入门人工神经网络ANN 如何学习?神经网络架构深度学习...

  • 吴恩达 —— 深度学习 Course 1 笔记

    Course1:神经网络和深度学习,包括: [1] Week1:深度学习概述[2] Week2:神经网络基础[3]...

  • 跟我一起学PyTorch-06:卷积神经网络CNN

    以全连接层为基础的深度神经网络DNN是整个深度学习的基石。要说应用最广、影响最大的深度神经网络,那就是卷积神经网络...

  • 【Tensorflow】 什么是Tensorflow。

    1.什么是深度学习 这一轮的人工智能浪潮的核心是以神经网络为基础的深度学习。以下是深度学习的简单的神经网络示意图:...

  • 深度学习概念和基础

    深度学习是以神经网络为基础的,神经网络是机器学习的一种算法。 关于机器学习中的神经网络: 机器学习之神经网络1前向...

  • 2019-07-13

    神经网络浅讲:从神经元到深度学习 神经网络是一门重要的机器学习技术。它是目前最为火热的研究方向--深度学习的基础。...

  • 人工智能教程 - 目录

    目录 请先看前言 前言 1 深度学习 1.1 介绍神经网络 1.1.1 什么是神经网络 1.2 神经网络基础 1....

  • 为什么多层神经网络的权重初始化是 paramete

    问题: 在deeplearning.ai的课程1『神经网络与深度学习』中的第4周的编程作业『Building yo...

  • 深度学习笔记之循环神经网络RNN学习笔记

    关键词:循环神经网络;RNN;深度学习;深度神经网络 循环神经网络 RNN 李宏毅: 机器学习,深度学习的课件参考...

网友评论

      本文标题:深度学习 第2次作业 神经网络基础

      本文链接:https://www.haomeiwen.com/subject/lwokxqtx.html