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

2020年AI如何走?Jeff Dean和其他四位“大神”已做预测!

作者 | Khari Johnson

译者 | 王艳妮 责编 | 胡巍巍

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

人工智能已经不再是随时准备改变世界的状态,而是已经在改变世界。在迈入2020年这新的一年、以及新的20年代之际,笔者请到了AI方面最敏锐的观察者,请他们回顾2019年取得的进展,并展望2020年机器学习将如何进一步走向成熟。

我们与PyTorch的创建者Soumith Chintala,加州大学教授Celeste Kidd,Google AI负责人Jeff Dean,NVIDIA机器学习研究负责人Anima Anandkumar,以及IBM研究主管Dario Gil,一共五位嘉宾进行了交流。

每个人对未来的一年,都有自己的预测。而这些人是正在塑造未来的一群人——他们在AI社区中是有权威的,也是有科学追求的,他们的个人经历已为其赢得了可信度。

一些人预测了半监督学习和神经符号方法等子领域的进步,但几乎所有我们采访的ML界杰出人物都同意2019年基于Transformer的自然语言模型,取得了巨大进展,并预测像面部识别这样的技术,会继续引起争议。他们还希望AI领域不再只看重准确性。

那么他们具体是怎么说的?一起往下看!

PyTorch董事、首席工程师和创建者Soumith Chintala

不管您采用何种评估方式,PyTorch都是当今世界上最受欢迎的机器学习框架。PyTorch是2002年引入的Torch开源框架的衍生产品,于2015年投入使用,并且在扩展和库的方面有稳步增长。

2019年秋天,Facebook发布了带有量化和TPU支持的PyTorch 1.3版本,以及一个深度学习可解释性工具Captum和PyTorch Mobile。还有诸如PyRobot和PyTorch Hub之类用于共享代码并鼓励ML实践者拥抱可复现性的东西。

Chintala于2019年秋天,在PyTorch Dev Con与笔者的一次对话中表示,2019年他在机器学习界,几乎没有看到什么突破性进展。

“实际上,我认为我们没有创造出什么颠覆性的东西……基本上从Transformer以后就没有了。ConvNets在2012年达到顶峰,而Transformer则是在2017年左右。当然这只是我的个人看法。”他说。

他继续说,DeepMind的AlphaGo,在强化学习方面的贡献是开创性的,但他表示,结果很难应用于现实世界中的实际任务。

Chintala还认为,像PyTorch和Google的TensorFlow这样在当今的ML实践者中广受欢迎的机器学习框架的发展,已经改变了研究人员探索他们的想法和开展工作的方式。

他说:“它使研究者们的速度,比以前快了一两个数量级,从这个意义上来说,它算是一个突破。”

今年,谷歌和Facebook的开源框架引入了量化,用于提高模型训练的速度。Chintala预计,在未来的几年中,PyTorch的JIT编译器、和像Glow这样的神经网络硬件加速器的重要性和采用率都会有一个“爆炸式增长”。

“从PyTorch和TensorFlow身上,可以看出框架的融合趋势。出现量化、以及出现其他许多较低级别效率的原因是,框架之战的下一场发生在编译器界——XLA,TVM,Glow,很多创新即将发生,”他说, “在未来的几年中,你将看到如何更智能地量化,更好地融合,更有效地使用GPU,以及对新硬件进行自动编译。”

像笔者采访的大多数其他行业领导者一样,Chintala也预测AI社区将在2020年,更加看重AI模型性能,而不仅仅是准确性,并开始将注意力转移到其他重要因素上,比如创建模型所需的电力,如何向人类解释输出结果,以及如何用AI来更好地反映人们想要构建的社会。

“如果想想过去的五六年,我们其实只关注了准确性,以及像‘NVIDIA的模型更准确吗?Facebook的模型更准确吗?’这样的原始数据,”他说, “我实际上觉得2020年,将是我们开始以更复杂的方式去思考的一年,这种情况下,如果模型不具备良好的可解释性机制(或者满足其他条件),那就算准确率高出3%也没什么用。”

加州大学伯克利分校发展心理学家Celeste Kidd

Celeste Kidd是加州大学伯克利分校Kidd实验室的主任,她和她的团队在那里探索儿童的学习方式。他们的见解,可以帮助神经网络的创建者们,尝试以与培养孩子类似的方式来训练模型。

她说:“人类婴儿没有用到标记的数据集,但他们仍然能成长得很好,了解这其中的原理对我们来说很关键。”

让Kidd在2019年感到惊讶的是,很多神经网络创建者有时会轻易贬低自己、或其他研究人员的工作,因为他们的网络无法做到婴儿都能做的事情。

她说,当你将婴儿的行为综合分析时,你会看到有证据表明他们确实能理解某些东西,但他们绝对不是完美的学习者,而上述创建者的那种说法,对婴儿的能力过于美化。

她说,“人类婴儿很棒,但他们也会犯很多错误,而且我经常看到人们的许多比较都太随便,把婴儿的表现理想化了。我认为人们将会更加重视当前了解的内容和接下来想要了解的内容之间的联系”。

在人工智能界,“黑箱”一词已经存在多年,这个词语曾经用来批评神经网络缺乏可解释性,但Kidd认为,2020年可能成为神经网络不可解释观念的终结。

她说,“黑箱的论点是虚假的,大脑也是黑箱,但我们在理解大脑如何工作方面仍然取得了巨大进展。”

在揭开这种对神经网络认识的神秘面纱时,Kidd着眼于MIT-IBM Watson AI Lab的执行总监Aude Oliva等人的工作。

“我们当时正在讨论这件事,我说觉得该系统是黑箱,她有理有据地批评了我,说当然不是黑箱。当然,你可以将它们分解,将它们分割开来,看看它们如何工作,进行实验,就像我们理解认知的过程那样。”Kidd说。

近日,Kidd在NeurIPS会议上发表了开幕式主旨演讲,这是世界上最大的年度AI研究会议。她的演讲重点在于人脑如何固守自己的信念、注意力系统、以及贝叶斯统计。

她说,适于传递信息的区域,介于一个人以前的兴趣和理解,以及让他们感到惊讶的东西之间。人们倾向于较少参与太多令人惊讶的内容。

然后,她又说中立的技术平台并不存在,她将目光转向内容推荐系统的创建者们,是如何操纵人们的信念的。追求用户最大参与度的系统,可能会对人们形成信念和观点的方式有着重大影响。

Kidd在演讲中以机器学习界男性群体中的一种的误解为结尾,即与女性同事单独相处,会导致性骚扰指控,从而结束一个男人的职业生涯。她说,这种误解会损害女性在该领域的职业发展。

由于曾在罗切斯特大学公开发表反对性不端行为的言论,Kidd与其他女性一起被评为2017年度“年度人物”,这些女性帮助实现了要求平等对待女性的#MeToo运动。那时,Kidd以为勇敢发声会结束她的职业生涯。

她希望在2020年,看到人们能更加清醒地意识到技术工具和技术决策对现实生活的影响,并不再认同创造工具的人,不用对工具如何被使用负责任的观点。

她说,“我听到很多人试图用‘我不是真理的仲裁者’来为自己开解。我认为必须清醒认识到这是不诚实的立场。对于社会,尤其是对于开发这些工具的人们来说,真的需要直接正视随之而来的责任。”

Google AI负责人Jeff Dean

Dean领导Google AI已有近两年的时间,他在Google工作了二十年,是该公司许多早期搜索和分布式网络算法的架构师,也是Google Brain的早期成员之一。

Dean近日在NeurIPS上与笔者有过交流,当时他就应用于ASIC半导体设计的机器学习以及AI社区如何应对气候变化做了演讲,他说气候问题是我们这个时代最重要的问题。

在关于气候变化的演讲中,Dean讨论了AI可以尽力成为零碳行业这一想法,以及AI可以被用来帮助改变人类活动。

他预计多模式学习领域将在2020年取得进展。多模式学习是一种依靠多种媒体来进行训练的AI,而多任务学习则包含用于一次完成多个任务的网络。

毫无疑问,2019年最显著的ML趋势之一,就是基于Transformer的自然语言模型的持续增长和扩散,该模型在上文中被Chintala称为近几年来人工智能最大的突破之一。Google在2018年开源了基于Transformer的模型BERT。根据GLUE排行榜,2019年发布的许多性能高超的模型,都基于Transformer,比如Google的XLNet、微软的MT-DNN和Facebook的RoBERTa。公司发言人向笔者透漏,XLNet 2将于近期发布。

Dean指出了已经取得的进展,并说“我认为在实际产生机器学习模型方面,已经取得了相当丰硕的成果。毕竟这些模型,让我们现在能比过去做更精细的NLP任务”。但他补充说,还有增长的空间,“我们仍然希望能够做更多上下文类型的模型。像现在一样,BERT以及其他模型可以很好地处理数百个单词,但不能将10000个单词作为一段上下文来处理。所以这是一个挺有趣的方向”。

Dean 说,他希望不要太看重最新技术的微小进步,而把重心更多地放在创建更健壮的模型上。

Google AI还将致力于推进新的研究,比如DailyRobot,这是一个于2019年11月推出的内部项目,旨在制造能够完成在家庭和工作场景下共同任务的机器人。

NVIDIA机器学习研究总监Anima Anandkumar

Anandkumar曾在AWS担任首席科学家,后加入了GPU制造商NVIDIA。在NVIDIA,人工智能研究在多个领域持续进行,从医疗保健的联合学习到自动驾驶,超级计算机和图形学等等。

Anandkumar在2019年的重点研究领域之一,是强化学习的仿真框架,这些框架变得越来越受欢迎,并逐步成熟起来。

在2019年,我们看到了NVIDIA的Drive autonomus驾驶平台和Isaac机器人模拟器的崛起,可以从模拟中生成综合数据的模型,以及生成对抗网络(也可以称为GAN)的兴起。

2019年还迎来了像StyleGAN(可以使人们怀疑自己看到的究竟是计算机生成的人脸、还是真实的人脸)和GauGAN(可以用画笔生成风景)这样的人工智能,并且StyleGAN2已经于近期首次亮相。

GAN是可以模糊现实界限的技术,Anandkumar认为,GAN可以帮助AI社区处理很多主要挑战,例如抓握机器人和自动驾驶。

Anandkumar还希望新的一年能在迭代算法、自我监督和训练模型的自训练方法(这些模型可以通过对未标记数据,进行自训练来改进自己)等方面看到进展。

“我认为,各种各样的的迭代算法就是未来,因为如果只做一个前馈网络,那么健壮性就会成为问题”。她说,“如果进行多次迭代,并根据所需的数据类型或精度要求对迭代进行调整,那么实现这一目标的几率就更大了”。

Anandkumar预见到了2020年AI社区要面临的众多挑战,比如需要与领域专家一道创建专门针对特定行业的模型。政策制定者,个人和AI社区也将需要应对代表性问题,以及确保用于训练模型的数据集能够覆盖到不同人群。

她说,“我认为面部识别问题本身很容易掌控,但是在很多其他领域,人们没有意识到对数据的使用涉及隐私问题。”

Anandkumar说,面部识别领域得到的关注度最大,是因为面部识别是如何侵犯个人隐私这一点是易于理解的,但是AI社区在2020年还面临许多其他道德问题。

Anandkumar补充说:“我们将在数据收集和使用方式方面,进行越来越严格的审查。我认为欧洲现在已经在这样做了,但在美国,我们当然有理由认为将来会迎来更严格的审查,比如说,由美国国家运输和安全委员会和联邦运输管理局这样的组织进行。”

在Anandkumar看来,2019年的最大惊喜之一,便是文本生成模型的发展速度。

“2019年是语言模型之年。现在,我们第一次实现段落长度和连贯性的更优化,这在之前是不可能的,真是太棒了。” Anandkumar说。

在2019年8月,NVIDIA推出了Megatron自然语言模型。Megatron拥有80亿个参数,是全球最大的基于Transformer的AI模型。Anandkumar说,人们开始为模型附加上独特的个性和脾气,她对此感到惊讶,并期待看到更多针对特定行业的文本模型(Transformer即变形金刚,其中Megatron译为威震天)。

“我们仍未达到可以进行上文记忆、以及自然对话的交互式对话阶段。因此,我认为2020年将会有人朝这个方向进行更认真的探索。”她说。

此外,她还表示,开发用于控制文本生成的框架,要比识别人像或物体的图像之类的框架,更具挑战性。文本生成模型,还可能面临像“为一个神经模型定义一个事实”这样的挑战。

最后,Anandkumar说,她很高兴看到人们在Kidd在NeurIPS的演讲结尾集体起立鼓掌,并感到被机器学习社区变得越来越成熟和包容的迹象所鼓舞。

她说,“我觉得现在这个时期是分水岭,刚开始的时候要取得一点小进步都很难,可总有一天洪水会决堤。我希望是这样,因为在我看来,我希望这种势头持续下去,进行更大的结构性改革,并使领域里的所有人的事业都取得成功。”

Dario Gil:IBM研究总监

Gil领导着一组研究人员,他们为白宫以及世界各地的企业提供咨询服务。他认为,2019年的重大飞跃,包括围绕生成模型的进步、以及不断增长的产生通顺语言的能力。

他预测在降低精度的体系结构上,更高效的训练将继续进步。更高效的AI模型开发,是NeurIPS的重点,在大会上,IBM Research介绍了用到8位精度模型的深度学习技术。

他说,“使用具有GPU架构的现有硬件,来训练深度神经网络的方法,效率仍然普遍低下。因此,对这个基础进行重新思考就显得非常重要。我们必须提高AI的计算效率,只有这样我们才能用它来做更多的事情。”

Gil引用了某研究的结果,该结果表明,人们对机器学习训练的需求量,每三个半月就翻一番,这比摩尔定律预测的增长速率要快得多。

Gil也对AI帮助加快科研进展这一点感到兴奋,但是IBM Research将主要专注于机器学习的神经符号方法。

Gil希望2020年AI从业者和研究人员,在考虑部署模型的价值时,能把注意力转到准确性以外的指标。将领域重点转移到对受信任系统的构件上,而不再将准确性放在首位,这将是AI能被继续使用的决定性力量。

“社区中有些人可能会继续说,‘不用担心,只需提供准确性即可。没关系,人们会习惯这个东西比较像一个黑箱这个事实’,或者他们会提出这样的论点,即人类有时不会对自己做出的某些决定给出解释。我认为,非常非常重要的一点是,我们要集中社区的脑力能量,从而在这方面做得更好。在任务应用程序上,AI系统不能成为一个黑箱。”

Gill相信,我们需要摆脱只有少数ML天才才能从事AI这样的观念,以确保更多具有数据科学和软件工程技能的人也能采用AI。

他说,“如果我们把AI作为一个神话领域,只有此专业的部分博士才能进入的话,那对AI的应用是没有好处的。”

在新的一年,Gil对神经符号AI特别感兴趣。IBM将寻求神经符号方法,来增强诸如概率性编程之类的功能。他们还将研究AI如何操作一个程序,以及如何操作可共享决策原因的模型。

“通过采用这种混合了各种新方法的方式,以及通过这些神经符号方法,来把学习和推理结合在一起,其中的符号维度被嵌入到了学习一个程序的过程中。我们已经发现,人类可以利用需求量的一小部分数据进行学习,由于学习了程序,我们最终得到一些可解释的东西,又因为有可解释的东西,所以我们就有了更受信任的东西。”

他说,公平性、数据完整性和数据集选择等问题,将继续获得广泛关注,而“任何与生物识别技术有关的东西”也是如此。面部识别技术广受关注,但这仅仅是开始而已。语音数据以及其他形式的生物识别技术,将变得越来越敏感。

Gil说,“我举这个例子是想说,与身份、人的生物特征、以及人工智能在分析方面取得的进步有关的一切,将继续处于话题的前沿和中心。”

除了神经符号和常识推理,以及MIT-IBM沃森实验室的一项旗舰计划以外,Gil表示,2020年IBM Research还将探索AI的量子计算、以及降低精度架构之外的AI模拟硬件。

最后的思考

机器学习正在持续性地为当今的商业和社会塑形,笔者采访的研究人员和专家们预见到了许多趋势:

  • 随着Transformers提供的巨大动能,自然语言模型的进步,是2019年的重大事件。2020年,在基于BERT和Transformer的模型上,可能会有更多新意出现。

  • 人工智能行业应该寻找准确性以外的指标,来评估模型的输出。

  • 诸如半监督学习、机器学习的神经符号方法、以及多任务和多模式学习之类的子领域,可能会在2020年迎来进步。

  • 与生物特征数据(如语音记录)相关的伦理道德问题,可能会继续引起争议。

  • 像编译器和量化之类的方法,可能会在PyTorch和TensorFlow之类的ML框架中,作为优化模型性能的方式而流行起来。

作者:Khari Johnson,撰写人工智能类文章,现居旧金山东湾。

英文原文:

https://venturebeat.com/2020/01/02/top-minds-in-machine-learning-predict-where-ai-is-going-in-2020/

(*本文由于AI科技大本营编译,转载请联系微信1092722531)

精彩推荐

为了助力对抗疫情,减少线下人员流动和聚集,CSDN与 PyCon 官方授权的 PyCon中国社区合作,举行「Python开发者日」在线系列峰会。通过精彩的技术干货内容、有趣多元化的在线互动活动等,让您足不出户便可与大咖学习交流,共同渡过抗疫攻坚期。扫码入群咨询详情!

推荐阅读

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

  • 2020年趋势一览:AutoML、联邦学习、云寡头时代的终结

  • 微服务架构何去何从?

  • 百度地图可查49城患者活动轨迹;谷歌申请新操作系统商标;VS Code 1.42发布

  • 互联网人集体的远程办公终将是昙花一现?

  • 远程办公众生相:“云”吃饭、被窝打卡、梳妆台编程.....

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

相关文章:

zookeeper快速入门——简介

在几十年前,一个独立的计算机上往往部署着一套完整的应用系统。当时因为网络稳定性及速度的限制,将相关联的服务部署在一台机器上,让它们使用系统机制通信——比如管道,文件等,往往是最稳定和最高效的。然而随着网络技…

为TextMate扩展全屏功能

今天看代码,感觉TextMate那个窗口太小了点,越看越不爽,就想把它弄成全屏的。于是搜索啊搜索啊搜索,终于让我找到一款很yd的小软件,叫megazoomer, 下载地址是:[url]http://ianhenderson.org/mega…

hdu1406

一道很水很水的题&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;&#xff01;#include<iostream> using namespace std; int main(){int num1,num2,i,k,j,sum,n;while(cin>>n){ while(n--){cin&g…

zookeeper快速入门——部署

zookeeper有两种运行模式&#xff1a;独立模式和仲裁模式。独立模式就是只运行一个Zookeeper Server&#xff0c;这自然没法解决服务崩溃导致系统不可用的问题。仲裁模式就是以集群的方式运行Zookeeper Server&#xff0c;这样在Leader不可用时&#xff0c;集群内部会发起选举&…

2020,人工智能和深度学习未来的五大趋势

来源 | forbes编译 | Shawn编辑 | Carol出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;虽然近年来人工智能经常成为热门议题&#xff0c;但它还远未实现真正的成就。人工智能技术发展的主要障碍在于投资成本&#xff0c;投资成本影响短期内的回报。而当时…

电脑常见故障 1

死机恐怕是所有电脑故障里面最常见的一种了&#xff0c;但是死机的原因是多种多样的。 如果从硬件入手&#xff0c;先是看看机箱里的温度是否很高&#xff0c;要检查CPU的风扇是否正常运转&#xff0c;并要注意电脑的散热问题&#xff1b;其次可检查内存&#xff0c;检查完内存…

linux常用命令-date-clock-hwclock-type-whois--help-man-info-cal

date&#xff1a;时间管理电子表&#xff1a;晶体震荡器 石英震荡器Linux&#xff1a;rtc 硬件时间NTP&#xff1a;网络时间协义硬件时间&#xff08;命令&#xff1a;clock&#xff09;系统时间&#xff08;命令&#xff1a;date&#xff09;type COMMAND 判断命令是内部命令…

内存、性能问题分析的利器——valgraind

valgrind是一个知名的分析软件集。我们可以使用它进行内存、多线程及性能等各种问题的分析。它采用非侵入方式&#xff0c;所谓非侵入方式是指&#xff1a;我们不用在代码中插入分析工具的库。这对于开发者来说是友好的。因为如果要将工具编译到文件中&#xff0c;或者要调用其…

这是我见过最卡通的 Python 算法了,通俗易懂

普通程序员&#xff0c;不学算法&#xff0c;也可以成为大神吗&#xff1f;对不起&#xff0c;这个&#xff0c;绝对不可以。可是算法好难啊~~看两页书就想睡觉……所以就不学了吗&#xff1f;就一直当普通程序员吗&#xff1f;如果有一本算法书&#xff0c;看着很轻松……又有…

WebService(Axis2)视频教程与QQ交流群发布

Axis2是目前比较流行的WebService引擎。WebService被应用在很多不同的场景。例如&#xff0c;可以使用WebService来发布服务端 Java类的方法&#xff0c;以便使用不同的客户端进行调用。这样可以有效地集成多种不同的技术来完成应用系统。WebService还经常被使用在SOA中&#x…

fragment类onresume里面刷新操作处理

今天项目中涉及fragment中嵌套多个fragment&#xff0c;但是要根据tag去展示对应的fragment&#xff0c;而不是默认展示的第一个fragment&#xff0c;如果使用activity很容易想到onpause(),onResume()中进行处理&#xff0c;但是你会发现fragment的onpause和onresume只调用一次…

内存问题分析的利器——valgrind的memcheck

在《内存、性能问题分析的利器——valgrind》一文中我们简单介绍了下valgrind工具集&#xff0c;本文将使用memcheck工具分析各种内存问题。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 本文所有的代码都是使用g -O0 -g mem_error.c -o mem_erro编译&#…

类项目中的配置文件app.config在打包安装后的信息获取的问题

在一个项目中碰到这样的一个问题&#xff0c;做一个WORD插件&#xff0c;功能在类库项目中实现了&#xff0c;配置信息存在类库项目的配置文件app.config中&#xff0c;在进行打包后&#xff0c;获取的配置文件中的DocType节点信息时&#xff0c;使用以下方法 ConfigurationMa…

AAAI 2020论文解读:商汤科技提出新弱监督目标检测框架

来源 | Object Instance Mining for WeaklySupervised Object Detection编辑 | Carol出品 | AI科技大本营&#xff08;ID&#xff1a;rgznai100&#xff09;商汤科技视频大数据团队发表论文《Object Instance Mining forWeakly Supervised Object Detection》&#xff0c;该论文…

20135306黄韧 信息安全系统设计基础期中学习总结

信息安全系统设计基础第八周学习总结 知识点总结 第1章 计算机系统漫游 △计算机系统是由硬件和系统软件组成的&#xff0c;它们共同协作以运行应用程序。计算机内部的信息被表示为一组组的位&#xff0e;它们依据上下文有不同的解释方式。程序被其他程序翻译成不同的形式&…

使用SQL Server维护计划实现数据库定时自动备份

在SQL Server中出于数据安全的考虑&#xff0c;所以需要定期的备份数据库。而备份数据库一般又是在凌晨时间基本没有数据库操作的时候进行&#xff0c;所以我们不可能要求管理员每天守到晚上1点去备份数据库。要实现数据库的定时自动备份&#xff0c;最常用的方式就是使用SQL S…

AI 医疗公司“战疫”在前线

作者 | Just来源 | CSDN&#xff08;CSDNnews&#xff09;紧急驰援疫区&#xff0c;涉足AI医疗领域的公司也出动了。截止到2月6日&#xff0c;随着新冠病毒肺炎疫情的不断发展&#xff0c;全国累计已有31161例确诊病例&#xff0c;26359例疑似病例。不过&#xff0c;由于医疗资…

动态执行流程分析和性能瓶颈分析的利器——valgrind的callgrind

在《内存、性能问题分析的利器——valgrind》一文中我们简单介绍了下valgrind工具集&#xff0c;本文将使用callgrind工具进行动态执行流程分析和性能瓶颈分析。&#xff08;转载请指明出于breaksoftware的csdn博客&#xff09; 之前的《利器》系列中&#xff0c;我们介绍了两种…

CentOS6.3编译安装Nginx1.4.7 + MySQL5.5.25a + PHP5.3.28

2019独角兽企业重金招聘Python工程师标准>>> 【准备工作】 01 #在编译安装lnmp之前&#xff0c;首先先卸载已存在的rpm包。 02 rpm -e httpd 03 rpm -e mysql 04 rpm -e php 05 06 yum -y remove httpd 07 yum -y remove mysql-server mysql 08 yum -y remove php 0…

GitHub标星14000+,阿里开源的SEATA如何应用到极致?

作者简介&#xff1a;袁鸣凯&#xff0c;家乐福技术总监&#xff0c; 高知特有限技术公司中国区架构师&#xff0c;HP上海研发技术专家&#xff0c;夸客金融首席架构师&#xff0c;现任家乐福中国区技术总监。多年互联网、企业级SOA、微服务、全渠道中台方面的架构设计实战经验…

C++拾趣——有趣的操作符重载

操作符重载是C语言中一个非常有用的特性。它可以让我们比较优雅的简化代码&#xff0c;从而更加方便的编写逻辑。 为什么要使用操作符重载一种常见的用法是重载<<运算符&#xff0c;让标准输出可以输出自定义的类型。比如 #include <iostream>class Sample {friend…

urlparse模块(专门用来解析URL格式)

# -*- coding: utf-8 -*- #python 27 #xiaodeng #urlparse模块&#xff08;专门用来解析URL格式&#xff09;#URL格式&#xff1a; #protocol ://hostname[:port] / path / [;parameters][?query]#fragment #parameters&#xff1a;特殊参数&#xff0c;一般用的很少。#1、url…

使用Boost的Serialization库序列化STL标准容器

使用Boost做对象序列化是非常方便的&#xff0c;本文将介绍一种序列化STL标准容器的方法。这是之前设计的异步框架的一个子功能&#xff1a;过程A将标准容器数据序列化成二进制流&#xff0c;然后将该二进制数据发送到过程B&#xff0c;过程B将数据反序列化为标准容器。&#x…

连登GitHub TOP榜,中国开发者在行动!

作者 | 唐小引数据 | 于瑞洋出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;中国开发者正在走向世界中文开源项目正在不断登上 GitHub TOP 榜不久前&#xff0c;一个名叫「wuhan2020」的开源项目进入了 GitHub Trending TOP 榜&#xff0c;截至到现在&#xff0c;已经…

Merge into的使用

用途 merge 命令可以用来用一个表中的数据来修改或者插入到另一个表。插入或者修改的操作取决于on子句的条件。该语句可以在同一语句中执行两步操作&#xff0c;可以减少执行多条insert 和update语句。merge是一个确定性的语句&#xff0c;即不会在同一条merge语句中去对同一条…

PHP和MySQL Web开发从新手到高手,第8天-创建categories管理页面

1. 创建categories管理页面 主要包含以下几个页面: A. index.php, 准备各种变量数据.供展示页面使用. B. categories.html.php, 显示categories. C. form.html.php, 用于编缉或添加作者的页面. 页面郊果: 2. categories页面的主要流程 2.1 是否已登录 if (!user_is_login()){in…

堆状态分析的利器——valgrind的DHAT

在《堆问题分析的利器——valgrind的massif》一文中&#xff0c;我们介绍了如何使用massif查看和分析堆分配/释放的问题。但是除了申请和释放&#xff0c;堆空间还有其他问题&#xff0c;比如堆空间的使用率、使用周期等。通过分析这些问题&#xff0c;我们可以对程序代码进行优…

cisco2950交换机密码恢复

在实际工作中可能会忘记交换机密码&#xff0c;导致不能对交换机进行配置的情况。cisco提供了密码恢复的方法。以下是关于交换机密码恢复说明&#xff1a;如果忘记密码&#xff0c;这时我们如果要配置交换机就必须在启动时绕过config.text的配置【密码保存在config.text中】然后…

程序员SQL都不会?能干啥?资深研发:别再瞎努力了!

国外有人曾做过调查显示&#xff1a;“SQL的使用人数仅次于JavaScript”。更有统计&#xff0c;世界上一流的互联网公司中&#xff0c;排名前 20 的有 80% 都是 MySQL 的忠实用户。为什么这项技术仍有这么多人在用&#xff1f;又为什么值得我们学习&#xff1f;1、无论你是前端…

OC管理文件方法

1、常见的NSFileManager文件方法 -(NSData *)contentsAtPath:path  //从一个文件读取数据 -(BOOL)createFileAtPath: path contents:(NSData *)data attributes:attr  //向一个文件写入数据 -(BOOL)removeItemAtPath:path error:err  //删除一个文件 -(BOOL)moveItemAtPa…