小编dim*_*mid的帖子

软注意力与注意力不集中

在这篇博文中,回顾性神经网络的不合理有效性,Andrej Karpathy提到了基于神经网络的机器学习的未来发展方向:

关注的概念是神经网络中最有趣的近期架构创新.[...]用于内存寻址的软注意方案很方便,因为它使模型保持完全可微分,但不幸的是,牺牲了效率,因为可以注意到的所有事情(但是轻柔地).可以认为这是在C中声明一个指针,它不指向特定的地址,而是在整个内存中的所有地址上定义一个完整的分布,并且取消引用指针返回指向内容的加权和(这将是一个昂贵的操作!).这促使多位作者交换软注意力模型以获得难以注意的情况,其中一个人对特定的一块存储器进行采样(例如,某些存储器单元的读/写动作,而不是在某种程度上从所有单元读取/写入).这种模式在哲学上更具吸引力,可扩展性和高效性,但不幸的是它也是不可微分的.

我认为我理解了指针的隐喻,但究竟是什么才是注意力,为什么难以辨别?

我在这里找到了关于注意力的解释,但仍然对软/硬部分感到困惑.

machine-learning neural-network recurrent-neural-network

23
推荐指数
1
解决办法
1万
查看次数

为什么perl,ruby使用/ dev/urandom

我是strace使用perl和bash的简单脚本.

$ strace perl -e 'echo "test";' 2>&1 | grep 'random'
open("/dev/urandom", O_RDONLY)          = 3
$ strace bash 'echo "test"' 2>&1 | grep 'random'
$
Run Code Online (Sandbox Code Playgroud)

为什么perl需要伪随机数生成器来处理这样一个简单的脚本?我希望/dev/urandom在第一次使用随机数据后才能打开.

编辑:我还测试了python和ruby

$ strace python -c 'print "test"' 2>&1 | grep random
$
$ strace ruby -e 'print "test\n"' 2>&1 | grep random
open("/dev/urandom", O_RDONLY|O_NOCTTY|O_NONBLOCK|O_CLOEXEC) = 3
Run Code Online (Sandbox Code Playgroud)

为什么perl和ruby用不同的模式打开它?

ruby python linux bash perl

16
推荐指数
1
解决办法
437
查看次数

增加git hunk粒度

我通常会添加更改git add -p,并且很多时候会有大量的代码块,由空行分隔.

但是,git不再split是大块头,我不得不求助于手动编辑.

如何增加帅哥的粒度,使每个代码块都在一个单独的大块中?

编辑:这是一个与Git不同的问题:使用git add -i或git add -e时显示更多上下文?因为我不打算增加每个大块头的上下文,而是增加帅哥的数量.

git

13
推荐指数
1
解决办法
760
查看次数

如何在将shoryuken用于后台作业时确定并发(线程)?

在我的Ruby on Rails应用程序中,我使用shoryouken进行后台处理.我的应用程序中有很多sqs队列(6-7).其中一个队列有2000-3000个作业,工作人员需要大约3个小时来处理这些2-3k个作业,默认并发数为25.因此,根据哪些因素,我们可以决定增加并发性(即处理作业的线程).如果问题中有任何不清楚的地方,请发表评论.

concurrency multithreading ruby-on-rails background-process shoryuken

13
推荐指数
1
解决办法
672
查看次数

创建一个空分支?

我有一个包含项目的git repo.我现在要对该项目进行大规模的改革.

如何为此次大修创建一个新分支?然后完成.如何将此分支切换为主分支?

git

10
推荐指数
2
解决办法
1万
查看次数

Haskell堆栈和版本控制

我是Haskell和Stack的新手.在创建一个新项目时stack new,应该使用哪个文件签入git(或任何其他VCS)?整个目录?

git version-control haskell haskell-stack

7
推荐指数
1
解决办法
767
查看次数

在haskell中使用y组合器

我是haskell的初学者,并试图实现自然数字的Church编码,如本指南中所述.我从这个答案中使用了y组合器的定义,但不确定如何应用它.

我想实现在演算一个简单的功能,computues的[1..1]作为证明的总和这里.

{-# LANGUAGE RankNTypes #-}

import Unsafe.Coerce

y :: (a -> a) -> a
y = \f -> (\x -> f (unsafeCoerce x x)) (\x -> f (unsafeCoerce x x))

true = (\x y -> x)
false = (\x y -> y)

newtype Chur = Chr (forall a. (a -> a) -> (a -> a))

zer :: Chur
zer = Chr (\x y -> y)

suc :: Chur -> Chur
suc (Chr cn) …
Run Code Online (Sandbox Code Playgroud)

haskell combinators lambda-calculus

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

为什么总和比在haskell中的foldl'慢?

为什么默认sum的GHC是〜比它慢10倍foldl'(在严格的等价foldl等价物)?如果是这样的话,为什么不使用它foldl'

import Data.List
> foldl' (+) 0 [1..10^7]
50000005000000
(0.39 secs, 963,528,816 bytes)

> sum [1..10^7]
50000005000000
(4.13 secs, 1,695,569,176 bytes)
Run Code Online (Sandbox Code Playgroud)

为了完整这里也的统计foldlfoldr.

> foldl (+) 0 [1..10^7]
50000005000000
(4.02 secs, 1,695,828,752 bytes)

> foldr (+) 0 [1..10^7]
50000005000000
(3.78 secs, 1,698,386,648 bytes)
Run Code Online (Sandbox Code Playgroud)

因为它们的运行时类似,所以看起来sum是使用foldl它们 在ghc 7.10.2上测试.

haskell ghc fold ghci

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

合并两个 github 帐户

假设我有两个 github 帐户xyz(Mail Id -  xyz@xyz.com)和abcabc@abc.com)。xyz我用于完成所有与工作相关的提交的帐户。xyz@xyz.com是我工作的组织的邮件帐户。我将abc帐户用于所有其他个人工作。

我发现维护这两个帐户有点烦人。有没有办法可以合并两个帐户并拥有一个 github 帐户abc。我在我组织的私人仓库中所做的所有提交,与此相关的通信都应该xyz发送到我的电子邮件 ID。但是我在 github 中所做的所有公共工作都应该通过我的abc电子邮件 ID 进行通信。

Github 还建议只维护链接中提到的帐户。

你能告诉我是否可以这样做吗?

git github

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

本地历史与撬

我正在使用pryruby的REPL 及其 rails 插件( gem pry-rails)。目前pry所有项目都有全球历史记录。是否可以将其配置为每个 rails 项目都有自己的历史文件?

ruby ruby-on-rails pry

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