TensorFlow 快速入门与实战
彭靖田
Google Developers Expert,《深入理解 TensorFlow》作者
31210 人已学习
新⼈⾸单¥59
课程目录
已完结/共 67 讲
第二章:TensorFlow初接触 (5讲)
第六章:实战TensorFlow验证码识别 (8讲)
TensorFlow 快速入门与实战
登录|注册
留言
8
收藏
沉浸
阅读
分享
手机端
回顶部
当前播放: 41 | 实战MNIST Softmax网络(下)
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.75x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
01 | 课程介绍
02 | 课程内容综述
03 | 第一章内容概述
04 | TensorFlow产生的历史必然性
05 | TensorFlow与Jeff Dean的那些事
06 | TensorFlow的应用场景
07 | TensorFlow的落地应用
08 | TensorFlow的发展现状
09 | 第二章内容概述
10 | 搭建你的TensorFlow开发环境
11 | Hello TensorFlow
12 | 在交互环境中使用TensorFlow
13 | 在容器中使用TensorFlow
14 | 第三章内容概述
15 | TensorFlow模块与架构介绍
16 | TensorFlow数据流图介绍
17 | 张量(Tensor)是什么(上)
18 | 张量(Tensor)是什么(下)
19 | 变量(Variable)是什么(上)
20 | 变量(Variable)是什么(下)
21 | 操作(Operation)是什么(上)
22 | 操作(Operation)是什么(下)
23 | 会话(Session)是什么
24 | 优化器(Optimizer)是什么
25 | 第四章内容概述
26 | 房价预测模型的前置知识
27 | 房价预测模型介绍
28 | 房价预测模型之数据处理
29 | 房价预测模型之创建与训练
30 | TensorBoard可视化工具介绍
31 | 使用TensorBoard可视化数据流图
32 | 实战房价预测模型:数据分析与处理
33 | 实战房价预测模型:创建与训练
34 | 实战房价预测模型:可视化数据流图
35 | 第五章内容概述
36 | 手写体数字数据集MNIST介绍(上)
37 | 手写体数字数据集MNIST介绍(下)
38 | MNIST Softmax网络介绍(上)
39 | MNIST Softmax网络介绍(下)
40 | 实战MNIST Softmax网络(上)
41 | 实战MNIST Softmax网络(下)
42 | MNIST CNN网络介绍
43 | 实战MNIST CNN网络
44 | 第六章内容概述
45 | 准备模型开发环境
46 | 生成验证码数据集
47 | 输入与输出数据处理
48 | 模型结构设计
49 | 模型损失函数设计
50 | 模型训练过程分析
51 | 模型部署与效果演示
52 | 第七部分内容介绍
53 | 人脸识别问题概述
54 | 典型人脸相关数据集介绍
55 | 人脸检测算法介绍
56 | 人脸识别算法介绍
57 | 人脸检测工具介绍
58 | 解析FaceNet人脸识别模型
59 | 实战FaceNet人脸识别模型
60 | 测试与可视化分析
61 | 番外篇内容介绍
62 | TensorFlow社区介绍
63 | TensorFlow生态:TFX
64 | TensorFlow生态:Kubeflow
65 | 如何参与TensorFlow社区开源贡献
66 | ML GDE是TensorFlow社区与开发者的桥梁
67 | 课程总结
登录 后留言

全部留言(8)

  • 最新
  • 精选
calmer
没讲为什么2个隐藏层,每个隐藏层的神经元是512个,为什么用relu激活函数

作者回复: 2个隐藏层是考虑到识别任务的难度和数据量多少。 512是经验数值,也可以用 256或者128。大家在很多论文中看到对于这类超参数的选择,通常都是基于某个数据集上,根据性能表现最终选择了某个值。 相比 sigmoid 和 tanh,使用relu 激活函数计算速度更快,也是大家现在常用的激活函数。

2019-03-01
1
Geek_f57db5
彭老师,您在解释训练过程中第一轮val_acc比acc高的时候出现了一处问题:通过对比数据可以发现,横坐标0实际上对应着第1轮训练完成后的结果(因为横坐标的范围是0到4,同时纵坐标的值也可以佐证),所以横坐标为0时,val_acc和acc不都应该是第一轮训练结果之后的值吗。同时,有个问题想要请教:为什么训练数据也会有准确率(acc)?这个准确率(acc)是怎么算出来的?

作者回复: 对呀,横坐标为0时就是第1个epoch训练完的结果。 因为训练数据也有标签呀。

2019-04-04
索菲
彭老师,我好像找到原因了,模型参数的问题,我应该是开始训练的时候,模型参数没有清除。我把输出都清除之后,从头开始训练就差不多。

作者回复: 👍👍

2019-04-01
1
我的训练的时候的耗时和loss的值以及准确率怎么跑出来的结果和您的不一样呢 Train on 60000 samples, validate on 10000 samples Epoch 1/5 - 10s - loss: 0.1820 - acc: 0.9474 - val_loss: 1.1927 - val_acc: 0.9260 Epoch 2/5 - 9s - loss: 0.1601 - acc: 0.9524 - val_loss: 0.9594 - val_acc: 0.9404 Epoch 3/5 - 9s - loss: 0.1408 - acc: 0.9582 - val_loss: 0.9494 - val_acc: 0.9411 Epoch 4/5 - 10s - loss: 0.1234 - acc: 0.9637 - val_loss: 0.9348 - val_acc: 0.9420 Epoch 5/5 - 10s - loss: 0.1086 - acc: 0.9678 - val_loss: 0.9655 - val_acc: 0.9401

作者回复: 因为在训练时,我们梯度下降的情况或许会有不同,所以不会输出完全一样的 loss 和 acc 哈。但是最终收敛的结果差距很小。

2019-03-25
白鹤之盾
correct_indices = np.nonzero(predicted_classes == y_test)[0] 这为什么要加一个[0]?javascript:;

作者回复: 因为右边的结果是 (numpy.array)的形式,[0] 就可以取出 tuple 中的 numpy.array.

2019-03-10
王健
老师, 这个例子里面, 用的keras , 这个算是tensorflow吗, 为啥不用ts呢, 不是keras能做的ts不都能做吗 , 不是面向ts实战吗

作者回复: 因为大部分学员建议用高层次 API。入门的话,Keras 更好上手,也是大部分AI用户的选择。TF 低层次 API 讲起来比较复杂,并且最近大量都 depreacated。等 2.0 出来了,可以基于 TensorFlow Eager 跟大家讲讲动态图

2019-03-03
EthanLifeGreat
# 绘制错误的手写体数字,其中A为正确标签 fig = plt.figure() for i in range(15): plt.subplot(3,5,i+1) # 绘制前 15 个手写体,以 3 行 5 列子图形式展示 plt.tight_layout() # 自适应子图尺寸 plt.imshow(x_test[incorrect_indices[i]], cmap='Greys') plt.title("{} A:{}".format(predicted_classes[incorrect_indices[i]],y_test[incorrect_indices[i]])) # 设置对应标签为子图标题 plt.xticks([]) # 删除 x 轴标记 plt.yticks([]) # 删除 y 轴标记
2019-02-25
4
不接地气的马三岁
怎么讲着讲着变成keras了,现在国内很多一线互联网公司还是tf1.10-15
2020-12-16
收起评论