小编aza*_*ani的帖子

是否有基于终端及其祖先映射递归数据类型的名称?

假设我有一个如下所示的类型:

data Term a = Terminal a
| Application (Term a) (Term a)
| Abstraction String (Term a)
Run Code Online (Sandbox Code Playgroud)

现在,我想映射Term aTerm b. 理想情况下,我可以使用函数来完成此操作 (a -> b)并只需实现fmap. 但是,这对我不起作用。Terminal a从到 的映射Terminal b不仅取决于 的值a,还取决于 的祖先的值Terminal a(例如 的深度Terminal a)。所以它更像[Term a] -> b是混乱的,所以我试图将其分解成更干净的东西。

所以实际上,我需要的是类似于 2 个函数和一个初始值的东西:(c -> Term a -> c)可以在每个祖先上调用,以便积累我们想要的任何东西。(我猜它相当于,([Term a] -> c)但我不确定这是否会混淆情况或有帮助。)(c -> a -> b)可以映射Terminal a到 …

haskell functional-programming functor

6
推荐指数
1
解决办法
168
查看次数

gitignore基于unix文件权限

我正在研究一个生成大量二进制文件的C项目.我尝试将源保持在源代码管理之下.但是,我希望忽略二进制文件,而不必在创建新文件时将它们添加到gitignore文件中.这是一个各种沙箱,因此我在尝试新事物时创建了许多新的二进制文件.我可以在一个目录中构建我的所有二进制文件或给它们一个后缀,但我不喜欢这些原因.由于GCC自动在它生成的二进制文件上设置可执行位,我可以使用该标志来忽略它们吗?

git gitignore

5
推荐指数
1
解决办法
1007
查看次数

渐变裁剪似乎使“ None”窒息

我正在尝试将渐变裁剪添加到图形中。我使用了这里推荐的方法:如何在张量流中有效地应用梯度修剪?

    optimizer = tf.train.GradientDescentOptimizer(learning_rate)
    if gradient_clipping:
        gradients = optimizer.compute_gradients(loss)
        clipped_gradients = [(tf.clip_by_value(grad, -1, 1), var) for grad, var in gradients]
        opt = optimizer.apply_gradients(clipped_gradients, global_step=global_step)
    else:
        opt = optimizer.minimize(loss, global_step=global_step)
Run Code Online (Sandbox Code Playgroud)

但是,当我打开渐变裁剪时,会得到以下堆栈跟踪:

<ipython-input-19-be0dcc63725e> in <listcomp>(.0)
     61         if gradient_clipping:
     62             gradients = optimizer.compute_gradients(loss)
---> 63             clipped_gradients = [(tf.clip_by_value(grad, -1., 1.), var) for grad, var in gradients]
     64             opt = optimizer.apply_gradients(clipped_gradients, global_step=global_step)
     65         else:

/home/armence/mlsandbox/venv/lib/python3.4/site-packages/tensorflow/python/ops/clip_ops.py in clip_by_value(t, clip_value_min, clip_value_max, name)
     51   with ops.op_scope([t, clip_value_min, clip_value_max], name,
     52                    "clip_by_value") as name:
---> 53     t …
Run Code Online (Sandbox Code Playgroud)

python machine-learning tensorflow

5
推荐指数
1
解决办法
1932
查看次数