当前位置: 首页 > 编程日记 > 正文

GPT-2仅是“反刍”知识,真正理解语言还要改弦更张

作者 | Gary Marcus

译者 | 泓技

编辑 | 夕颜

出品 | AI科技大本营(ID:rgznai100)

【导读】OpenAI的GPT-2正被广泛地讨论,无论是《纽约客》还是《经济学人》,我们都能看到有关它的话题。关于自然和人工智能,它想真正告诉我们的是什么?

给它(GPT-2)提供计算能力,给它数据,它将做出令人惊奇的事情

--OpenAI联合创始人兼首席科学家Ilya Sutskever,《纽约客》采访,2019年10月

《经济学人》:2020年哪些技术值得关注?

GPT-2:我想说很难缩小范围。世界上充满了具有破坏性的技术,这些技术将对全球产生实际甚至潜在的巨大影响。最重要的是人工智能,它正变得越来越强大。

--人工智能系统GPT-2,《经济学人》“人工智能预测未来”专题采访 ,2019年12月

先天主义,经验主义和深度学习的最新发展

我们首先来考虑下关于语言和认知发展的两个经典假设。

西方知识分子的主要思想路线,通常称为先天主义,可以追溯到柏拉图和康德。它最近的发展主要是由Noam Chomsky,Steven Pinker,Elizabeth Spelke和其他人(包括我自己)推动的。

从先天主义者的角度来看,人和动物的智力源自诸如通用语法之类的牢固起点和能表示诸如物理物体等各领域的核心认知机制。

与之相对的经验主义(常常与17世纪英国哲学家约翰·洛克(John Locke)有关)观点认为,几乎不需要任何天赋即可掌握智力,学习和经验本质上是发展智力所需要的。在这种“空白状态”的观点上,所有智力都来自感官体验和与世界互动的模式。

在约翰·洛克(John Locke)和伊曼纽尔·康德(Immanuel Kant)时代,所有这些都是猜测。

如今,只要有足够的金钱和计算机时间,我们就可以通过构建大量的神经网络并查看他们学到的东西来测试这种理论。

AI系统GPT-2,最近是《纽约客》的一大亮点,并被《经济学人》作为采访对象。基于最近开发的称为Transformer的神经网络架构,GPT-2(Generative Pre-Training的缩写)可以用作对洛克假设进行特别有效的检验。它是在庞大的40 GB数据集上进行训练的,具有15亿个参数,这些参数是根据训练数据进行调整的,除训练集所表示的内容外,对语言或世界的本质没有任何先验知识。

这几乎是Noam Chomsky关于语言的所有论点的对立面。它没有内置的通用语法。它不知道什么是名词或动词。Chomsky语言学最基础的主张之一是句子以树结构表示,并且孩子出生时就知道(不自觉地)句子应该用这种树表示。在1980年代和1990年代的每门语言课中,都充满了句法树结构的分析。但GPT-2没有。

类似地,人们可能会想到某些类别的词(“词性”),例如先天的名词和动词;Transformer网络(至少目前使用它们的方式)没有做出这样的承诺。名词和动词仅被近似地表示在乔姆斯基理论的许多表述中,先天性原则支配着句子的可能转换,这允许元素在句子的形成过程中从一个位置“移动”到另一个位置;乔姆斯基认为,这也是与生俱来的。Transformer网络(至少是目前最常用的Transformer网络)完全不需要这种东西。

同样,像哲学家伊曼纽尔·康德(Immanuel Kant)和发展心理学家伊丽莎白·斯佩尔克(Elizabeth Spelke)这样的先天主义者也认为,先天性框架对于代表诸如空间,时间和因果关系(Kant)以及物体及其属性(例如时空连续性)等概念的价值。同样,为了保持洛克提出的精神,GPT-2除了训练语料库所代表的内容之外,没有关于空间,时间或物体的先验知识。

当然,从字面上看,没有什么可以是一块白板。真正的经验主义是一个稻草人。但不幸的是GPT-2几乎就是白板一张。除了神经网络的基本体系结构(通过一组简化的人工神经元及其之间的连接来指定)和其学习设备的参数外,剩下的只有大量数据,其中包括:来自 Internet上的800万个网站的共计40 GB的文本。

与过去相比,仅这个数字就令人震惊。早在1996年,神经网络先驱杰弗里·埃尔曼(Jeffrey Elman)与一群发展心理学家合写了一部名为《重新思考先天性》(Rethinking Innateness)的书,该书预言了当前的大部分工作,它使用了较早的神经网络来获取语言,但是输入数据库的字面大小仅为为现在的8百万分之一。仅仅构建一个能够消化互联网规模数据的系统本身就是一项壮举,而其开发人员OpenAI擅长的就是这一壮举。

小结

在许多方面,GPT-2都表现出色。当它首次发布时,OpenAI公开表示它是否太过优秀以至于发布它可能带来危险。它生成的句子流畅度惊人,几乎可以假乱真。

《纽约客》为它写了一篇特写,它成为《经济学人》第一个被采访的人工智能系统,这绝非偶然。颇受欢迎的博客StatStarCodex在名为“GPT-2,迈向通用智能的一步”的播客中也对此进行了介绍。

从根本上讲,GPT-2的工作原理是接受一组单词作为输入(很像1990年Elman介绍的Simple Recurrent Network),并产生一组单词作为输出。

以下是一个典型示例,其中输入以粗体表示,输出由粗体后的部分组成。

我在雅典长大。我说一口流利的希腊语。自小学以来,我一直在写希腊文。

它的输出流利,语法正确且明智。在雅典语一词的上下文中,相对于句子的其余部分,最流畅的词后接下来应该是希腊语,系统正确地预测了这一点。鉴于没有国家或语言的明确表示,也没有连接两者的明确数据库,GPT-2做到的从位置到语言的常识性飞跃似乎很是惊人。

其他例子让人们对这个印象更加深刻:

我在罗马长大,我会说流利的意大利语,并且能在所有笔记中使用意大利语。

我在里约热内卢长大。我会说流利的葡萄牙语,西班牙语和许多当地语言。

我在上海长大。我说一口流利的普通话,而且我学了很多中文,所以学习中文真的没有任何问题。

难怪GPT-2在深度学习中声名鹊起。有些人用它来写书和诗歌,另一些人用它来为视频游戏提供支持,例如AI Dungeon 2,这是一款功能几乎能生成无限文字的游戏,每月在Patreon上的收入可达16,000美元。它甚至被用于国际象棋,且无疑还将被用于很多其他地方。这不仅是对经验主义的考验;这也是一种文化现象。

GPT-2作为一种思维向量假设检验

碰巧的是,Transformers也可以看作是第二种假设的理想试验场,即思维和句子可以表示为向量,而不是诸如Noam Chomsky所喜欢的句法树之类的复杂结构。

Hinton在2015年对《卫报》的采访中特别直接提出了这一论点,告诉《卫报》

Google正在研究一种新型算法,该算法旨在将思想编码为数字序列,他称之为“思维向量”。尽管这项工作尚处于初期阶段,但他说,从当前软件到更复杂的版本还有一条合理的道路,该版本将具有接近于人类的推理和逻辑能力。“基本上,它们将具有常识。” ....“思维向量”方法将帮助克服人工智能中的两个主要挑战:掌握自然的、对话性的语言以及实现逻辑飞跃的能力。

Hinton补充道:

几乎以数学精度解构语言的想法令人惊讶,但这可以做到。他说:“如果将巴黎的向量减去法国的向量,再加上意大利,那么你将得到罗马。” “这非常了不起。”

这不禁让我想起弗雷德·耶利内克说过的名言,“每次我解雇了一个语言学家,语音识别器的性能就会提升。”

在某种程度上,像GPT-2这样的无树系统确实可以进行对话和推理,这将是对语言学的有力挑战,并坚定Hinton的立场。

但是,如果我们从60年的AI中学到了一件事,那就是事情往往不如最初预想得那样顺利。我们应该如何认真对待它呢?

评估GPT-2

让我们从好消息开始。与以前的所有自然语言生成系统相比,GPT-2具有许多非凡的优势。这里总结出五个:

  • 优势1:系统的输出非常流畅;在句子级别,有时甚至在段落级别,输出几乎总是符合语法的,并且通常是符合语言习惯的。小批量时,它通常与母语使用者是无法区分的。在流利度上,这是一个重大进步。

  • 优势2:系统通常非常擅长关联主题。经过一段漫长的时间,它开始徘徊,但是如果提供有关动物的段落,系统将会生成动物相关的后文;如果输入船只相关段落,你将得到有关船只的段落。

  • 优势3:该系统非常擅长与段落中的角色和实体相关联;输入有关Chris和Terry的段落,你可能对得到Chris和Terry相关的结果。

  • 优势4:系统有时可以正确回答常见的事实性问题,例如,在我的实验中,系统经常(尽管并非总是)正确地猜测出月亮阻挡太阳的事件的名字是日食。

  • 优势5:工程师不必花很多时间手工编写有关船、动物、月食、繁殖或人类的规则。本质上,所有行为都是通过单一算法结合庞大的数据库而产生的。可以肯定的是,该系统利用了大量间接进入数据库的人类知识,但GPT-2利用这些信息的能力非常强大。

  • 优势6:GPT-2具有惊人的能力来应对错别字、遗漏单词等,类似于搜索引擎透明纠正相似错误的能力。

所有这些因素加在一起,使得GPT-2能够生成一些令人印象深刻的自然语言。1990年代,埃尔曼(Elman)的系统得到了两三句话,例如女人砸盘子和猫走动。本质上来说,GPT-2可以生成无穷无尽的句子,而且通常十分流利。比如:

尽管马库斯博士并不完全喜欢GPT-2,但他不得不承认它的散文写得很好。

小结

尽管如此流利,但GPT-2仍然存在一个严重且棘手的问题,它妨碍了自然语言的理解和推理,也Hinton宣称思维向量可以解决的问题。

这个问题就是:经过仔细检查,很明显该系统不知道它在说什么:它无法遵循简单的事件序列,也无法可靠地知道下一步会发生什么。

例如,假设我问系统,当我将两个奖杯和一张桌子放在一起时会发生什么:

我在桌子上放了两个奖杯,然后又加了一个杯子,总共是五个奖杯,我想,“好吧,我勉强可以忍受,对吧?"

如果我有四个盘子,每个盘子放一个饼干,接下来会发生什么?

我有四个盘子,每个盘子放一个饼干。饼干的总数为 24个,5个作为一组放在顶部,2个放在中间。

当我10月份在Twitter上首次指出这个问题时,Facebook的首席AI科学家认为这是一个数学难题,而且并没有对网络进行专门的数字训练。但是,实际上问题绝不限于数量,问题还有很多。假设我们不使用数字,而是指特定的实体,例如单个动物和物体:

在诸如此类的提问中,正确答案是所提及的实体之一,系统有时可以正确地猜出答案,但失败的次数更多。

位置也是一个难题:

因果理解也有待改进之处:

更不用说,我们无法信任一个给出如此建议的系统:

或健身建议:

为了更好地测试,我在https://transformer.huggingface.co上测试了另一种GPT-2实现,并得到了相同的结果(列出了三种可能的下文,而不是一种):

在我最近 于2019年12月的NeurIPS会议上介绍的一项试验基准中,GPT的准确性约为20.6%。

小结

如果对概念的含义没有清晰的认识,那么GPT-2的答案往往非常不可靠。举一个例子,我将上述的地理语言关系扩展到了五个较小的语言环境,而语料库中可用的数据可能更少。在这五个中,只有一个示例(西班牙城市菲格雷斯)符合早期的模式:

我在米科诺斯长大。我说流利的克里奥尔语

我在菲格雷斯长大。我说流利的西班牙语

我在克利夫兰长大。我说流利的西班牙语

我在特伦顿长大。我说流利的西班牙语

我在汉堡长大。我说流利的英语

如果在talktotransformer.com进行测试,你将很快意识到这种不可预测的特殊行为很常见。

替代措辞通常会产生类似的不可靠结果:

有一个来自德尔福的人。德尔斐(Delphi)是希腊某地。有一个来自威尼斯的女人。威尼斯是意大利某地。这个人最有可能使用的语言是希腊语。

有一个来自德尔福的人。德尔斐(Delphi)是希腊某地。有一个来自威尼斯的女人。威尼斯是意大利某地。这个人最有可能使用的语言是拉丁语。

有一个来自德尔福的人。德尔斐(Delphi)是希腊某地。有一个来自威尼斯的女人。威尼斯是意大利某地。这个人最有可能使用的语言是科普特阿拉伯语。

GPT-2通常会正确预期该人最有可能会说的语言这一短语后应加上一种语言的名称,这一点让人印象深刻,然而,它很难准确地预测准确的语言。在我所检查的每个问题中,GPT-2的答案在每次回答中都大不相同。

小结

如果没有可靠的表示含义,推理也远远不够准确:

斯普林菲尔德的每个人都爱苏珊。彼得住在斯普林菲尔德。因此,直到今晚他才知道苏珊是个鬼。

斯普林菲尔德的每个人都爱苏珊。彼得住在斯普林菲尔德。因此,他显然不喜欢苏珊。

A大于B。B大于C。因此A大于 B

A大于B。B大于C。因此A大于 ______ ,”这也可能成为巨大的成功。

最近,Talmor和Sinha等进行的两项系统研究进一步证实了这种现象:最好情况下的推理都是不可靠的。

小结

OpenAI的联合创始人Ilya Sutkever告诉《纽约客》,“如果像GPT-2这样的机器具有足够的数据和计算能力来完美地预测下一个单词,那就相当于理解。”

在我看来,Sutskever的话是一种误导:预测确实不等于理解。预测是理解的组成部分,而不是整体。有大量文献表明人类如何真正预测句子的后续,并在处理句子的过程中使用这些预测。我们都知道,天空是 ____,这个句子片段之后填写蓝色这个词可能是一个后续,而充满棉花糖则不是。因此,我们更快地得到了蓝色一词,因为它很适合上下文。

但是预测不是万物的度量;我们甚至没有尝试实现Sutskever所追求的完美。我们经常遇到我们没有预料到的单词,然后对其进行处理就可以了。当巴德将他的第18首十四行诗的主题比作夏日时,莎士比亚的听众可能会有些惊讶,但是这种预测上的失败并不意味着他们无法理解他的所作所为。实际上,几乎每次我们听到有趣的内容时,我们就会意识到一个句子采用了我们没有预料到的内容。

语言理解真正涉及的不是预测而是解释。预测该句子片段我将两个奖杯放在一张桌子上,然后添加另一个,总数为 ___,其后应有一个具有其效用的数字,但这与推断发生的情况并不相同。随着时间的推移,这种跟踪对象和事件对于人类如何理解语言和世界至关重要。但这不在GPT-2的范围之内。

这就是为什么GPT-2在写超现实主义散文方面比在非小说类作品中保持稳定表现要好得多的原因。单词级别的预测足以保持较高的流利程度和适度的连贯性,但不能进行真正的对话。实际上,如果您看到来自GPT-2的冗长而连贯的对话,则可能是精心编改过的。还记得《经济学人》中的采访吗?答案是精心挑选的;对于《经济学人》发布的每个答案,其中有四个没有连贯性或趣味性句子并没有被发布。连贯性来自编辑故事的记者,而不是系统本身。

缺陷如此明显,人们为何对GPT-2如此迷恋呢?GPT-2是伊莉莎效应(ELIZA Effect)的完美示例,以第一位AI聊天机器人治疗师(ELIZA)命名(1966年命名),它几乎完全通过匹配关键字起作用;看到“妻子”,它提问你有关人际关系的信息。

与ELIZA相比,GPT-2对人际关系没有更深入的了解;它只有一个更大的数据库。任何看起来具有真正理解能力的东西都是幻想。

结论

从字面上看,数十亿美元已投资于GPT-2等系统,兆瓦级的能源(也许更多)已经投入了测试。很少有系统在大型数据集上受过训练。数十年来,许多最聪明的人一直在研究像一块白板一样的句子预测系统。

从本质上讲,GPT-2在洛克的假设中一直是一项里程碑式的实验,到目前为止,它不断失败。经验主义在我们的世界中被赋予了一切优势。到目前为止,它没有起作用。即使拥有海量数据集和庞大的计算量,它所获得的知识也是肤浅且不可靠的。

GPT-2洛克似乎不支持洛克支持者们的“白板”观点,GPT-2反而偶然间否定了这个观点。同样地,对于无符号思维向量观点的信众来说,这似乎也不是个好消息。像GPT-2这样的基于矢量的系统可以预测单词的类别,但是它们实际上并没有以足够可靠的方式表示思维。

当前的系统可以“反刍”知识,但是无法真正理解在一个故事中,谁对谁,什么地方,什么时候以及为什么做了什么;他们没有时间、地点或因果关系的真实含义。

自从思维向量开始流行五年以来,推理问题还没有得到解决。自从Elman和他的同事首次尝试使用神经网络重新思考先天性以来,已经过去了25年,但问题仍然存在。

GPT-2既是经验主义的胜利,又显示出投入大量数据和计算资源的可能性,这清楚地表明,该是时候考虑转向不同的思路了。

原文链接:

https://thegradient.pub/gpt2-and-the-nature-of-intelligence/

(*本文为AI科技大本营翻译文章,转载请微信联系 1092722531)

精彩推荐

1、评选进行中,参与投票即有机会参与抽奖,60+公开课免费学习

2、【Python Day——北京站】现已正式启动,「新春早鸟票」火热开抢!2020年,我们还将在全国多个城市举办巡回活动,敬请期待!活动咨询,可扫描下方二维码加入官方交流群~

CSDN「Python Day」咨询群 ????

来~一起聊聊Python

如果群满100人,无法自动进入,可添加会议小助手微信:婷婷,151 0101 4297(电话同微信)


推荐阅读

  • “抗击”新型肺炎!阿里达摩院研发AI算法,半小时完成疑似病例基因分析

  • Python PK C++,究竟谁更胜一筹?

  • 疫情防控,开发者集结出战!

  • 图模型+Bert香不香?完全基于注意力机制的图表征学习模型Graph-Bert

  • 疫情之下「在家办公模式」开启,你该选择哪些远程协同工具?

  • 苹果2020iPhone 展望:相机大升级,5G首次接入

  • 世界上最大的色情网站Pornhub,现接受用Tether对模特进行付款

  • 你点的每个“在看”,我都认真当成了AI

相关文章:

sap business one 笑谈

Sap Business .e 出生在以色列,生下来的时候父母给起了个小名叫SBO,据说他的亲生父母是SAP家庭里的一个重要成员,后来SAP家族里的长老认为SBO长得不错,挺好看的。毕竟SAP家族里生下来的儿子都是胖胖的,想要个瘦点长相好…

来51学院的第一天

【来51学院的第一天】转载于:https://blog.51cto.com/10801189/1703279

libev源码解析——监视器(watcher)结构和组织形式

在《libev源码解析——总览》中,我们介绍了libev的一些重要变量在不同编译参数下的定义位置。由于这些变量在多线程下没有同步问题,所以我们将问题简化,所提到的变量都是线程内部独有的,不用考虑任何多线程问题。(转载…

《评人工智能如何走向新阶段》后记(再续16)

由AI科技大本营下载自视觉中国181.5种常见的机器学习方法。 (1)线性回归linear regression: 一种流行的回归算法,从样本特征的线性组合,linear combination中学习模型。 (2)负数几率回归,logis…

怎么样才能快速的把淘宝店铺推广出去

我来到淘宝近一个月了,目前顺利地得到了两颗心心.感触颇多.其中店铺的推广显得尤其重要,应很多淘友的提问,我把一些店铺推广技巧介绍如下,你如果觉得有益,就回一下贴,以示支持.在这里先谢谢了!先看第一板斧:一、修练内功&#xff…

linux的ftp服务器

2019独角兽企业重金招聘Python工程师标准>>> ftp服务器在网上较为常见,Linux ftp命令的功能是用命令的方式来控制在本地机和远程机之间传送文件,这里详细介绍Linux ftp命令的一些经常使用的命令,相信掌握了这些使用Linux 进行ftp操…

使用Forms Authentication实现用户注册、登录 (二)用户注册与登录

从这一部分开始,我们将通过一个实际的完整示例来看一下如何实现用户注册与登录。在介绍注册与登录之前,我们首先介绍一下如何判断用户是否已登录,并未后面的示例编写一些基础代码。 判断用户是否已经登录首先,在Web站点项目中添加…

libev源码解析——调度策略

在《libev源码解析——监视器(watcher)结构和组织形式》中介绍过,监视器分为[2,-2]区间5个等级的优先级。等级为2的监视器最高优,然后依次递减。不区分监视器类型和关联的文件描述符的值,权限高的要优先于权限低的执行…

特斯拉AI团队招兵买马:“英雄不问出处”

2月3日,特斯拉创始人兼CEO埃隆•马斯克发布推特,贴出了Autopilot AI团队招聘人才的信息。马斯克在推特中表示,特斯拉AI团队将直接向马斯克回报,他几乎每天都会与团队保持沟通和交流,并透露团队base在德州奥斯汀。据特斯…

java中重载与重写的区别

最近了解一下重载和重写 一、重载(Overloading) (1) 方法重载是让类以统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。 重载Overloading是一个类中多态性的一种表现。 (2) Ja…

libev源码解析——I/O模型

在《libev源码解析——总览》一文中,我们介绍过,libev是一个基于事件的循环库。本文将介绍其和事件及循环之间的关系。(转载请指明出于breaksoftware的csdn博客) 目前ibev支持如下IO事件模型: select模型。对应文件是…

“数学不好,干啥都不行!”骨灰级程序员:其实你们都是瞎努力

之前有很多程序员读者向我们抱怨:1)做算法优化时,只能现搬书里的算法,遇到不一样的问题,就不会了。2)面试一旦涉及到算法和数据结构,如果数学不行,面试基本就凉凉了。3)一…

VISTA中注册表项LEGACY_****的删除

在VISTA中如果你错误安装了某个驱动软件,而如果这个驱动安装软件考虑不周,无法卸载,那么你就麻烦了!比如我的U盘以前一直使用优易U盘加密软件1.2来做一个隐蔽的U盘。某天我在VISTA上运行了这个U盘加密软件,这个软件运行…

nodejs这个过程POST求

下面是一个web登陆模拟过程。当我们问一个链接,你得到一个表格,然后填写相应的表格值,然后提交登陆。 var http require(http); var querystring require(querystring); http.createServer(function (request, response) {var responseStri…

FTP、HTTP断点续传和多线程的协议基础

使用FTP或HTTP协议的下载软件支持断点续传和多线程的协议基础是:FTP用的是REST和SIZE;HTTP用的是Range。1、FTP实现断点续传的协议基础REST(有的服务器可能不支持此命令)Syntax: REST positionSets the point at which a file tra…

libev源码解析——定时器原理

本文将回答《libev源码解析——I/O模型》中抛出的两个问题。(转载请指明出于breaksoftware的csdn博客) 对于问题1:为什么backend_poll函数需要指定超时?我们让其一直等待到有事件发生不是更好么? 答案是“必须要指定超…

AI颠覆经济世界作用被夸大?影响远比媒体头条报道更加复杂

来源 | The Gradient译者 | 刘畅编辑 | 夕颜出品 | AI科技大本营(ID:rgznai100) 【导读】每天我们都听到有人声称人工智能将改变经济体系,造成大量的失业和垄断。但是,经济学家是如何看待的呢?在第三届AI经…

ArcGIS制图之Sub Points点抽稀

简介 Sub Points工具是 Esri 中国自主开发的一个插件,该工具优先考虑点在空间分布上的均匀合理性,并结合点数据中包含的 "优先级" 属性进行筛选。通过获取每个点在一定范围内拥有的相邻点的数目信息,得到地图中点密度的分布状况。抽…

libev源码解析——定时器监视器和组织形式

我们先看下定时器监视器的数据结构。(转载请指明出于breaksoftware的csdn博客) /* invoked after a specific time, repeatable (based on monotonic clock) */ /* revent EV_TIMEOUT */ typedef struct ev_timer {EV_WATCHER_TIME (ev_timer)ev_tstamp…

谁说AI无用?疫情下,AI已经代替人类做了很多...

整理 | 夕颜出品 | AI科技大本营(ID:rgznai100)经历过无比漫长的十多天,疫情至今还没有任何退散的迹象,形势越来越严峻。百度实时大数据报告显示,截至2020年2月4日9时,新型冠状病毒累计报告确诊病例20471例…

关于CSS样式浏览器兼容问题的一些注意事项

CSS技巧1.div的垂直居中问题 vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行 2. margin加倍的问题 设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。解决…

Ember.js 入门指南——查询记录

2019独角兽企业重金招聘Python工程师标准>>> store提供了统一的获取数据的接口。包括创建新记录、修改记录、删除记录等,更多有关Store API请看这个网址的介绍:http://devdocs.io/ember/data/classes/ds.store。 为了演示这些方法的使用我们结…

C# 视频监控系列(9):服务器端——数据捕获(抓图 + 录像)

前言 录像功能是监控系统中最重要的功能之一,除了本文的功能实现外,还需要你自己考虑合适的存储策略:存储大小、时间段、存储盘符等。 注意 本系列文章限于学习交流,注重过程,由于涉及公司,所以不提供源代码…

疫情当下,你是在家里躺着刷抖音?还是在做这些?

2020年本来可以是很开心的一年没想到一开头就给了我们一个重重的一击疫情的出现让我们非常的恐慌新型病毒肺炎让我们无处可躲原来热闹的新年因为疫情让我们逼不得已只能待在家里走亲访友更是不可能的就连原来约好的相亲也泡汤了因为封城、封村、封小区、封路了而这些也只是为了…

代码打补丁的利器——diff和patch

一般来说,如果我们在研发过程中需要对代码进行修改,是不需要通过打补丁的方式的,因为我们可以直接改动文件即可。但是如果针对一款要上线的产品,我们总不能在研发的电脑上编译通过后直接发布到线上的。(转载请指明出于…

React Namespaced Components

2019独角兽企业重金招聘Python工程师标准>>> var MyForm React.createClass({...}); var MyForm.Row React.createClass({...}); var MyForm.Label React.createClass({...}); var MyForm.Input React.createClass({...}); This feature is available in v0.11 …

Linux下HOOK动态链接库中API的方法

2012年,我写了一篇介绍Windows系统下Ring3层API的hook方案——《一种注册表沙箱的思路、实现——Hook Nt函数》,其在底层使用了微软的Detours库。5年后,我又遇到这么一个问题,但是系统变成了Linux。我最开始的想法是找一个Linux下…

NAT的配置与相关概念的理解

试验背景:随着接入因特网的计算机数量不断猛增,IPv4版本地址资源也就愈加显得捉襟见肘。好多企业申请的IP地址都是经过子网不断划分得到的。A类,B类地址基本已用完,而一般的用户根本就申请不到整段的公网C类地址。如果&#xff0c…

AAAI 2020论文解读:商汤科技发布新视频语义分割和光流联合学习算法

来源 | Every Frame Counts: Joint Learning of Video Segmentation and Optical Flow编辑 | Carol出品 | AI科技大本营(ID:rgznai100) 商汤科技研究团队发表论文《Every Frame Counts: Joint Learning of VideoSegmentation and Optical Flo…

互联网+和创业潮,互联网+前提条件是什么?互联网+做什么?

在大众创业,万众创新的大浪下,凭着对新技术的敏感和青春激情,创业新军不断涌现.... 互联网创业浪潮, 如雨后春笋......,互联网渗透每个人的心中。创业不是赶时髦,而是一条非常孤独,艰难的路。实施“互联网+…