随笔分类 -  tensorflow

摘要:在使用tf.train.Saver函数保存模型文件的时候,是保存所有的参数信息,而有些时候我们并不需要所有的参数信息。我们只需要知道神经网络的输入层经过前向传播计算得到输出层即可,所以在保存的时候,我们也不需要保存所有的参数,以及变量的初始化、模型保存等辅助节点信息与迁移学习类似。之前使用tf.tr 阅读全文
posted @ 2019-09-09 10:27 下路派出所 阅读(2411) 评论(0) 推荐(0)
摘要:在QAnet最后的三个encoder中,各项参数为,其中hidden size为context_query输出的hidden size 阅读全文
posted @ 2019-09-05 10:43 下路派出所 阅读(268) 评论(0) 推荐(0)
摘要:def noam_scheme(global_step, num_warmup_steps, num_train_steps, init_lr, warmup=True): """ decay learning rate if warmup > global step, the learning rate will be global_step/num_warmup_st... 阅读全文
posted @ 2019-07-22 16:53 下路派出所 阅读(2550) 评论(0) 推荐(0)
摘要:def focal_loss(pred, y, alpha=0.25, gamma=2): r"""Compute focal loss for predictions. Multi-labels Focal loss formula: FL = -alpha * (z-p)^gamma * log(p) -(1-a... 阅读全文
posted @ 2019-07-11 10:43 下路派出所 阅读(3388) 评论(0) 推荐(0)
摘要:tf.clip_by_value(t, clip_value_min, clip_value_max, name=None) 功能:基于定义的min与max对tesor数据进行截断操作,目的是为了应对梯度爆发或者梯度消失的情况 阅读全文
posted @ 2019-07-05 10:27 下路派出所 阅读(896) 评论(0) 推荐(0)
摘要:Session概述 1. Session是TensorFlow前后端连接的桥梁。用户利用session使得client能够与master的执行引擎建立连接,并通过session.run()来触发一次计算。它建立了一套上下文环境,封装了operation计算以及tensor求值的环境。 2. sess 阅读全文
posted @ 2019-06-24 18:08 下路派出所 阅读(926) 评论(0) 推荐(0)
摘要:TensorFlow系统架构 TensorFlow设计十分精巧,基于分层和模块化的设计思想进行开发的。框架如下图 整个框架以C API为界,分为前端和后端两大部分。 模型构造和执行流程 TensorFlow的一大特点是,图的构造和执行相分离。用户添加完算子,构建好整图后,才开始进行训练和执行,也就是 阅读全文
posted @ 2019-06-24 15:30 下路派出所 阅读(2360) 评论(0) 推荐(0)
摘要:https://blog.csdn.net/weixin_42499236/article/details/83933629 阅读全文
posted @ 2019-05-28 15:24 下路派出所 阅读(134) 评论(0) 推荐(0)
摘要:gvs = optimizer.compute_gradients(loss) # 计算出梯度和变量值 capped_gvs = [(tf.clip_by_value(grad, -5e+10, 5e+10), var) for grad, var in gvs] # 梯度裁剪 train_op = optimizer.apply_gradients(capped_gvs, global_ste... 阅读全文
posted @ 2019-05-06 14:07 下路派出所 阅读(1303) 评论(0) 推荐(0)
摘要:with tf.gfile.GFile(os.path.join(self.model_dir, 'ner_model.pb'), 'rb') as f: graph_def = self.tf.GraphDef() graph_def.ParseFromString(f.read()) input_map = {"input_ids:0": self.inp... 阅读全文
posted @ 2019-03-04 17:05 下路派出所 阅读(1632) 评论(0) 推荐(0)
摘要:训练时: 1. 输入正确标签一次性解码出来 预测时: 1. 第一次输入1个词,解码出一个词 第二次输入第一次输入的词和第一次解码出来词一起,解码出来第3个词,这样依次解码,解码到最长的长度或者<pad>。就结束。 训练时,全部输入与预测时一个一个输入是一样的 1. 需要传入词向量 2.positio 阅读全文
posted @ 2019-02-25 14:30 下路派出所 阅读(1121) 评论(0) 推荐(0)
摘要:当我们把训练好的tensorflow训练图拿来进行预测时,会有多个训练时生成的节点,这些节点是不必要的,我们需要在预测的时候进行删除。 下面以bert的图为例,进行优化 返回一个gfile类型的文件,我们可以像原来导入模型文件时,恢复图,不过这个图是优化过的。 阅读全文
posted @ 2019-02-16 17:34 下路派出所 阅读(969) 评论(0) 推荐(0)
摘要:因为涉及到同一台电脑多个GPU,在指定tensorflow图的时候,需要为不同的图指定不同的GPU,所以必须在导入tensorflow之前,指定可用的GPU 阅读全文
posted @ 2019-02-16 17:26 下路派出所 阅读(367) 评论(0) 推荐(0)
摘要:saver = self.tf_instance.train.Saver() self.sess = self.tf_instance.Session(config=sess_config, graph=graph) self.sess.run(self.tf_instance.global_variables_initializer()) # 在restore时加入这行代码 self.tf_i... 阅读全文
posted @ 2019-02-16 17:21 下路派出所 阅读(695) 评论(0) 推荐(0)
摘要:ckpt_file = os.path.join(self.args.bert_dir, 'model.ckpt-6123') # 获取图的reader reader = self.tf_instance.train.NewCheckpointReader(ckpt_file) # 根据节点名称获取节点 output_weights = reader.get_tensor('output_we... 阅读全文
posted @ 2019-02-16 17:19 下路派出所 阅读(2134) 评论(0) 推荐(0)
摘要:1.先获取节点 2.获取图 阅读全文
posted @ 2019-02-16 17:16 下路派出所 阅读(744) 评论(0) 推荐(0)
摘要:1.tf.convert_to_tensor:传入的list必须是一个有固定长度的list,如果为2维的list,第二维的list的长度必须是固定。 2.tf.layers.conv1d(),默认宽卷积,里面的参数filter_size,为卷积核的height,而卷积核的width为输入的width 阅读全文
posted @ 2018-05-23 11:12 下路派出所 阅读(367) 评论(0) 推荐(0)