在TensorFlow中初始化变量的标准方法是
init = tf.initialize_all_variables()
sess = tf.Session()
sess.run(init)
Run Code Online (Sandbox Code Playgroud)
在运行了一段时间的学习后,我创建了一组新的变量,但是一旦我初始化它们,它就会重置我现有的所有变量.目前我的方法是保存我需要的所有变量,然后在tf.initalize_all_variables调用之后重新应用它们.这有效,但有点丑陋和笨重.我在文档中找不到这样的东西......
有没有人知道刚刚初始化未初始化变量的任何好方法?
我所追求的功能是能够在给定一些数据的情况下告诉给定变量的梯度与我的误差函数有关.
实现这一目标的一种方法是查看变量在调用训练后变化了多少,但显然可以根据学习算法大量变化(例如,几乎不可能用RProp这样的东西来判断)并且只是不是很干净.
提前致谢.
我正在保存我的会话状态:
self._saver = tf.saver()
self._saver.save(self._session, '/network', global_step=self._time)
Run Code Online (Sandbox Code Playgroud)
当我稍后恢复时,我想获取我从中恢复的检查点的global_step的值.这是为了从中设置一些超参数.
执行此操作的hacky方法是运行并解析检查点目录中的文件名.但是,必须有一个更好的,内置的方式来做到这一点?
我所追求的是能够将张量流op应用于2d张量的每个元素,例如
input = tf.Variable([[1.0, 2.0], [3.0, 4.0])
myCustomOp = ... # some kind of custom op that operates on 1D tensors
finalResult = tf.[thing I'm after](input, myCustomOp)
# when run final result should look like: [myCustomOp([1.0, 2.0]), myCustomOp([3.0, 4.0)]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗?
我有一些JSON数据,我试图反序列化,看起来像这样:
{[{
"node":"xyz",
"type":"string"
},
{
"node":{ "moredata":"values", "otherdata":"values2" },
"type":"node"
}]}
Run Code Online (Sandbox Code Playgroud)
我希望能够将其序列化为F#类,但它当前失败,因为节点字段可以更改类型.有谁知道处理这个的好方法?我假设我希望节点字段类似于JsonNode类型?我目前正在使用Newtonsoft,但如果在其中一个库中有更好的解决方案,则可以使用其他库.
编辑:不幸的是,我不能使用类型提供程序,因为我希望它可以从C#中使用.
我想在包含 1 亿行、每行大约 15000 个特征的大型数据集上训练 Tensorflow 神经网络。在单台机器上训练可能太慢,所以我想分布式运行。
到目前为止,我见过的所有分布式示例都是从将整个数据加载到内存中开始,然后发送到从站,这对我来说太昂贵了。
有谁知道如何设置让奴隶流入他们的训练数据?目前数据存储在谷歌云存储中,但我们可以灵活处理。
bigdata google-cloud-storage google-cloud-platform tensorflow
在标准F#库中并行运行以下代码的最轻量级,简洁方法是什么?或者没有任何广泛使用的额外库?
let newlist = oldlist |> List.map myComplexFunction
Run Code Online (Sandbox Code Playgroud)
我能找到的最好的是
let newlist = oldlist |> List.map (fun x -> async { return myComplexFunction x }
|> Async.Parallel
|> Async.RunSynchronously
|> Array.toList
Run Code Online (Sandbox Code Playgroud)
我不喜欢这个,因为它长4行并构造一个数组,然后我必须回到列表中.如果我正在使用Arrays,它将很简单,Array.parallel,但我想保持那个可爱的不可变列表功能纯度.我简直无法相信没有列表替代品,但到目前为止一直无法找到.有什么好建议吗?