-
参考资料: What is the TensorFlow checkpoint meta file? TensorFlow: Restoring variables from from multiple checkpoints 合并模型的时候发现.meta一直在累加,而其他数据文件没有改变。因此来探究一下checkpoint的几个文件的含义。 This file contains a serialized [`MetaGraphDef` protocol …
Read More -
参考资料: programmers_guide/variables tf/Variable 之前感觉对tensorflow 的variable的理解不是很深刻...跑个模型啥的倒不会有什么问题,但是涉及分布式,模型并行之类的,感觉有些地方还是要理解得仔细一点比较好。 OVERVIEW variable的目的是将状态可持久化。 Unlike tf.Tensor objects, a tf.Variable exists outside the context of a singlesession.run call. 通俗地说就是,variable可以用来存储一个可持久化的tensor 一些op允许读取或者修改tensor的值,这些修改 …
Read More -
tensorflow-session官方文档 说下我自己的理解: session中文一般叫会话,可以理解成op执行时候需要的一层虚拟化的封装。 op必须在session中才能执行。 tensor也是在tensor中才可以存在(tf.variable和tensor几乎是一回事,只是tf.variable的会话不要求session,也可以理解成tf.variable在session中就成了tensor. 需要注意的是session一般会占据资源,所以在使用完记得释放,或者写成with的形式(看到with总想叫成开域语句...感觉暴露年龄orz 下面这两种形式是等价的: # Using the `close()` method. sess …
Read More -
是在使用分布式tensorflow遇到的一个错误 报错如下: InvalidArgumentError (see above for traceback): Cannot assign a device for operation 'save/Rest│| 2 GeForce GTX 1080 On | 0000:08:00.0 Off | N/A | oreV2_888': Operation was explicitly assigned to /job:worker/task:0/device:CPU:0 but available │| 24% 39C P8 12W / 180W | 0MiB / 8114MiB | 0% …
Read More -
感觉资料不是很多,先收集资料好了。 tf-distributed官网文档 SO-between-graph和in-graph的区别 inception.README.md SyncReplicasOptimizer SO_How does ps work in distribute Tensorflow? update:在多个nodes(机)上跑。。。tf默认是异步更新的。。。同步的话。。大概需要syncreplicasoptimizer? 来直观感受下,不同task的之间并不同步 创建一个cluster 每一个task唯一对应一个server,server中有一个master,还有若干个worker cluster是task的集 …
Read More -
update:supervisor的缺点是遇到问题只会抛异常,所以现在有一个better的管理工具,MonitoredSession master,chief worker,Supervisor 这几个概念有点搞不清(我最菜.jpg 因此来学习一下。 概述 原生的tensorflow 是各种东西都需要自己手动,如果是小规模的训练问题倒是不大,但是如果是训练的数据量比较大,可能需要训练几天或者几个月。。。 那原生的tensorflow的健壮性可能就比较堪忧。。。 万一断电了之类。。。 这时候我们就可以使用supervisor 其主要提供下面三个功能,以增强训练的健壮性: * Handles shutdowns and crashes …
Read More -
其实这算法巨简单。。。。让我想到了均分纸牌(noip200? 还是大致说一下: 对于有 features 但是 **没有 **labels 的数据,没办法用监督学习,但是可以使用非监督学习的聚类算法。 所谓聚类,简单理解,就是把相似的分成一组。。。 k-means就是一个常见的聚类算法。。。 k代表可以把数据分成k组。 举一个平面上二维点的例子,算法步骤如下: 1. 随机k个点当做k个点作为k组的中心。 2. 根据现在的k个中心,将数据集中的点,按照【距离哪个中心最近就属于哪个中心】的原则,分组。 3. 在每一个组内求点的二维平均数,作为新的中心。**如果存在一个组的数据中心改变,那么返回2,否则结 …
Read More -
Adding a New Op * [目录](https://www.tensorflow.org/extend/adding_an_op#top_of_page) * [定义运算的接口](https://www.tensorflow.org/extend/adding_an_op#define_the_ops_interface) * [实现运算的核心部分(kernels)](https://www.tensorflow.org/extend/adding_an_op#implement_the_kernel_for_the_op) * [多线程cpu …
Read More -
这篇文章不会涉及tensorflow的具体使用,而是专注于介绍tensorflow的架构,目的是让开发者能够对tensorflow现有框架进行自定义的扩展。 tensorflow被设计用来处理大规模分布式训练,但是也足够灵活去处理新的machine learning模型或是系统层面的优化。 Overview tensorflow的结构图如下: 从下往上大致上抽象程度越来越高。 其中C API那一层将tensorflow底层的runtime core 封装成不同语言(python,cpp,etc)的用户层代码,并提供相应的接口 这篇文章主要侧重如下layer: * **Client**: * 将计算定义为数据流图. * …
Read More -
参考资料: 维基百科_长短期记忆(LSTM) Understanding LSTM Networks [译] 理解 LSTM 网络 LSTM笔记 翻译的比较一般,建议看原文....比如cell还是不要翻译成【细胞】比较好吧...让人以为和生物学的【细胞】有什么关系呢orz 说下我自己的理解: LSTM是一种特殊的RNN,所谓RNN,也就是循环神经网络,对之前的信息存在“记忆”,可以解决带有时序性的问题。 所谓时序性的问题,简单理解就是,当前的结果依赖于之前的信息。 比如“我来自内蒙古,我能讲一口流利的____” 横线处大概率填写“蒙语”,这是因为前面的信息“内蒙古” LSTM的全称是long short term memory, …
Read More