计算机科学

为学生,研究人员和计算机科学从业者提供的问答


1
Google DeepDream精心制作
我在该网站上看到了一些有关Deep Dream的问题,但是似乎没有一个人真正谈论DeepDream的工作。据我所知,它们似乎已经改变了目标函数,并且还改变了反向传播方式,因此它们不更新权重而是更新输入图像。 我想知道是否有人确切知道Google做了什么。他们在他们的一篇文章中提到在进行优化时强加贝叶斯先验,由此我可以想象得到让神经网络为每个标签吐出图像并不那么困难-我们可以简单地设置标签,然后相应地优化输入向量。 但是,深梦的有趣之处在于它是逐层执行的,因此,我不太确定它如何逐层强调细节。 当然,提供图像会给您每个神经元的价值,但是我们如何利用这些信息来夸大原始图像中的细节呢?我一直在努力寻找有关此问题的详细文章。 参考:此处vzn回答了类似的问题:https ://cs.stackexchange.com/a/44857/49671 通过该链接,可以在此处实现Deepdream的实现:http ://auduno.com/post/125362849838/visualizing-googlenet-classes 除非它不提供此处讨论的夸张功能,否则:http://googleresearch.blogspot.com/2015/06/inceptionism-going-deeper-into-neural.html 它们都显示特定类和特定层的可视化,并说: 除了确切规定我们要网络放大的功能以外,我们还可以让网络做出决定。在这种情况下,我们只需向网络提供任意图像或照片,然后让网络分析图片。然后,我们选择一个图层并要求网络增强检测到的内容。

6
为什么垃圾回收仅扩展到内存而不扩展到其他资源类型?
似乎人们厌倦了手动内存管理,于是他们发明了垃圾回收器,生活还算不错。但是其他所有资源类型呢?文件描述符,套接字,甚至用户创建的数据(如数据库连接)? 这听起来像是一个幼稚的问题,但是我找不到任何有人问过的地方。让我们考虑文件描述符。假设某个程序知道启动时仅允许有4000 fds。每当它执行将打开文件描述符的操作时,如果会 检查以确保它不会用完。 如果是这样,则触发垃圾回收器,这将释放一堆内存。 如果某些内存释放了对文件描述符的保留引用,请立即将其关闭。它知道该内存属于某个资源,因为与该资源绑定的内存在首次打开时就注册了一个“文件描述符注册表”,但缺乏更好的用语。 打开一个新的文件描述符,将其复制到新的内存中,将该内存位置注册到“文件描述符注册表”中,并将其返回给用户。 因此,资源不会立即被释放,但是只要gc至少在资源即将用完之前就运行,只要它没有被完全利用,它将至少被释放。 对于许多用户定义的资源清理问题而言,这似乎就足够了。我设法在这里找到一条注释,该注释在C ++中使用类似于包含对资源的引用的线程的方式进行类似于C ++的清理,并在仅剩一个引用(来自清理线程)时对其进行清理,但是我可以找不到任何证据表明这是图书馆或任何现有语言的一部分。

3
为什么要进行期限改写?
我做了一些谷歌搜索,并提出了一个简短的建议。 我想知道计算科学家,程序员研究术语重写和/或术语图重写的主要原因是什么。 据我所知,它仅对有关功能程序和(命令性)程序控制的基本推理有所帮助。显然,对于逻辑学家和那些研究构造抽象代数的人来说,这是一个非常有趣的话题。 非常感激任何的帮助!

2
2路DFA的空度问题的复杂性是什么?
我想知道,确定2路DFA的空度的时间复杂度是多少?也就是说,可以在其只读输入磁带上向后移动的有限自动机。 根据Wikipedia的说法,它们等效于DFA,尽管等效DFA可能成倍增大。我发现它们的补码和交集的状态复杂性,但是对于它们的空性测试却没有。 有人知道我可以在哪找到论文吗?

1
程序综合,可判定性和暂停问题
我正在阅读最近一个问题的答案,然后想到了一种奇怪的短暂的想法。我想问这个问题可能是因为我的理论断章严重缺乏(大部分是正确的),还是我现在阅读本网站还为时过早。现在,免责声明已不复存在... 可计算性理论的一个众所周知的结果是无法确定TM的停止问题。但是,这并不排除存在某些机器可以解决某些类别的机器(并非全部)的停机问题的可能性。 考虑所有可判定问题的集合。对于每个问题,都有无限多个TM决定该语言。以下可能吗 有一个TM决定图灵机子集的停止问题;和SSS 所有可判定的问题均由至少一台位于?SSS 当然,在查找图灵机本身可能无法计算;但我们忽略了这个问题。SSS 编辑:基于以下Shaull的回答,似乎(a)这个想法太不明确,以至于没有意义;或者(b)我以前的尝试还不够明确。当我尝试详细说明Shaull的答案时,我的意图不是要保证输入TM在。我的问题的真正含义是,是否可能存在这样的,以使中的成员身份成为一个可决定的问题。要解决停机问题的程序会,据推测,写“无效输入”磁带什么的给定的输入时,它识别为不被SSSSSSSSSSSSSSS。当我这样表达时,我不确定这是否使我们能够解决停顿问题,或者不确定赖斯定理是否适用(可判定性是赖斯定理的一种语言的语义特性?)


1
证明的补
我想证明使用闭包属性来对的补码不是常规的。{ 0ñ1个ñ| ñ ≥0 }{0ñ1个ñ∣ñ≥0}\{0^n1^n \mid n \geq{} 0\} 我了解泵引理可以用来证明不是常规语言。我也了解常规语言在补码操作下是封闭的。但是,这是否还暗示着非常规语言的补语也是非常规的?{ 0ñ1个ñ| ñ ≥0 }{0ñ1个ñ∣ñ≥0}\{0^n1^n \mid n \geq{} 0\}

1
在纯需求分页期间交换空间管理
以下是我在进行OS家庭作业时遇到的一个疑问-但是,它似乎比基于概念的问题要多于简单的编码问题,因此恕我直言,我认为作业标签不适合这样做。 在给定固定数量的RAM和交换内存的情况下,针对同时运行的多个进程的纯需求分页方案中,在以下两种情况下,交换空间会发生什么情况: 进程遇到页面错误,RAM中没有可用的空闲帧,因此需要将进程的内核帧块中的一个页面写出以进行交换(为简单起见,我不考虑复制-on-write case)。明确地说,将在交换空间中的哪个位置写入此帧,并且为此需要更新哪些数据结构? 当某个进程需要进入特定页面时,它在交换内存中的位置如何?如何知道该特定页面是否全部存在于交换中? 如您所料,我很难理解在纯需求管理方案中以何种方式管理交换空间,以及什么数据结构必不可少。如果您可以在答案中引用任何链接,那就太好了(我在“操作系统概念-Silberschatz的第8版,我找不到我的问题的明确答案”中进行了搜索)。


2
为什么我们不能仅通过添加一个常数使所有权重为正来找到负权重的最短路径?
我目前正在阅读算法的介绍,并由Johnson的算法得出,该算法取决于确保所有路径都是正的。 该算法取决于找到一个新的权重函数(w'),该权重函数对所有边都是正值,并保持最短路径关系的正确性。 通过计算要添加到w原始值的h(s),h(d)值来实现。 我的问题是,为什么不仅仅在图中找到最小的w并将其添加到所有边上?这将同时满足这两个条件,并且需要较少的计算。

2
计算机实际上是否使用超前超前加法器?
在大学CS课程中,有很多关于超前进位加法器的详细信息,例如Kogge-Stone,Lander-Fischer等。它们被描述为“业界常见”。但是,我最近没有发现任何证据(除了曼彻斯特进位链),也没有发现它们确实在任何特定地方使用过。Google搜索仅返回期刊和学术研究的页面。最多给出假设的实现。 我的问题是,是否使用了任何特定的地方/实现携带超前加法器?还是它们与现实世界无关?

3
说“渐近更有效”是什么意思?
当我们说算法渐近地比更有效时,这是什么意思?XXXÿÿY XXX对于所有输入,将是更好的选择。 XXX对于所有输入(小输入除外),都是更好的选择。 XXX对于大型输入以外的所有输入,都是更好的选择。 ÿÿY对于小输入,将是更好的选择。 这个问题的链接在这里。 http://quiz.geeksforgeeks.org/algorithms-analysis-of-algorithms-question-16/ 我以为,一种渐近有效的算法应该适用于所有输入,但是我没有明白“它适用于除小输入以外的所有输入”的原因。


3
语法LL(1)怎么样?
这是《龙书》中的一个问题。这是语法: S→AaAb∣BbBaS→AaAb∣BbBaS \to AaAb \mid BbBa A→εA→εA \to \varepsilon B→εB→εB \to \varepsilon 问题问如何显示它是LL(1)而不是SLR(1)。 为了证明它是LL(1),我尝试构造它的解析表,但是在一个单元格中有多个生成,这是矛盾的。 请告诉我们LL(1)怎么样,如何证明它?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.