ML:2-2-1 Tensorflow


【吴恩达p60-61】

1. Tensorflow实现

  1. 继续看手写数字识别的例题
  2. 第一步,我们上周学习了。
  3. 第二步,让Tensorflow去编译模型。最重要的一步是通过指定你想使用的loss函数。(这里我们会用BinaryCrossentropy)
  4. 第三步,使用fit函数告诉Tensorflow将在第一步中指定的model,和第二步中指定的cost function拟合到XY。(第3步是用来训练模型的)
  5. epoch是一个专业名词,指定gradient descent步骤的数量

请添加图片描述

2. 模型训练细节

【了解Tensorflow训练模型的代码细节。】

  1. 训练模型的三个步骤:
    1. 定义模型f(x)
    2. 找出loss + cost function。(loss是单个样本的误差,cost是整体的误差和)
    3. 训练数据,最小化cost function。(ex. 使用gradient descent)
  2. 使用这3步训练neural network的模型:
    1. 定义model的式子。
    2. compile模型,并且告诉它你想使用的loss function。(这里的代码表示,我们将使用Binary Cross Entropy作为loss function。后续通过对其取平均值,可以得到整个neural network的cost function。)
    3. 调用函数,去最小化cost function。

请添加图片描述

2.1 定义模型f(x)

  1. a3 = f(x)

请添加图片描述

2.2 找到loss and cost funciton

  1. 必须指定loss function,这也会用来定义cost function。
  2. L(f(x), y)函数里y是truth label(target label
  3. f(x)是neural network的output。
  4. Tensorflow知道你要最小化cost是所有training example loss的平均值。
  5. 如果项训练的是regression的模型,你也可以告诉Tensorflow使用不同的loss function编译模型。(比如,要去最小化mean squared error,就可以让loss = MeanSquaredError())
  6. 神经网络里的W,B都是2维的数据
    请添加图片描述

请添加图片描述

2.3 Gradient descent

  1. 需要分别对每一层每一神经元,更新它们的w,j。
  2. backpropagation反向传播:用来计算neural network里偏导项的一种算法。(Tensorflow可以做到:model.fit(x,y, epochs = 100),epochs表示,迭代100次。)
  3. 事实上,Tensorflow可以使用另一种比gradient descent更快的算法来做。

请添加图片描述

  • 36
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值