TensorFlow
Better Bench
CS博士;研究领域:类脑计算、连续学习、AI、数据挖掘、自然语言处理、数学建模,特长网球4.0
展开
-
【Tensorflow+Keras】学习率指数、分段、逆时间、多项式衰减及自定义学习率衰减的完整实例
【Tensorflow+Keras】学习率指数、分段、逆时间、多项式衰减及自定义学习率衰减的实现及完整实例1 引言Keras提供了四种衰减策略分别是ExponentialDecay(指数衰减), PiecewiseConstantDecay(分段常数衰减) , PolynomialDecay(多项式衰减)InverseTimeDecay(逆时间衰减)。只要在Optimizer中指定衰减策略,一行代码就能实现。在以下方法一中详细介绍。如果想要自定义学习率的衰减,有第二种方法,更加灵活,需要使用callb原创 2021-10-04 10:54:08 · 1645 阅读 · 0 评论 -
【Bert4keras】解决Key bert/embeddings/word_embeddings not found in checkpoint
1 问题使用苏神的bert4keras,预训练后产生了多个文件,但是在训练加载预训练模型的时候出错Key bert/embeddings/word_embeddings not found in checkpoint(1)pretrain.py文件# 预训练脚本import osos.environ['TF_KERAS'] = '1' # 必须使用tf.kerasimport tensorflow as tffrom bert4keras.backend import keras, Kf原创 2021-08-23 10:49:36 · 2840 阅读 · 5 评论 -
解决No registered ‘MultiDeviceIteratorGetNextFromShard‘ OpKernel for GPU devices compatible with node
1 环境tensorlfow 1.15Python3.7在使用tf.distribute.MirroredStrategy()进行分布式训练的时候报错报错No registered ‘MultiDeviceIteratorGetNextFromShard’ OpKernel for GPU devices compatible with node {{node MultiDeviceIteratorGetNextFromShard}}2 解决方式查阅资料此警告由于TensorFlow 版原创 2021-08-22 09:32:46 · 1091 阅读 · 1 评论 -
【Tensorflow+keras】使用keras API保存模型权重、plot画loss损失函数、保存训练loss值
举例实现(1)模型实现import tensorflow as tffrom tensorflow.keras.layers import *from tensorflow.keras import *import jsonimport numpy# 这个类解决json.dump(dict)时报错Object of type 'float32' is not JSON serializableclass NumpyEncoder(json.JSONEncoder): def d原创 2021-06-14 18:36:21 · 1075 阅读 · 0 评论 -
【Tensorflow+keras】解决使用model.load_weights时报错 ‘str‘ object has no attribute ‘decode‘
1 环境python 3.6Tensorflow 2.0在使用Tensorflow 的keras API,加载权重模型时,报错’str’ object has no attribute ‘decode’from tensorflow.keras import *from tensorflow.keras.layers import * model = testmodel()model = Model(model.input, Dense(1, activation='linear', k原创 2021-06-14 16:09:19 · 2480 阅读 · 0 评论 -
【Tensorflow+Keras】用Tensorflow.keras的方法替代keras.layers.merge
1 旧版在旧版的keras中,keras.layers.merge的使用方法keras.layers.merge([layer1,layer2], mode='sum', concat_axis=-1, name=None)layers1、layers2:是要合并的两个矩阵mode:合并模式,如果为字符串,则为下列值之一{“sum”,“mul”,“concat”,“ave”,“dot”}sum:求和mul:乘积concat:合并ave:求均值原创 2021-06-09 21:09:59 · 1412 阅读 · 0 评论 -
【Tensorflow】图解tf.image.extract_patches的用法--提取图片特定区域
目录1 引言2 图解2.1 Demo12.2 Demo21 引言(1)作用提取图片中的一小块区域,也可以用于分割图片为多个子图片。类似卷积核提取特征,但不一样(2)用法tf.image.extract_patches( images, sizes, strides, rates, padding, name=None)参数:images:图像矩阵,形状必须是[batch, in_rows, in_cols, depth]sizes:pat原创 2021-06-08 11:36:08 · 4117 阅读 · 8 评论 -
【Tensorflow+keras】Keras 用Class类封装的模型如何调试call子函数的模型内部变量
1 引言keras搭建神经网络模型有三种方式,第一种是使用sequential,第二种函数API,第三种是Class。第二种在IDE直接家断点就可以调试。但是在Class封装的神经网络中,如下,添加断点后,运行是不会进入到调试的。# 模型class test_layer(keras.layers.Layer): def __init__(self, **kwargs): super(test_layer, self).__init__(**kwargs) def bu原创 2021-06-08 11:04:49 · 1625 阅读 · 2 评论 -
【Tensorflow+keras】解决Exception has occurred: ValueError Shape mismatch: The shape of labels (received
1 引言使用网络做分类,训练的时候报错ValueError: Shape mismatch: The shape of labels (received (15,)) should equal the shape of logits except for the last dimension (received (5, 3))from tensorflow.keras import datasets, layers, modelsIMG_WIDTH = 192IMG_HEIGHT = 192tr原创 2021-06-06 21:43:27 · 1045 阅读 · 0 评论 -
【Tensorflow+keras】解决cuDNN launch failure : input shape ([32,2,8,8]) [[{{node sequential_1/batch_nor
1 引言环境Python 3.6 tensorflow 2.0在使用以下代码时,在gen_imgs = self.generator.predict([noise, sampled_labels])这行代码报错cuDNN launch failure : input shape ([32,2,8,8])[[{{node sequential_1/batch_normalization_2/cond/else/_1/FusedBatchNormV3}}]]from __future__ impo原创 2021-06-06 19:33:36 · 1567 阅读 · 1 评论 -
【Tensorflow+keras】解决 Fail to find the dnn implementation.
1 引言(1)环境Tensorflow 2.0Python 3.6(2)问题from tensorflow.keras import *from tensorflow.keras.layers import Bidirectional,LSTM在使用Bidirectional(LSTM )时,报错 [Derived] Fail to find the dnn implementation.2 解决因为在Tensorflow2.0中使用keras的API时,该版本的keras已经原创 2021-06-05 17:26:38 · 1748 阅读 · 0 评论 -
【Tensorflow+keras】Keras API三种搭建神经网络的方式及以mnist举例实现
目录1 第一种:Sequential2 第二种:函数式API3 第三种:class1 第一种:Sequential(1)简介序列模型,官网介绍代码参考:https://github.com/eriklindernoren/Keras-GAN/blob/master/gan/gan.py理论参考:https://zhuanlan.zhihu.com/p/113385350Keras Sequential API是实现Keras模型最简单的方式,就行它的名字所形容的一样,它将按照序列的方式实现模型,原创 2021-05-31 11:05:32 · 788 阅读 · 0 评论 -
【Tensorflow+keras】Keras API两种训练GAN网络的方式
目录1 第一种 train_on_batch2 第二种 tf.GradientTape()1 第一种 train_on_batchgithub:https://github.com/eriklindernoren/Keras-GAN/tree/master/cganfrom __future__ import print_function, divisionfrom tensorflow.keras.datasets import mnistfrom tensorflow.keras.layers原创 2021-05-31 11:00:58 · 667 阅读 · 0 评论 -
【Tensorflow+keras】用代码给神经网络结构绘图
引言在论文中可能有必要讲述清楚网络的结构,可以用代码实现漂亮的绘制结构。如图所示。2 步骤安装两个包,本人是LInux系统,用以下命令,如果是其他系统,参考网址sudo apt install graphvizpip install pydot3 实现import tensorflow as tffrom tensorflow.keras.layers import *from tensorflow.keras.models import Sequential, Modelmod原创 2021-05-21 10:44:09 · 1551 阅读 · 0 评论 -
【Tensorflow+Keras】keras实现条件生成对抗网络DCGAN--以Minis和fashion_mnist数据集为例
1 引言条件生成对抗网络(Conditional Generative Adversarial Nets,简称CGAN)是GAN的改进。举例如果使用Minist数据集,当使用GAN生成图片时,随机初始化一个和图片大小一致的矩阵和原始图片的矩阵进行博弈,产生一个新的类似于原始图片的网络。但当使用条件生成对抗网络时,在训练的时候,会同时输入label,告诉当前网络生成的图片是数字8,而不是生成其他数字的图片图1 GAN原理图2 实现Github源码...原创 2021-05-15 22:25:30 · 953 阅读 · 0 评论 -
【Tensorflow】解决Tensorboard: ValueError: Duplicate plugins for name projector
1 问题因为安装了两个版本的Tensorboard冲突了,需要删除所有相关文件,重新安装2 解决办法(1)第一步点击脚本链接把内容复制到test.py文件中,运行该文件python test.py(2)会输出指示,按照指示执行即可,比如我的输出是pip uninstall tb-nightly tensorflow tensorflow-gpupip install tensorflow # or `tensorflow-gpu`, or `tf-nightly`, 意思是需要卸载原创 2021-04-17 09:22:36 · 593 阅读 · 0 评论 -
【Tensorflow】解决 Could not load dynamic library ‘libcudart.so.10.1‘; dlerror: libcudart.so.10.1
1 问题环境python 3.8tensorflow 2.3CUDA 10.1问题:在使用import tensorflow as tf 时出现错误Could not load dynamic library ‘libcudart.so.10.1’; dlerror: libcudart.so.10.1: cannot open shared object file:No such file or directory;LD_LIBRARY_PATH:/usr/local/cuda/lib6原创 2021-03-18 11:41:51 · 4245 阅读 · 0 评论 -
【Tensorflow 2】Keras API+Estimator的使用
1 原因提高GPU利用率2 Example参考官网的介绍通过 Keras 模型创建 Estimator# 通过keras API 构建模型model = build_model()# 产生训练集sample 和labelx,y = generator_data(data_size,SNRdb)# 用Dataset封装,加快训练dataset_xy=tf.data.Dataset.from_tensor_slices((x,y)).shuffle(5000).batch(batchs).p原创 2021-03-10 18:00:28 · 688 阅读 · 1 评论 -
【Deepin 20系统】解决Check failed: err == cudaSuccess || err == cudaErrorInvalidValue Unexpected CUDA erro
问题环境Nvidia RTX 2070Tensorflow 2在利用GPU运行了程序。中断重新运行程序,就会报错,GPU内存不够,显然是被占用了F tensorflow/stream_executor/cuda/cuda_driver.cc:175] Check failed: err == cudaSuccess || err == cudaErrorInvalidValue Unexpected CUDA error: out of memory解决办法因为程序虽然没有运行了,但进程还原创 2021-03-09 20:33:40 · 3407 阅读 · 0 评论 -
【Tensorflow 2】解决tensorflow.python.framework.errors_impl.UnknownError: [_Derived_] Fail to find the
1 问题环境Deepin 20 OS linux系统Tensorflow2.0Python3.6GPU Rtx 2070cuda 10.0cudnn 10.0在使用双向LSTM时tf.keras.layers.Bidirectional(tf.keras.layers.LSTM(64)),报以下错误信息tensorflow.python.framework.errors_impl.UnknownError: [Derived] Fail to find the dnn im原创 2021-03-08 22:57:58 · 2190 阅读 · 1 评论 -
【Deepin 20系统+Tensorflow 2】Linux系统解决Could not load dynamic library ‘libcudart.so.10.0‘
问题环境Deepin 20系统: Debian OSNVIDIIA 驱动: NVIDIA-SMI 455.45.01 Driver Version: 455.45.01nvidia-smi 显示cuda版本: CUDA Version: 11.1安装的Cuda版本:11.1Tensorflow2.0在使用tensorflow2跑程序时,GPU没有利用起来,通过代码查看GPU使用情况,输出日志如下import tensorflow as tfprint(tf.test原创 2021-03-08 20:11:31 · 397 阅读 · 0 评论 -
【Tensorflow 2】查看GPU是否能应用
import tensorflow as tfprint(tf.test.is_gpu_available())如果输出True,则可以应用,如果输出False则不能应用原创 2021-03-08 19:39:33 · 1332 阅读 · 0 评论 -
【Tensorflow】解决A `Concatenate` layer should be called on a list of at least 2 inputs
问题环境:tensorflow2.0python 3.6在tensorflow2.3中使用没有问题,在Tensorflow2.0就报错Concatenate((a, b), axis = 3)解决使用tf.concat()合并两个tensor向量。如果数组使用np.concat()tf.concat([a, b], axis = 3)原创 2021-03-06 15:10:55 · 2972 阅读 · 0 评论 -
【Tensorflow】Found unexpected keys that do not correspond to any Model output: dict_keys([‘model_outp
问题环境python 3.8Tensorflow 2.3使用Tensorflow2版本报错Found unexpected keys that do not correspond to any Model output: dict_keys([‘model_output’]). Expected: [‘dense’]解决因为Tensorflow2的model使用的最后一层需要命名比如model_ouput,则对应并且在model.fit_generator的生成器函数中返回值要定义相应的字典原创 2021-02-27 22:07:19 · 2402 阅读 · 0 评论 -
【Tensorflow】解决Inputs to eager execution function cannot be Keras symbolic tensors, but found [<tf.Te
问题环境Python 3.8Tensorflow 2.3导入的包from tensorflow.python.keras import *from tensorflow.python.keras.layers import *程序确定没有问题但是运行会报错Inputs to eager execution function cannot be Keras symbolic tensors, but found [<tf.Tensor ‘input_2:0’解决原因是程序但是用t原创 2021-02-27 21:06:52 · 1891 阅读 · 5 评论 -
深度复数技术开源代码汇总
目录1 引言2 开源源码2.1 使用DeepComplex的所有源码汇总2.2 实现复数技术扩展的工具箱2.3 实现复数CNN的源码2.4 实现复数LSTM的源码1 引言复数的深度学习首次在2018年提出Deep Complex Networks (ICLR 2018)复数的应用非常广泛,比如在音频处理、信号处理、核磁共振信息处理都涉及到复数技术作者首次开源了复数处理技术的代码,并提出了卷积神经网络的复数处理技术,后者也有人陆续提出LSTM 的复数处理。接下来估计还会在提出以下方面的复数技术cl原创 2021-02-26 17:11:20 · 1031 阅读 · 0 评论 -
【Deepin 20系统】Tensorflow2.x离线下载cifar-10-python.tar.gz如何配置使用cifar10.load_data()
问题环境:Linux系统Tensorflow2.xpython3.8VScode在使用tensorflow2.x的以下源码时cifar10 = tf.keras.datasets.cifar10(x_train, y_train), (x_test, y_test) = cifar10.load_data()会自动联网,下载数据集https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz,但是终端下载会很慢,本人通过浏览器下载后,该原创 2021-02-05 18:01:08 · 732 阅读 · 0 评论 -
【Tensorflow+Keras】tf.keras.backend.image_data_format()的解析与举例使用
作用返回“channels_first’或“channels_last”,默认是channels_lastchannels_first表示图片数据的通道在第一维度[channel,28,28,3]channels_last表示图片数据的通道在最后一个维度[28,28,3,channel]举例使用import tensorflow.keras.backend as K image_format = K.image_data_format()image_format输出chan原创 2021-02-04 21:12:59 · 1605 阅读 · 5 评论 -
【北京大学】Tensorflow2.0循环神经网络:用基础RNN、LSTM、GRU实现股票预测
目录1 本讲目标2 回顾卷积神经网络3 循环神经网络(1)循环核(2)循环核按时间步展开(3)循环计算层(4)TF描述循环计算层(5)循环计算过程(6)循环计算过程24 RNN实现股票预测5 用LSTM实现股票预测(1)LSTM基本概念和原理(2)TF描述LSTM层6 GRU 实现股票预测(1)GRU计算过程(2)TF描述GRU层1 本讲目标(1)回顾卷积神经网络(2)循环神经网络• 循环核• 循环核时间步展开• 循环计算层• TF描述循环计算层• 循环计算过程(3)实践• ABCDE字原创 2020-11-07 21:25:00 · 1633 阅读 · 1 评论 -
【北京大学】Tensorflow2.0卷积神经网络,用基础 CNN、Lenet、Alexnet、VGGNet、InceptionNet 和ResNet实现图像识别
目录1 本讲目标2 卷积计算过程3 感受野4 全零填充5 TF描述卷积计算层6 批标准化7 池化8 舍弃Dropout10 CIFAR 数据集11 卷积神经网搭建示例12 Lenet实现13 AlexNet14 VGGNet15 INceptionNet16 ResNet1 本讲目标(1)卷积计算过程(2)感受野(3)全零填充(Padding)(4)TF描述卷积计算层(5)批标准化(Batch Normalization,BN)(6)池化(Pooling)(7)舍弃(Dropout)(8)原创 2020-11-05 20:13:22 · 904 阅读 · 6 评论 -
【北京大学】Tensorflow2.0神经网络八股扩展、增加自制数据集、数据增强、断点续参数提取和acc、loss可视化,实现给图识物的应用程序
目录1 本讲目标(1)自制数据集,解决本领域应用(2)数据增强,扩充数据集(3)断点续训,存取模型(4)参数提取,把参数存入文本(5)acc/loss 可视化,查看训练效果(6)应用程序,给图识物2 自制数据集(1) 观察数据集数据结构,给x_train、y_train 、x_test、y_testdef generateds(path, txt): f = open(txt, 'r') # 以只读形式打开txt文件 contents = f.readlines()原创 2020-11-05 09:11:45 · 808 阅读 · 1 评论 -
【北京大学】Tensorflow2.0神经网络搭建八股、用六步法写出手写数字识别训练模型
目录1 本讲摘要3 六步法搭建网络4 搭建网络八股class5 MINIST数据集6 FASHION数据集1 本讲摘要(1)本讲目标:使用八股搭建神经网络(2)摘要• 神经网络搭建八股• Iris代码复现• MNIST数据集• 训练 MNIST 数据集• Fashion数据集3 六步法搭建网络用Tensorflow的API:tf.keras搭建网络八股(1)六步法imorttrain,test# 搭建网络结构```pythonmodel = tf.keras.models原创 2020-11-02 21:14:39 · 848 阅读 · 0 评论 -
【北京大学】Tensorflow2.0搭建一个神经网络入门
学习视频:北京大学Tensorflow2.0 目录1 前言2 人工只能三学派3 鸢尾花分类(Iris)4 张量生成5 tensorflow常用函数6 鸢尾花数据集读入7 神经网络实现鸢尾花分类1 前言(1)第一讲:神经网络的计算过程,搭建第一个神经网络模型准备数据搭建网络优化参数应用网络(2)第二讲:神经网络的优化方法掌握学习率、激活函数、损失函数和正则化的使用。用Python写出SGD、Momentum、Adagrad、RMSProp、Adam五中反向传播优化器。(3)第三讲:神经原创 2020-10-27 17:22:19 · 982 阅读 · 0 评论 -
【学习笔记】Tensorflow2.0课程
课程链接目录1 课程简介2 机器学习原理--线性回归3 tf.keras实现线性回归4 梯度下降算法5 多层感知器(神经网络)与激活函数6 多层感知器(神经网络)代码实现7 逻辑回归和交叉熵8 逻辑回归实现9 softmax分类10 softmax代码实现-FashionMnist数据分类实例11 热独编码与交叉熵损失函数12 优化函数、学习速率、反向传播算法13 网络优化和超参数选择14 Dropout抑制过拟合和网络参数选择总原则15 Dropout和过拟合抑制16 函数API和多输入输出模型17原创 2020-10-26 21:31:16 · 750 阅读 · 0 评论 -
【北京大学】Tensorflow2.0学习率、激活函数、损失函数、优化器、过拟合和欠拟合
1 本讲知识结构(1)目标:学会神经网络优化过程,使用正则化减少过拟合,使用优化器更新网络参数(2)知识结构• 预备知识• 神经网络复杂度• 指数衰减学习率• 激活函数• 损失函数• 欠拟合与过拟合• 正则化减少过拟合• 优化器更新网络参数2 预备知识(1) tf.where()条件语句为真返回A,为假返回Btf.where(条件语句,真返回A,假返回B)a = tf.constant([1,2,3,1,1])b = tf.constant([0,1,3,4,5])c =原创 2020-11-05 20:41:43 · 972 阅读 · 2 评论 -
【Python-Tensorflow】tf.concat()的解析与使用
作用tf.concat( values, axis, name=‘concat’)输入张量的数据沿axis 维度合并举例使用(1)沿着0维度合并t1 = [[1, 2, 3], [4, 5, 6]]t2 = [[7, 8, 9], [10, 11, 12]]tf.concat([t1, t2], 0)<tf.Tensor: shape=(4, 3), dtype=int32, numpy=array([[ 1, 2, 3],[ 4, 5, 6],[ 7, 8,原创 2021-02-04 15:40:48 · 668 阅读 · 1 评论 -
【Tensorflow+Keras】tf.keras.layers.Bidirectional()的解析与使用
1 作用实现RNN类型神经网络的双向构造RNN类型神经网络比如LSTM、GRU等等2 参数tf.keras.layers.Bidirectional(layer,merge_mode=‘concat’,weights=None,backward_layer=None)layer 神经网络,如RNN、LSTM、GRUmerge_mode 前向和后向RNN的输出将被组合的模式。{‘sum’,‘mul’,‘concat’,‘ave’,None}中的一个。如果为None,则将不合并输出,原创 2021-01-16 21:50:40 · 15939 阅读 · 6 评论 -
【Tensorflow+Keras】tf.keras.layers.LSTM的解析与使用
1 作用原理实现LSTM网络原理介绍:长短期记忆模型(Long-Short Term Memory,LSTM)2 参数tf.keras.layers.LSTM(units,activation=“tanh”,recurrent_activation=“sigmoid”,#用于重复步骤的激活功能use_bias=True,#,是否图层使用偏置向量kernel_initializer=“glorot_uniform”,#kernel权重矩阵的 初始化程序,用于输入的线性转换recurren原创 2021-01-16 18:08:58 · 22915 阅读 · 2 评论 -
【Python-Tensorflow】tf.data.Dataset的解析与使用
1 作用dataset = tf.data.Dataset…()构建和处理数据集。包括三种类型的操作。根据输入数据创建源数据集。应用数据集转换以预处理数据。遍历数据集并处理元素。2 tf.data.Dataset的函数2.1 from_generator()通过生成器去创建dataset,该函数的参数用于传生成器# 定义生成器def gen(): ragged_tensor = tf.ragged.constant([[1, 2], [3]]) yield 42, r原创 2021-01-16 10:59:21 · 13566 阅读 · 2 评论 -
【Python-Tensorflow】ERROR: Could not find a version that satisfies the requirement tensorflow
1 问题通过以下命令执行安装TensorFlow时,报错ERROR: Could not find a version that satisfies the requirement tensorflow,警告找不到这个TensorFlow的版本,但是实际上这个版本是存在。pip install tensorflow-gpu==1.152 问题分析因为Pip版本对应的Python版本下没有这个版本的tensorflow。当前指令下的Python版本没有选择对。通过执行命令pip -V可原创 2021-01-06 11:21:56 · 37887 阅读 · 4 评论