[TOC]
1.变量的定义
1 | from __future__ import absolute_import |
2.卷积的操作
2.1 传统的卷积
1 | #传统的卷积 |
2.2 slim的卷积
1 | from __future__ import absolute_import |
2.3 slim定义相同层
- repeat操作 减少代码量
- stack是处理卷积核或者输出不一样的情况
1 | from __future__ import absolute_import |
2.4 slim中的argscope
如果你的网络有大量相同的参数,如下:
- arg_scope操作 用scope提取相同的特征
- 嵌套的使用 和多层的定义
1 | from __future__ import absolute_import |
3. slim封装网络
1 | from tensorflow.contrib.slim.python.slim.nets import alexnet |
4. loss
损失函数定义了我们想要最小化的数量。 对于分类问题,这通常是跨分类的真实分布和预测概率分布之间的交叉熵。 对于回归问题,这通常是预测值和真值之间的平方和差异。
某些模型(如多任务学习模型)需要同时使用多个损失函数。 换句话说,最终被最小化的损失函数是各种其他损失函数的总和。 例如,考虑预测图像中的场景类型以及每个像素的相机深度的模型。 这个模型的损失函数将是分类损失和深度预测损失的总和。
TF-Slim提供了一个易于使用的机制,通过损失模块定义和跟踪损失功能。 考虑一下我们想要训练VGG网络的简单情况:
- classification_loss = slim.losses.softmax_cross_entropy(scene_predictions, scene_labels)
sum_of_squares_loss = slim.losses.sum_of_squares(depth_predictions, depth_labels)
regularization_loss = slim.losses.get_regularization_losses()
slim.losses.get_total_loss(add_regularization_losses=False)
1 | import tensorflow as tf |
5. 保存读取模型
通过以下功能我们可以载入模型的部分变量:
1 | # Create some variables. |
通过这种方式我们可以加载不同变量名的变量!!
————————————————
版权声明:本文为CSDN博主「醉小义」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_30638831/article/details/81389533