
tensorflow
loovelj
这个作者很懒,什么都没留下…
展开
-
Tensorflow之TFRecord制作——VOC数据为例
TFRecord 是TensorFlow专用的数据处理文件,方便在训练的时候快速读取和转移现在就基于VOC数据集介绍一下。1、生成TFRecord首先就是封装数据集,其具体方法如下:具体实现代码为:with tf.io.gfile.GFile(full_path, 'rb') as fid: encoded_jpg = fid.read() def int64_feature(value): return tf.train.Feature(int64_list=tf原创 2020-07-09 17:33:02 · 602 阅读 · 0 评论 -
tensorflow2 中szie 和shape的区别
最近在根据pytorch的SSD代码改写为tensorflow2的。其中,pytorch中求tensor的矩阵大小,直接用size就可以了。例如:#简洁明了>>> torch.empty(3, 4, 5).size()torch.Size([3, 4, 5])但是到TensorFlow2中,是不能这样了。TensorFlow2中应该使用shapeReturns the shape of a tensor.tf.shape(input, out_type=tf.dtypes原创 2020-06-15 17:03:58 · 390 阅读 · 0 评论 -
关于SSD中Conv4_3的L2 Norm处理
最近研究SSD代码时,发现在Conv4_3特征层后,进行了L2 Norm 的处理,最后研究了一下。首先介绍一下L2 Norm,其实很简单,就是把所有值平方后加起来,求根以后当分母,然后每个数当分子,进行求解, L2 Regularization and Batch Norm 详细介绍了他的不同但是简而言之,L2 Norm 是在channel上进行求平均, 而batch_norm 是对=[batch,higth,width]进行求平均至于为什么要用L2Normal,原作者说conv4_3和其他特种层原创 2020-06-04 20:11:24 · 1916 阅读 · 0 评论 -
TypeError default_name type type list is not a string type
最近使用Tensorflow 1.15版本跑老版本的代码时,报错如下:TypeError: `default_name` type (<type 'list'>) is not a string type.经过查找,git issues解决方案是:Using the TensorFlow documentation for tf.name_scope, I resolved the issue by prepending [x] with values=. That is chang原创 2020-06-02 10:50:16 · 508 阅读 · 2 评论 -
EAST框架解析
EAST框架解析EAST简介一、训练第一步:图像预处理二、模型训练1)前向计算Loss 计算三、前向推理正向预测图像:Locality-Aware NMS总结:EAST简介EAST是一个文本检测模型,由于他的实现方式非常简洁且高效,所以吸引了很多人用他的方法做文本检测,具体实现方法已经有很多人讲过,下面将记录一下其中的具体代码处理过程。EAST论文地址:https://arxiv.org/p...原创 2020-04-27 17:31:34 · 1840 阅读 · 0 评论 -
cuda9升级cuda10方法记录 ubuntu1604
由于最近的tensorflow2.0和pytorch都纷纷需要cuda10的支持,即使是使用conda安装,也要跟新driver 到410以上,以前的384版本的driver也不行了。索性就一起升级了,其中遇到很多坑,记录一下,希望能帮助大家,不过安装有风险,安装需谨慎!推荐一个网站,所有驱动都可以在这里下 Ubuntu 环境,这位博主真是功德无量啊1、下载安装文件(1)下载驱动在Nvi...原创 2019-11-18 17:28:28 · 9447 阅读 · 1 评论 -
OutOfRangeError (see above for traceback): Read less bytes than requested
最近在使用PSENet,目前我是部署在GPU服务器上,然后用Pycharm远程连接调试。刚开始还是好的,后面运行会出现OutOfRangeError (see above for traceback): Read less bytes than requested在github上看,因为model损坏了。原因是pycharm在同步ckpt文件的时候,我中断过,后面每次pycharm自动同步...原创 2019-04-17 17:26:17 · 3761 阅读 · 0 评论 -
Batched output tensor's 0th dimension does not equal the sum of the 0th dimension sizes of the input
最近在部署GPU版的Tersorflow_Serving 服务,遇到这个问题,经过查询,是规定是否可以batch输入的时候,我设置为了TRUE.docker run -p 8503:8503 \ --mount type=bind,source=/root/tfserving/models,target=/models \ -t --entrypoint=tensorflow_model...原创 2019-04-28 17:44:13 · 938 阅读 · 0 评论 -
invalid argument "type=bind,source=/tmp/tfserving/serving/tensorflow_serving
今天在测试Tensorflow Serving Docker 的代码,前面一直是报错,说找不到libcuda.so, libcuda reported version is: Not found: was unable to find libcuda.so DSO loaded into this program查询了很多解决方案,发现需要dockerfile 立执行 参考链接run ...原创 2019-04-29 12:11:27 · 1512 阅读 · 0 评论 -
Docker网桥影响不同网段ping通的问题
最近再用Docker部署TensorFlow Serving 服务的时候,发现部署好以后,其他服务器无法调用,主要是因为Ping不通,查看ifconfig,发现了Docker会初始化一个docker0的网桥docker0和真是的eth0网段不同,我如果现在找一台内网IP为172.16.0.13的服务器可以ping通,但是用172.17.0.13 的服务器就无法ping通了。在参考了这篇文章...原创 2019-05-07 11:59:57 · 2106 阅读 · 0 评论 -
Docker Tensorflow-Serving Predictions too large
最近在使用TensorFlow Serving的时候,如果图片较大,会出现如下的报错“grpc_message”:“Received message larger than max (14830491 vs. 4194304)”经过查询,是因为grpc 默认只能传输4M的文件,而我们超过的这个阈值,所以要设置这个阈值MAX_MESSAGE_LENGTH = 429496729 #传输最大...原创 2019-05-23 15:21:06 · 316 阅读 · 0 评论 -
Adam_1 not found in checkpoint
今天训练网上的代码,目前想基于他们训练好的代码,restore ckpt文件的参数以后,再接着训练。但是加载完数据以后,报错为Adam_1 not found in checkpoint经过查找,应该是他们训练好的模型,没有存这些参数,经过查找方法,在GitHub上找到了答案,具体就是在checkpoint里找到所有的参数,和model文件里面的匹配,匹配上就用,匹配不上就算了。def ...原创 2019-07-05 16:23:22 · 1771 阅读 · 2 评论 -
tfreocrd_CRNN_使用
# -*- coding: utf-8 -*-import tensorflow as tfimport cv2def _parse_function(serialized_example): features = tf.parse_single_example(serialized_example, ...原创 2019-09-04 09:46:11 · 347 阅读 · 0 评论 -
Using a `tf.Tensor` as a Python `bool` is not allowed
今天在处理数据时,有个小问题,就是import tensorflow as tfa = tf.constant([1,2,3])b = tf.equal(a, 0)with tf.Session() as ss: print(ss.run(a,b)) #报错 Using a `tf.Tensor` as a Python `bool` is not allowed 但...原创 2019-09-03 17:10:39 · 17884 阅读 · 5 评论 -
TypeError: non_max_suppression() got an unexpected keyword argument 'score_threshold'
在使用TensorFlow 的Object Detection中,使用 TensorFlow 1.8及以下环境会报错如下:TypeError: non_max_suppression() got an unexpected keyword argument 'score_threshold'解决方法:升级TensorFlow到1.9及以上1.github参考...原创 2019-04-01 15:39:34 · 1779 阅读 · 0 评论 -
tensorflow ResourceExhaustedError (see above for traceback): OOM when allocating tensor with shape
1、问题:在tensorflow 的Object detection 中,如果出现上面的错误,就是内存溢出,主要原因是设置的batchsize过大2、解决方法:在config中,减少batch_size的数值就好...原创 2019-03-29 16:19:09 · 1039 阅读 · 0 评论 -
tensorflow object detection--assign requires shapes of both tensors to match
最近在使用Object Detection中,出现assign requires shapes of both tensors to match解决方法:config中设置的model为官网上预训练的ckpt位置, fine_tune_checkpoint: \ #这个是预训练好的模型位置 "/object_detect/models/research/object_detec...原创 2019-03-29 16:12:34 · 599 阅读 · 0 评论 -
TensorFlow 持久化
今天开始研究持久化存储,对于一个模型,我们为了方便,不用把模型的源代码都拿过来,可以只要一个记录图和里面参数的文件就好。迁移学习就是这么做的,我们最后只是把输出个数修改一下就完成了保存首先是存储,就是搭好框架以后存进来import tensorflow as tffrom tensorflow.python.framework import graph_util#定义变量...原创 2018-04-19 14:24:26 · 249 阅读 · 0 评论 -
windows环境下graphviz 安装方法
Failed to import pydot. You must install pydot and graphviz for pydotprint to work. 报错解决方案关于问题graphviz 是可以在keras下生成jpg格式的神经网络结构,但是安装时,不能直接使用pip安装,否则依然会报错参考网址。首先在官网下载相对于的版本,我是win10,所以在[graphviz...原创 2018-07-03 09:29:03 · 1627 阅读 · 0 评论 -
Tensorboard使用总结
TensorBoard简介TensorBoard是tensorlflow界面可视化的工具,由于可以将需要的观察的参数无缝衔接在TensorFlow的网络中,因此有着很便利的使用方式。具体可参考官方文档TensorBoard一般有两个展示形式,包括折线图和直方图,同时也提供图片展示和视频展示。def variable_summaries(var): """Attach a l...原创 2018-07-20 09:49:36 · 643 阅读 · 0 评论 -
RNN、LSTM学习之路
深度学习中,RNN是非常重要的一个部分,一般都放在了最后,因为公式复杂,代码要比CNN要多一些,最近看了很多文档后,总结一下RNN首先RNN是结合前面很多输入状态进行计算获得输出 当然,随着实际情况的改变,也会有不同的变形,主要如下所示:其中,具体到每个Neural,简单的RNN示例图如下图所示: 单是,对于主角LSTM,要复杂一下,从一个函数变为4个计算关于具体的...原创 2018-07-20 09:50:21 · 237 阅读 · 0 评论 -
TensorFlow-Object-Detection-API使用经验
最近在使用Faster R-CNN去识别表格位置,找了很多Demo,不过我觉得如果用管方的肯定有保证,就用了TensorFlow中的Models自带的Object-Detection方法,下载地址但是我看了一下源码,确实像正规的工程文件,代码配置灵活,使用方便,如果按照教程走,几乎没有Bug。有时间再仔细研究源码,多学习学习。Faster R-CNN是目前运用广泛的目标检测方法,具体实施方法可...原创 2018-08-15 10:13:51 · 353 阅读 · 0 评论 -
Object_dection TypeError: can't pickle dict_values objects
今天训练,报错如上,则应该在research/object_detection/model_lib.py文件中修改,添加list()方法 # Eval metrics on a single example. eval_metric_ops = eval_util.get_eval_metric_ops_for_evaluators( #eval_config, ...原创 2018-12-12 19:49:25 · 853 阅读 · 0 评论 -
ImportError: No module named _mask
在tensorflow的object_detection的训练中 import pycocotools._mask as _maskImportError: No module named _mask如果遇到上面的报错,就是系统安装包缺失再执行一次sudo apt-get install protobuf-compiler python-pil python-lxml python...原创 2018-12-12 19:54:35 · 3372 阅读 · 4 评论 -
Failed to get convolution algorithm. This is probably because cuDNN failed to initialize
在2018年12月13日21:11:28,目前版本的TensorFlow的ObjectDection中,使用tensorflow-gpu ==1.12 版本会报错,如上,将版本降到tensorflow-gpu ==1.9.0即可正常运行原创 2018-12-13 21:12:53 · 17966 阅读 · 23 评论 -
TensorFlow-Object-Detection SSD MobileNet: Cannot finetune from checkpoint
本文参考GitHub中 Cannot finetune from checkpoint今天在使用tensorflow中的ssd+mobileNet,因为内存不够报错后,把batch-size改为1后,再继续训练,会出现这个问题,进过上面的GitHub提示,说说在存放checkpoint时,已经有存在的ckpt文件了,要清空才行。然后在训练就不会出现这个问题了...原创 2018-12-12 11:20:11 · 427 阅读 · 0 评论 -
ImportError: No module named 'pycocotools'
解决方法来自GitHubpip install “git+https://github.com/philferriere/cocoapi.git#egg=pycocotools&subdirectory=PythonAPI”原创 2018-12-12 11:51:30 · 1263 阅读 · 0 评论 -
TFRecord 使用总结
TFRecord简介TFrecord 是TensorFlow使用的一种数据格式,他可以把多个训练的图片许多信息压缩在一个文件中,用特殊的方式存储和读取,通过tf.dataset 这个API进行快速的读取和写入。具体使用官方教材,参考官方文档,里面有具体的使用方法,最近又出了高阶的使用方法,等流程跑通了再继续优化,Tensflow公众号-tf.data API,构建高性能 TensorFlo...原创 2019-01-14 20:34:18 · 1833 阅读 · 0 评论 -
使用Django做模型服务时预加载模型的问题
1、背景最近我们部署服务的时候,使用了Django作为服务,我们写了restful的接口,通过调用我们的接口,我们会把传进来的图片,使用caffemodel 或者 pb 文件计算出结果,再以json 格式返回,具体方法如下:2、文件持久化加载当每张图片来了以后,我们会使用模型进行分析。但是模型文件有小又大,从1M到500M,甚至更大。如果没来一张图片就加载一次模型,会耗费很多时间,降低效率。...原创 2019-02-13 15:09:00 · 3827 阅读 · 8 评论 -
Softmax的原理与实现
最近项目中需要调用softmax获取最大概率。但是我不想用tensorflow的自带的方法,想用python实现。开始以为很简单,但是发现对于矩阵的sotfmax还是要注意很多地方的,找了很多种方法,只有一种的结果和tensorflow计算的一样。所以记录下来。Softmax函数实际上是有限项离散概率分布的梯度对数归一化。它能将一个含任意实数的K维向量 Z“压缩”到另一个K维实向量 σ(z) 中...原创 2019-02-20 17:54:00 · 3838 阅读 · 1 评论 -
TensorFlow学习总结1
TensorFlow学习总结本文字代码大多来自《实战google深度学习框架》,在这里做记录。TensorFlow简介 TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上...原创 2018-04-17 17:13:39 · 352 阅读 · 0 评论