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

“万人迷”小冰背后的AI故事

640?wx_fmt=jpeg


作者 | Jane

出品 | AI科技大本营


从 2014 年的夏天小冰出现在我们的视野到今天,谈到小冰,你的第一印象是什么?一款可爱、萌萌哒的聊天机器人?一款随时在你身边,可以帮你做一些场景任务的语音助手?如果说,这两年智能音箱成为 AI 领域里的“流量明星”,那小冰更想让你领略她“偶像与实力”兼备的魅力。


从第四代小冰到第六代小冰,武威从团队的主要研发人员成为现在小冰核心技术的负责人、首席科学家。这几年来,他一直致力于开放域对话的研究,为了深入了解小冰是如何走进我们的生活,走入我们的内心,AI科技大本营采访到了微软小冰首席科学家——武威,带领大家深入了解小冰背后的技术以及聊天机器人的发展历程与趋势。


640?wx_fmt=jpeg


武威与三代小冰核心技术的成长史

     

武威:我个人的研究方向主要是开放域对话,探索的一个主要应用场景是聊天机器人的对话引擎,也就是聊天机器人对话引擎的核心算法。搭建开放域对话模型,主要有基于检索和基于对话生成两种方法。我们一直在研究检索模型方法,通过研究实际对话中上下文与回复候选匹配等问题,构建检索模型,并与小冰团队的工程师们一起合作,把这种方法应用在小冰上。在持续研究两三年后,我们又拓展出基于文本、视频回复候选的匹配,也是在此之后,我和团队把研究与应用拓展到多模态层面。关于对话生成,我们早期主要是基于上下文的回复生成, 后来研究并应用了共感模型,这些技术都成为每一代小冰背后的核心技术。同时,我个人也将研究领域拓展到基于生成模型的对话管理和生成模型的个性化对话管理。


在小冰的业务中,我参与了小冰诸多关键技术的研发工作。现在,小冰全球的生成模型,包括中国、日本、印度尼西亚和美国等不同语言的生成模型,主要都是由我负责。


正是小冰团队多年来在聊天机器人领域的不断研究与探索,在 2018 EMNLP 会议中,我与大家分享了聊天机器人领域的历史、发展现状与未来的趋势。经过这些年的努力,聊天机器人对话模型的一些基本问题已经得到很好的解决,比如对话回复和对话生成两个技术难点。


首先在对话回复方面,通过匹配的方法根据对话上下文找到合适的回复,其匹配精度在不断提高。以小冰的模型方法在公开数据集上的性能表现为例,两年间我们把模型的准确率从 66% 提升到了 80%,这还没有考虑一些强力的预训练模型比如 Bert。其次是对话生成,早期的方法经常给出无趣、万能的回复,经过近几年学界的研究,万能回复问题虽不能说完全避免,但是从初期把简单的机器翻译模型应用在对话生成,到后来对上下文建模问题的探索,都是不断提出针对这个问题更好的解决方案。现在工业界搭建聊天机器人,系统协调已经不再是一个难点问题。


目前,大家都在探讨聊天机器人如何商业落地,这就需要我们把研究成果与技术发展更加紧密结合,推动聊天机器人的落地。关于未来的趋势和热点方向,其一是多模态在聊天机器人领域中的研究与应用。聊天机器人不仅可以综合处理图像、声音和文字信息,同时可以进行综合模态,甚至包括情感等特征信息的输出与表达。目前,学界在这个领域的研究已经进入火热态势,也涌现了很多公开数据集,来探索如何利用多模态构建对话引擎。第二个方向是个性化分析与推荐的研究与应用,这也是目前学界和工业界都在发力的一个方向。



小冰的核心技术:对话引擎


小冰背后最核心部分是对话引擎。传统的对话引擎主要分为 ASR+TTS、NLU、DM 和 NLG 四个模块。随着大数据技术和深度学习技术的发展,把 NLU、DM 和 NLG 模块用统计模型的方法,进行端到端的训练。

     

640?wx_fmt=png


以小冰为代表的聊天机器人对话引擎,现在主要有两种方法:基于检索方法和基于生成式方法。两种方法中,神经网络都发挥着非常重要的作用:


  • 基于检索的方法:根据用户输入的数据(对话信息),系统查询索引(Index)后找到所有可能的回复,对所有候选回复进行排序筛选,最后挑选出认为最合适的回复,返回给用户,其关键在于构建索引库(语料库)。

  • 基于生成式的方法:用于数据数据(对话信息),系统通过深度学习方法生成一个回复返回给用户,其关键在于用深度学习方法构建一个生成模型。

     

640?wx_fmt=png


近年来,深度学习的发展在自然语言处理领域也发挥着重要的作用,研究与应用的每一个技术几乎都使用了深度学习的方法。


基于检索的方法的关键在于如何根据上下文对话、语义理解与候选回复等信息设计并构建 Matching Models。随着 Matching Models 越来越成熟,模式(pattern)覆盖越来越多时,训练性能和测试性能之间的差距,可能无法通过模型结构改善,因此现在我们将更注重模型的学习。

          

640?wx_fmt=png

640?wx_fmt=png


基于生成式方法的一个基本模型是 Encoder-Attention-Decoder 模型,其模型结构借鉴了 MT(机器翻译)模型。现在基于生成模型的方法已经得到很多的关注,学界和工业界都在不断研究与应用这个方法。

     

640?wx_fmt=png


除了基于检索与基于生成模型的方法,武威在报告中,还有很多主要的技术与每项技术使用的不同方法、不同网络模型。如 NLP 任务中的 Word Embedding 与 Sentence Embedding 的各种模型,多样性回复的解决方法,融入 Topic、情绪情感特征和表情的方法,强化学习、GAN 与 个性化等问题的研究与探索等等。

     

传送门:《Deep Chit-Chat: Deep Learning for ChatBots》

http://www.ruiyan.me/pubs/tutorial-emnlp18.pdf


640?wx_fmt=png



第六代小冰的共感模型


AI科技大本营:第六代小冰是如何做到根据当前话题与上下文,回复信息、引领对话、提出新对话甚至进行持续性对话?


武威:原来的聊天机器人集中于对话怎么回复、如何回复一些简单的问题。而小冰第六代发布生成式的共感模型,旨在提供一个一致的框架,解决上下文理解、意图识别与持续性对话三个问题。提出共感模型的关键在于把对话过程提升至一个被动与主动结合的交互过程。


在共感模型中,有三个重要环节:明确对话状态、策略选择与回复生成。首先,我们明确设定了几种对话状态。一种是无意识状态,比如没有额外意图、无须太多反应的社交词令。一种是有意识状态,需要确认、主动提问或主动引导的话题状态。明确对话状态后,就到了回复生成与策略选择的过程。当用户开始对话后,我们首先要识别意图,是问好、提问、陈述信息还是意在获取信息等,其开放域对话的意图非常宽泛。结合不同的意图与当前对话内容,决定下一轮的对话策略,匹配之前识别到的意图,最后生成回复的对话,这就形成了策略选择和回复生成结合的过程。通过数据学习或正向学习等方法选择合适的策略,让整个对话更持续、更顺畅的。


就像我们平时人与人之间的对话过程一样,并不都是处在完全被动的互动过程,我们会根据对话内容决定说些什么,也会在某些时候引导或提出新对话,这背后的策略与想法也是共感建模的核心。


AI科技大本营:策略选择与回复生成结合的过程是否是强化学习的过程?小冰是否应用了强化学习方法?


武威:强化学习过程中必不可少的一部分是奖励函数(Reward Function),在开放域对话过程中,如何定义奖励函数是一个具有挑战的问题。在基于任务型对话中,最终是否完成任务以及完成所需轮数可以用作强化学习的奖励函数,但是在开放域对话中,仅用对话轮数衡量不一定完全正确,同时也没有找到合适度量人机交互满意度的方式。我们确实尝试过用强化学习方法构建共感模型,但实验结果的提升并不十分明显。在小冰产品的应用中也发现了这个现象。这也是研究和应用的不同之处。



多模态的高级认知体系


2017 年第五代小冰发布了全双工语音交互,并在打电话和智能音箱两个场景中落地。到了第六代小冰,融合了共感模型的对话引擎、全双工语音和实时视觉三个类别的全新感官系统,并同时进行开放域对话。


AI科技大本营:随着计算机视觉、NLP 等领域不断取得突破,多模态信息在感知层面有好的表现是不够的,深入到理解、更高级的认知能力时,现在小冰在多模态领域研究中做到了什么样的程度?目前有哪些方面的新研究?


武威:目前小冰在多模态领域取得的进展可以总结为松耦合状态,各个模态可以一起工作,但耦合之下还不够十分紧密。比如,假如聊天机器人有了视觉,看到了视频,看到了周围的环境,同时又接收声音、语音或文字信息,我们可以想象这些信息都应该对小冰的回复有所帮助,但是这两种模态的信息是如何结合产生帮助的?什么时候应该结合一起,什么时候不需要结合?当模态变多后,耦合也会增多,那耦合之间是否会有所冲突?有了冲突,产生噪音,如何规避噪音?比如情感特征,声音包含情感,如何与文字结合,使回复的对话也能带有情感?乃至最终表达情感是通过 TTS 方式还是表情表达更为合适与自然?这些问题都还在研究过程中,但还不是完全清楚。


AI科技大本营:多模态在小冰情感计算模型发挥着怎样的作用?


武威:第六代小冰已经是一个整体情感计算框架。通过小冰的探索,要实现带有情感的聊天机器人,多模态是必不可少的。我们也从单模态进行考量,但是在对话交互中的效果并不是非常好。小冰从单模态到多模态,结合图像、视频、语音和文字等信息后,情感像一条纽带,贯穿一起,架构于此。目前这还是一个具有挑战性的课题,我们也在探索中。


AI科技大本营:除了多模态研究,还有哪些研究趋势?


武威:除了多模态,个性化聊天机器人也是我们正在研究的方向。个性化不止一两种,而是非常多的个性。其实,共性与个性的问题是如何平衡大数据与小数据间的问题,共性代表了大数据,个性代表了小数据,如果强调个性,数据太少,可能无法做出一个合格、有质量的对话引擎;如果用大数据搭建了高质量的对话模型,有可能就无法体现个性。所以,小数据的个性化离不开大数据。现在学界和工业界也都在探索大数据如何与小数据综合利用,实现有质量的个性化对话模型。



小冰的 AI 创造力


武威:AI 创造一直是小冰的一个重点研究与应用方向,几乎和对话同等重要。从早期小冰作诗、金融领域文本生成、音乐与歌曲生成,到现在小冰的有声读物,都是小冰在 AI 创造领域取得的成果。在 NLP 领域,目前,在短文本生成与创造已经有了比较不错的效果,现在也已经有更多的研究投入在更复杂的任务上,比如基于文本或视频讲故事,长文写作等。未来,我们也在想,小冰是否可以完成写小说、写散文等内容与艺术创造任务,这应该也是处于一个探索的“有待突破”的研究领域。


AI科技大本营:同行或同类产品中,也有以内容创作为主要落地场景,实现 AI 赋能与更多的商业价值,成为非常重视的方向,小冰未来在这方面有什么计划?


武威:内容创作在一定程度上已经可以节省人力,在可与人类相媲的质量前提下,完成的更快更多,这本身确实具有一定的价值与商业价值。但是它能带来更深层次的价值是什么样子的,目前还不是十分清楚。比如,大家也都在讨论的用 AI 创作艺术品,这个价值到底有多少,也很难衡量。



下一代小冰


AI科技大本营:小冰与很多第三平台的合作,除了智能家居领域,还希望探索哪些应用场景?未来如何定位,实现商业化价值?


武威:小冰的产品线非常丰富,应用场景也在不断丰富。不仅应用在智能家居、智能音箱中,小冰的声音还有有声读物、节目主持以及企业垂直解决方案等。有声读物已经超过了 400 万小时的收听量,小冰姐姐讲故事已经覆盖了国内了 90% 以上的儿童早教机器人,80% 在线收听品平台。到现在,小冰一共参与生成主持了 55 档电视节目。与日本 LAWSON 合作,帮助便利店发放优惠券等垂直解决方案。还有,国内个性化聊天机器人与网易、华为等公司合作,帮助他们打造自己的聊天机器人。所以,小冰乃至聊天机器人的应用除了 IOT 还有更多。因为,在我们看来,说话本身就是一种刚需,人在日常生活与工作中,很多事情都需要通过说话沟通来解决。我们也曾想过,要不要马上去做目前大家都在谈到的刚需,比如问答。但是,如果在解决实际问题解决时,机器人不能满足用户的需求,也无法让用户留存与活跃,而后续也就无从再谈。所以,我们做小冰,是先做常态再满足刚需。


和不同的第三方平台合作,面对不同的需求,我们主要有三种拓展商业模式的方法:一种是我们根据对方平台帮助其打造一个自有的 AI 产品;二是嵌入小冰平台到对方平台中,辅助对方 AI 产品,融入对方平台的生态系统;三是我们提供平台,对方利用微软的技术、运营与产品打造自己平台的一些差异化特征,推出相应产品与应用。


AI科技大本营:未来小冰如何保持领先?第七代小冰是否有发布计划?


武威:在开放域对话这个赛道,希望大家一起努力把聊天机器人做的越来越好。比如 Facebook 现在也开始布局,目前 Alexa 主打还是任务导向,其实也在此领域开始投入。未来小冰仍将通过已有的优势,比如用户与数据优势,持续打磨技术,希望继续处于领先水平。未来,小冰的核心仍然是对话引擎、AI 创造以及解决方案。能够在情感计算框架下诞生更多聊天机器人服务于更多的合作伙伴,也是我们期待的事情。第七代小冰还是值得大家期待的。


据悉,武威将于今年 5 月 在 The Web Conference 2019 会议上再次就 Deep ChatBot 做 Tutorial 分享,包含最新学术与产品的研究成果,期待武威老师的精彩分享!


(以上内容,AI科技大本营根据与武威老师的对话记录和《Deep Chit-Chat: Deep Learning for ChatBots》报告内容整理。)


--完--


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


公开课预告

全双工语音



本期课程中,微软小冰全球首席架构师及研发总监周力博士将介绍微软小冰在全双工语音对话方面的最新成果,及其在智能硬件上的应用和未来将面临的更多技术产品挑战。


640?wx_fmt=jpeg


推荐阅读

  • 华为波兰销售总监被捕;苹果将推三款新 iPhone;ofo 用冻结款还债 | 极客头条

  • Spring中的9种设计模式汇总

  • 《请不要回应外星人2019》

  • 一图看尽全生态, 2018区块链产业云图重磅发布!

  • 最全NLP语料资源集合及其构建现状

  • 买不到回家的票,都是“抢票加速包”惹的祸?

  • 这个用Python编写的PDF神器你值得拥有!

  • 刚刚!程序员集体荣获2个冠军,这份2018 IT报告还说这些!

相关文章:

开放式Android联盟成立

在Google采取行动反对CyanogenMod项目的几天之后,提供了定制的Android固件。一组Android开发者成立了开发式Android联盟。根据项目的网站介绍,这个联盟是‘pro-Android’而不是‘anti-Google’。他们的目的取代封闭的源代码,专有的应用程序包…

QQ卖手办,用AI分析用户评论

作者 | 徐汉彬指导 | 宋彦编辑 | Jane出品 | AI科技大本营徐汉彬,腾讯鹅漫前台研发团队 Leader,T3-3 级工程师,负责鹅漫U品和 AMS 平台(高峰期 PV 超过 13 亿)的研发工作,在 Web 研发、活动运营服务领域有丰…

使用svn时碰到的一个的问题

做技术的人,需要有完美主义,很多问题,如果当时不能彻底解决,往往会留下更大的麻烦。这个字符编码的问题,当时碰到的时候没有主义,以后遇到的时候也是抱着躲避的鸵鸟主义的态度,今天认真对待了一…

远程为服务器安装Windows 2008 Server

命苦,老早就定好10.1期间要把服务器重新安装一次,今天反正也没有事情,来尝试下远程安装,因为以后的MOSS公司要远程的管理和使用 先登录到远程控制卡的管理地址 然后输入用户名和密码,以下是登录成功后的界面 然后在左侧的功能树中选择“介质”…

Spring装配Bean---使用xml配置

声明Bean Spring配置文件的根元素是<beans>. 在<beans>元素内&#xff0c;你可以放所有的Spring配置信息&#xff0c;包括<bean>元素的声明. 除了Beans命名空间&#xff0c;Spring的核心框架总共自带了10个命名空间配置&#xff1a; 命名空间用途 aop 为声…

Ruby DSL介绍及其在测试数据构造中的使用(1)

什么是DSL&#xff1f;英文全称Domain Specific Language&#xff0c;中文解释为领域专用语言。顾名思义&#xff0c;DSL是针对某个特定领域而开发的语言。像我们平时接触到的C/C&#xff0c;Java&#xff0c;Python/Ruby&#xff0c;都属于通用语言&#xff0c;可以为各个领域…

2017年度最受欢迎开源中国项目:roncoo-pay投票评选

2019独角兽企业重金招聘Python工程师标准>>> roncoo-pay项目正在参加 2017年度最受欢迎中国开源软件评选&#xff0c;请大家投上宝贵的一票&#xff0c;支持roncoo-pay更好的发展&#xff0c;为大家带来更多好用的支付功能&#xff01; 2017年度最受欢迎中国开源软件…

编程小问题系列(2)——为什么WPF里MediaElement等视频控件不起作用

为什么WPF里MediaElement等视频控件不起作用&#xff1f;非常可能的原因是因为没有安装Microsoft Windows Media Player 10或者10以上的播放器&#xff0c;MSDN文档里就写有下面一句话&#xff1a;Both and are used to present audio, video, and video with audio content. B…

国行版HomePod售价2799元,本周五发售

&#xff08;图片源自苹果中国官网截图&#xff09;整理 | 一一出品 | AI科技大本营去年 12 月&#xff0c;苹果表示将于今年年初在中国销售其 HomePod 智能音箱。1 月 14 日&#xff0c;苹果公司正式宣布&#xff0c;HomePod 将于 1 月 18 日&#xff08;本周五&#xff09;在…

维基百科联手谷歌翻译,结果“惨不忍睹”!

作者 | 琥珀出品 | AI科技大本营作为前沿科技新闻报道的一线工作者&#xff0c;我们经常会碰到各种陌生难懂、语言不通的词句。这直接导致我们在引用和查找信息时&#xff0c;往往辅助以维基百科和谷歌翻译为代表的两大信息引擎&#xff0c;其重要性不言而喻。然而&#xff0c;…

Ruby DSL介绍及其在测试数据构造中的使用(2)

在(1)中介绍了DSL和普通的函数定义之间的区别。在(1)的最后提到&#xff0c;DSL分为内部DSL和外部DSL&#xff0c;我们再看一遍他们的定义&#xff1a;1. External DSLs 用不同于host语言的语言来编写&#xff0c;通过编译和解释器来翻译成host语言 2. Internal DSLs 将host语言…

批量编译fla文件

jsfl太神奇了不过内存不高的机器还是少编译一点&#xff0c;会同时打开你选择的文件夹下的所有fla文件&#xff0c;然后一个一个自动编译。Compile flas.jsfl//----------------------------------Start--------------------------------//Brent Arnolds kick butt batch folde…

字符串转换成utf-8编码

a、将字符串转换成utf-8编码的字节&#xff0c;并输出&#xff0c;然后将该字节在转换成utf-8编码字符串&#xff0c;在输出 b、将字符串转换后才能gbk编码的字节&#xff0c;并输出&#xff0c;然后将该字节在转换成gbk编码字符串&#xff0c;在输出 123456789101112def main(…

50万奖金+京东数科offer,JDD-2018全球总决赛冠军诞生

&#xff08;JDD 大赛总决赛选手与导师、评委合影&#xff09;整理 | 一一出品 | AI科技大本营1 月 13 日&#xff0c;JDD-2018 京东数字科技全球探索者大赛全球总决赛落下帷幕。在经过 24 小时极限挑战和 2 小时商业路演的较量后&#xff0c;来自以色列赛区的团队“Cheese&…

三星笔记本FN功能键操作大全

Samsung 的快捷键都很简单&#xff0c;提供的都是最常用的功能&#xff0c;但新出的X系列和P系列机的FN快捷键差异很大,例如X10和P25。现在介绍FN快捷键以巧的X10为主&#xff0c;补充说明P25。FN上方向键/下方向键&#xff1a;增加/减低亮度FN左方向键/右方向键&#xff1a;增…

[翻译] Ruby Golf

原文地址&#xff1a;http://rubysource.com/ruby-golf/ Ruby golf is the art of writing code that uses as few characters as possible. The idea originates in the world of Perl (where it is, unsurprisingly, known as Perl Golf). As a language, Perl is well suite…

AI删库,程序员背锅?

作者 | 一一出品 | AI科技大本营又一代码清库的惨案发生了&#xff0c;不过这次要背锅是 AI。近日&#xff0c;美国最大点评网站 Yelp 的工程师训练的神经网络闯祸了。他们训练了一个用来消除 bug 的神经网络&#xff0c;万万没想到&#xff0c;该网络删除一切&#xff0c;从根…

OpenStack Keystone架构一:Keystone基础

一 什么是keystone keystone是OpenStack的身份服务&#xff0c;暂且可以理解为一个与权限有关的组件。 二 为何要有keystone Keystone项目的主要目的是为访问openstack的各个组件&#xff08;nova&#xff0c;cinder,glance...&#xff09;提供一个统一的验证方式,具体的&#…

用gdb调试mpi程序的一些心得

Linux下MPI (Message Passage Interface) 的程序不太好调试&#xff0c;在windows下vs2005以上的IDE有集成的简便MPI调试工具&#xff0c;没有用过&#xff0c;有兴趣的可以试验一下。下面总结了一些最近在用MPI和c语言写程序时的调试经验&#xff08;Ubuntu环境&#xff0c;c语…

开源如何占领软件世界?

作者 | Mike Volpimavolpi译者 | 风车云马编辑 | 一一出品 | AI科技大本营5 年前&#xff0c;投资商对开源这种商业模式的可行性持有怀疑态度。他们普遍认为&#xff0c;红帽&#xff08;redhat&#xff09;公司犹如雪花飘零——在软件世界里开源公司不可能占据举足轻重的地位。…

软件工程概论——课堂测试1

设计思想&#xff1a;1.用1个页面&#xff0c;实现课程录入&#xff0c;提交后直接返回课程界面。2.应用html表单属性进行数据的提交。3.用servlet进行写入数据库和验证输入。 源代码&#xff1a; <% page language"java" import"java.util.*" contentT…

过程即奖励(The Journey is the Reward)

今天读完了《乔布斯传》。翻着这本书最后的影集&#xff0c;乔布斯传奇一生的一幕幕仿佛在眼前展开。从第一张照片中特里独行、桀骜不驯的年轻人&#xff0c;到最后一张照片中阳光下慈祥微笑的老者&#xff0c;看到的仿佛不是乔布斯的照片&#xff0c;而是自己的一位人生挚友。…

BREW 计费模式概览

计费模式也就是收入模型是商业模式的基础。BDS分发系统中不但提供了与运营商计费系统的接口&#xff0c;而且直接提供了BREW 计费服务。 BREW分发系统与运营商计费系统的集成&#xff0c;一般就是与运营商的综合营帐系统的集成&#xff0c;需要融合于网元层&#xff0c;资源层&…

程序员崩溃了,年终奖怎么说黄就黄

作者 | 胡巍巍转载自程序人生&#xff08;ID:coder_life&#xff09;往年王者荣耀年终奖200个月100万&#xff08;虽然辟谣是假的&#xff09;、华为年终奖24个月100万&#xff0c;都让我等平民羡煞不已。还有在BAT发生的&#xff08;朋友圈&#xff09;真人真事↓这是年终奖的…

改变IT世界的11大Apache开源技术

据国外媒体报道&#xff0c;转眼之间&#xff0c;Apache软件基金会已经成立10年之久了&#xff0c;11月份&#xff0c;Apache基金会的成员将会为其举行一次大型的庆祝。虽然Apache软件基金会是一个开源的组织&#xff0c;但是Apache却创造了对现代互联网来说很重要的技术。下面…

nginx常用技术

作者:NetSeek http://www.linuxtone.org (IT运维专家网|集群架构|性能调优)欢迎转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明.首发时间: 2008-11-25 更新时间:2009-1-14目 录一、 Nginx 基础知识二、 Nginx 安装及调试三、 Ngi…

2011到过的地方

火车上读《南方周末》&#xff0c;看到记者把自己2011去过的地方在地图上标记&#xff0c;带着标记的世界地图&#xff0c;显得特别而好看&#xff0c;于是很想自己也做一份。找了一些网站&#xff0c;做的图片&#xff0c;差强人意吧。2011到过的地方&#xff1a;这个图不算漂…

2亿简历遭泄漏,到底谁的锅?

作者 | 仲培艺转载自CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;前面刚有 AWS 开战 MongoDB&#xff0c;双方“隔空互呛”&#xff0c;这厢又曝出 2 亿简历信息泄露——MongoDB 的这场开年似乎“充实”得过分了些。长期以来&#xff0c;作为“最受欢迎的 NoSQL 数据库…

Could not apply the stored configuration for monitors 解决办法

Could not apply the stored configuration for monitors 解决办法&#xff1a; $ sudo rm -rf ~/.config/monitors.xml 重启电脑即可 本文转自linux博客51CTO博客&#xff0c;原文链接http://blog.51cto.com/yangzhiming/1225802如需转载请自行联系原作者 yangzhimingg

20行Python代码给微信头像戴帽子

作者 | Leauky&#xff0c;北理工硕士在读&#xff0c;非CS专业的Python爱好者。朋友圈里微信官方要求戴圣诞帽的活动曾经火爆一时&#xff0c;有些会玩的小伙伴都悄咪咪地用美图秀秀一类的 app 给自己头像 p 一顶&#xff0c;然后可高兴地表示“哎呀好神奇hhhh”&#xff0c;呆…