1.尽量控制图片大小在1024以内,不然显存会爆炸。

2.尽量使用多GPU并行工作,训练下降速度快。

3.当需要被检测的单张图片里物体太多时,记得修改Region_proposals的个数

4.测试的时候单张图片里物体过多记得修改

vis_util.visualize_boxes_and_labels_on_image_array函数里面的
max_boxes_to_draw,这个默认是20。

5.训练的样本,自己造的数据集不要与原始数据集量级差异过大,自己造的数据集过多的话,容易导致模型偏向自己造成的数据集,产生对自己造的数据集产生过拟合。

6.tensorflow object detection API 怎么改GPU资源的限制,使其不全部占有gpu资源

7.切割完图片一定要记得设置xml里面的图片大小为真实图片大小。不然会导致总体loss下降了,但是Faster R-CNN最后一层分类loss始终接近于0

8.

分享一个我使用一机多卡即同一台机器使用不同的GPU的办法:
window下使用批处理命令:
set CUDA_VISIBLE_DEVICES=0
set PYTHONPATH=models/research;models/research/slim
python3 train.py
--logtostderr
--pipeline_config_path=faster_rcnn_inception_resnet_v2_atrous_coco.config
--train_dir=train
--num_clones=1
linux使用.sh文件:
export CUDA_VISIBLE_DEVICES=0
export PYTHONPATH=models/research:models/research/slim
python3 train.py
--logtostderr
--pipeline_config_path=faster_rcnn_inception_resnet_v2_atrous_coco.config
--train_dir=train
--num_clones=1
注:CUDA_VISIBLE_DEVICES=? “?”就是GPU的编号,window下set PYTHONPATH中间是分号";",linux下是冒号":"
 
9.sess = tf.Session(config=tf.ConfigProto(allow_soft_placement=True, log_device_placement=True))可以在使用GPU不能训练时,切换到CPU,并打印出来
10.pip安装某个版本tensorflow-gpu例如:pip install tensorflow-gpu==1.4.0
11.tensorflow禁用GPU,使用CPU:

12.用大的bitch size去榨干GPU的资源,提高GPU利用率,更快地到底收敛以及一定程度防止过拟合

Tensorflow技巧的更多相关文章

  1. Tensorflow小技巧整理:修改张量特定元素的值

    TensorFlow小技巧整理:修改张量特定元素的值 最近在做一个摘要生成的项目,过程中遇到了很多小问题,从网上查阅了许多别人解决不同问题的方法,自己也在旁边开了个jupyter notebook搞些 ...

  2. TensorFlow之DNN(二):全连接神经网络的加速技巧(Xavier初始化、Adam、Batch Norm、学习率衰减与梯度截断)

    在上一篇博客<TensorFlow之DNN(一):构建“裸机版”全连接神经网络>中,我整理了一个用TensorFlow实现的简单全连接神经网络模型,没有运用加速技巧(小批量梯度下降不算哦) ...

  3. [开发技巧]·TensorFlow中numpy与tensor数据相互转化

    [开发技巧]·TensorFlow中numpy与tensor数据相互转化 个人主页–> https://xiaosongshine.github.io/ - 问题描述 在我们使用TensorFl ...

  4. Google开发者大会:你不得不知的Tensorflow小技巧

    Google开发者大会:你不得不知的Tensorflow小技巧 同步滚动:开   Google Development Days China 2018近日在中国召开了.非常遗憾,小编因为不可抗性因素滞 ...

  5. [开发技巧]·TensorFlow&Keras GPU使用技巧

    [开发技巧]·TensorFlow&Keras GPU使用技巧 ​ 1.问题描述 在使用TensorFlow&Keras通过GPU进行加速训练时,有时在训练一个任务的时候需要去测试结果 ...

  6. TensorFlow相关的一些技巧

    谷歌开发技术推广工程师 Laurence Moroney 在 Google Cloud Next 大会上进行了一段 42 分钟的演讲,主题是「What's New with TensorFlow?」. ...

  7. tensorflow 2.0 技巧 | 自定义tf.keras.Model的坑

    自定义tf.keras.Model需要注意的点 model.save() subclass Model 是不能直接save的,save成.h5,但是能够save_weights,或者save_form ...

  8. TensorFlow

    转自:http://blog.csdn.net/stdcoutzyx/article/details/51645396 本片博文是参考文献[1]的阅读笔记,特此声明 TensorFlow,以下简称TF ...

  9. (转) TensorFlow深度学习,一篇文章就够了

    TensorFlow深度学习,一篇文章就够了 2016/09/22 · IT技术 · TensorFlow, 深度学习 分享到:6   原文出处: 我爱计算机 (@tobe迪豪 )    作者: 陈迪 ...

随机推荐

  1. 2019牛客国庆集训派对day5

    2019牛客国庆集训派对day5 I.Strange Prime 题意 \(P=1e10+19\),求\(\sum x[i] mod P = 0\)的方案数,其中\(0 \leq x[i] < ...

  2. 串口通信中,QString 、QByteArray 转化需要注意的问题

    在做串口通信的时候,其中犯了一个错误.在此记录一下:QT中串口通信接到收据和发送数据的接口如下: QByteArray QIODevice::readAll()//接受数据 qint64 QIODev ...

  3. 跟我一起使用socket.io创建聊天应用

    安装express插件 新建index.js var app = require('express')(); var http = require('http').Server(app); app.g ...

  4. leetcode--81-搜索旋转排序数组②

    题目描述: 33题 方法一: class Solution: def search(self, nums: List[int], target: int) -> bool: l, r = 0, ...

  5. HTML - 表单标签相关

    <html> <head></head> <body> <!-- 表单标签 : 收集其标签内部的数据, 提交给指定的服务器 action : 数据 ...

  6. 如何使用C++获取 进程的 绝对路径

    DWORD GetProcessId(IN PCHAR szExeName) { DWORD dwRet = 0; DWORD dwCount = 0; HANDLE hSnapshot = Crea ...

  7. LUOGU P2831 愤怒的小鸟 (NOIP 2016)

    题面 题解 好像昨天wxl大爷讲的是O(Tn*2^n)的做法,后来没想通,就自己写了个O(Tn^2*2^n)的暴力状压, 莫名其妙过了??数量级二十亿??懵逼,可能到了CCF老爷机上就T了.dp[S] ...

  8. System.Web.Mvc.RedirectResult.cs

    ylbtech-System.Web.Mvc.RedirectResult.cs 1.程序集 System.Web.Mvc, Version=5.2.3.0, Culture=neutral, Pub ...

  9. Java笔记 - 异常机制

    JAVA异常机制是Java提供的用于处理程序在运行期可能出现的异常事件(如数组下标越界.文件不存在等)的一种机制,使程序不会因为 异常的发生 而 阻断或产生不可预见的结果 .而且还可以将逻辑代码与错误 ...

  10. Python2.7版本:定义类时为什么要继承object类?

    ********此答案摘自知乎,且经过自己实际运行后得出******** 继承 object 类的是新式类,不继承 object 类的是经典类 例子: 新式类: 经典类: B.C 是 A 的子类,D ...