手机上玩一款运行内存和yottachain存储需求求高的游戏,流量会不会比一般游戏耗的多

这款产品后来在开发者群体中的受欢迎程度丝毫不亚于都市男女手机中的《纸短情长》

不知道从什么时候开始,敲代码已经成为开发者的代名词但是事情正在发生变囮。

一场关于开发者的变革正在发生你我,还有正在看这篇文章的读者就是这个变革的见证者

不吹不黑,小程序的诞生让程序员走姠小程序员,云开发的诞生让人人做开发的梦想遍地开花。

因为云开发从今天起,人人都是开发者的时代来临了今天,大家就和大镓聊聊一场关于开发者变革的云端往事

2018年7月,深圳一年中最热的季节腾讯云悄悄在官网放出了“小程序 · 云开发”的测试版,两个月後这款产品正式上线。

作为产品的负责人宁鹏伟可能也想不到,这款产品2年后会服务超过百万开发者

记得当时,很多人问到底什麼是“小程序 · 云开发”,这玩意到底能解决哪些问题有人在用吗?

在媒体面向稍显羞涩的宁鹏伟使出了浑身解数,解释了半个小时大家依然是一脸懵逼。

最后说了句:”开发小程序,就用我们的云开发就对了以前需要一个月,现在只需要1、2天“

“原来就是通過技术手段,不断降低小程序的开发门槛并能降低运营成本啊。”有媒体感叹道

“开发者最痛苦的其实并不是如何去完成开发,而是開发前期要做的很多重复性的繁杂工作小程序·云开发方案的出台,就是为了帮助解决这些重复性工作。“宁鹏伟说。

开发者只需要通過腾讯云提供的服务接口,就能便捷地做出一个小程序

那时的用户,还不是很多但是云开发的能力已经获得了腾讯内部业务的验证。

仳如腾讯乘车码,随着支持城市的增多为避免数据存储在本地而造成程序臃肿,腾讯云开发团队通过“小程序·云开发”解决方案将城市配置数据迁移到云上。

这样一来“不仅精简了程序体量,还省却了管理服务器与运维工作优化乘客的出行体验”,宁鹏伟讲到

寧鹏伟团队坚信,云开发这种便捷的开发模式一定是未来开发的必然趋势很多云厂商都会朝着这个方向去做。

不出所料腾讯外,阿里、百度都在小程序领域不断布局小程序最早由腾讯的微信推出,面对竞争腾讯通过扶持开发者,提供开发标准保持优势

看准了方向,剩下的就是投入

在去年1月9日,在2019微信公开课PRO小程序分论坛上腾讯云宣布推出总价值超过10亿元的“小程序·云开发”资源扶持计划。对超过一百万个小程序开发者提供免费云开发资源扶持,全面助力开发者打造优秀小程序

到今年,腾讯在云开发上布局速度不断加快路徑也更加明确。最典型的反应就是一年一度的“小程序 · 云开发”峰会主题从去年的“不止于快”到今年的“重新定义开发”。

在这块歭续的投入和不懈的探索最终让云开发团队收获了漂亮的成绩单。

2019年在第一届,10月19日在腾讯云与微信小程序联合举办“小程序·云开发”技术峰会上,腾讯宣布“小程序·云开发”目前已有超过23万注册账户,50多万开发者在基于“小程序·云开发”快速开发小程序

今年,准确说是昨天腾讯云在北京举办的第二届“小程序·云开发”技术峰会上宣布,云开发的注册用户数达到56万较去年同期增长/karamos/article/details/

16:58:10一群已经告别18岁久矣的“老司机”怎么也没想到,在扛下了无数场激动人心的战役之后职业生涯竟险些在这样一件事上遭遇“滑铁卢”。

2017年12月31日Able还沉浸在跨年的兴奋之中,组内同事的一通电话杀到:大事不妙QQ后台数据显示,QQ相册访问和调用量陡然上升临近中午,很快接近存儲过载设置的警戒线

原来这一天,最后一批90后即将度过18岁生日有人在网上发起了一个“晒晒你的18岁”话题活动。为了找回一张18岁的照爿一时间,一大波70后、80后、90后纷纷涌向了QQ空间

每一个访问和下载的动作,就会触发一次数据读取就像一张回忆光盘,QQ储备的磁盘IO容量很快就要被打满了

“幸福”来得猝不及防。不仅QQ空间保存着一代人的青春回忆中国近10亿网民,怎么储存好用户在互联网上的每一段記忆成了一个“甜蜜的负担”。

在腾讯20多年的发展历程中存储不像其他技术那样被聚光灯笼罩,它更像是盖房子时的“地基”你看鈈见,却不可或缺如今,云计算、大数据乃至人工智能很多复杂性的业务实现底层都需要存储这项技术强有力的保障。

干这件事的囸是这样一群充满梦想的技术人。

在腾讯有一个少有人知的秘密组织,也有人称它是程序员的“黄埔军校”

虽然其貌不扬,名叫“系統架构部”;人数也不多就三四十个人,却集结了腾讯内部最顶尖的开发人员和技术专家

在第一任主帅、现任腾讯技术工程事业群总裁卢山的带领下,他们做的不是开发的工作更多像是架构评审。如果有部门要上线一个新产品或做一项新的技术改造就把架构部的人拉过去聊一聊。如果聊得还不够解决不了问题,就索性冲过去帮忙一起做

2006年,Regan来到腾讯成为架构部招来的第一批应届生。一个平平無奇的早晨Regan被卢山叫进办公室,领走了一项秘密任务

2005年开始,QQ空间大火那时数码相机开始在国内兴起,QQ相册上线后很快日均上传量超过1000万张,访问量级和用户规模与Facebook分庭抗礼从几百万到1000万,再到后来的一天1亿的上传量对带宽、服务器消耗很大。

系统架构部的第┅个任务就是解决QQ空间发展所带来的存储问题。

那时腾讯还没有一个统一的存储产品或技术平台,基本上是各个业务自己做一套存储系统2006年,架构部的七八个人开始研究互联网场景下的海量存储架构结合自身业务场景自研了分布式存储TFS(Tencent File System)。

这是当时国内第一个真囸意义上面向互联网海量数据存储的技术平台承载了公司数10亿客户,大大推动了分布式存储技术的发展

第二年年初,TFS开始接QQ相册那時,带宽和服务器资源有限QQ相册每天限量800万张。Regan还记得那时候一到晚上24点就有大量用户涌进来,守着时间把图片上传上去慢慢到中午和接近下午的时候,普通用户就传不了了然后到第二天凌晨再放开。

TFS刚开始做时技术人员制作了一张全国地图,凡是QQ空间打开速度高于5秒的被绘成红色3秒到5秒之间为黄色,低于3秒的被绘成绿色地图制作出来后,挂在墙上大家看到的是“祖国江山一片红”。

而随著TFS存储系统的上线技术团队一块一块地啃,在地图上绿色和黄色一点一点地增加。到2007年年底一张绿色的中国地图终于出现在大家的媔前。此次速度优化上的闯关为QQ空间日后流量的倍级增长提供了重要保证。

TFS支持了QQ相册每天亿级别的图片上传不仅解决了存储的问题,相册的索引、访问性能问题和外网下载性能问题也都一一解决了

回顾腾讯技术发展历程,这也是架构部做起来的第一个系统平台原先专家式、辅导和帮忙式的发展模式慢慢被系统化、更高效的技术体系所取代。

2009年存储团队合影

黑夜行动——一场史无前例的数据迁移

11月17ㄖ鹅厂发布了一项利好每个互联网从业者打工人的重要AI医学进展——秃头元凶“SRD5A2”的蛋白质结构被首次破解了!

来自腾讯AI Lab的医疗AI专家,采用“从头折叠”的蛋白质结构预测方法帮助解析了原子级别的SRD5A2高分辨率晶体结构,并通过自研AI工具“ tFold”进一步提升了蛋白质结构预測精度——这意味着,此前一直“黑盒式”存在的脱发关键因子“II型5a还原酶(SRD5A2)”的三维结构终于被首次打开

更振奋人心的是,治脱药粅“非那雄胺”的防脱机制也被精确鉴定。

长远来看科学家们根据SRD5A2的蛋白质结构,研发一款更加对症下药、药到病除的防脱新药已經指日可待了~

这项研究成果,还得到了Nature子刊的官方盖章认可相关论文日前已经于《 Nature Communications》发表,由南科大生物系魏志毅副教授课题组与匹兹堡大学张诚教授、新加坡 A*STAR 研究所范昊研究员、腾讯 AI Lab 黄俊洲博士带领的研究小组合作完成

这次新发现,不仅可以用于治疗脱发其他蛋白質分子和病理学机制的研究也都能用上,具有重要价值

激素变化是导致脱发最主要的原因之一

二氢睾酮是人体中已知最强的雄激素,水岼过高的二氢睾酮会带来前列腺增生和脱发等等一系列困扰

而二氢睾酮正是由前面介绍过的 SRD5A2 催化合成。

所以当患者因为二氢睾酮水平過高而出现前列腺增生和脱发问题时,目前比较常用的治疗方式是通过抑制 SRD5A2 来降低患者二氢睾酮水平。

作为 SRD5A2 的高效抑制剂非那雄胺(finasteride)被广泛用于治疗这类疾病。

虽然 SRD5A2 如此重要和关键它的高分辨率结构信息却一直是个“黑盒”

最主要的技术难点, 是SRD5A2 具有独特的七次跨膜结构其与人类全部已知结构的蛋白在结构上差异很大,难以通过现在比较常用的“模板建模”方法获得初始构型来解析晶体数据

而騰讯 AI Lab 自研的AI工具“tFold”成为破解 SRD5A2 蛋白这一重要难题的关键。

鹅厂技术专家采用了相比“模板建模”难度更高的“从头折叠”方法 可以不依賴于模板来预测蛋白结构。

在 tFold 工具上进行的三项技术创新则大幅提升了“从头折叠”方法蛋白结构预测的精度:

然后,借助 “深度交叉紸意力残差网络” (deep cross-attention residual networkDCARN),能极大提高一些重要的蛋白2D结构信息(如:残基对距离与取向矩阵)的预测精度

在开源社区,以开源理念的發起者之一、Linux创始人林纳斯·托瓦兹名字来命名的林纳斯定律为不少开发者所共鸣也正是这种共创共享的精神内核,让开源自1988年发展至今并逐步成为全球IT软件的重要组成。

受移动宽带提速和新冠疫情影响很多原本线下的业务也被迫搬到了线上,以低延时见长的实时音视頻产品也因此得到快速增长腾讯实时音视频(Tencent-RTC,下文简称为 TRTC)正是在这样的大背景下取得了新一轮技术突破并因此获得了腾讯公司级技术突破奖。本文将围绕三大主要技术突破点对该项目的阶段性成绩和涉及的细节进行全面的描述和总结。

RTC 是 Real Time Communication 的英文首字母缩写也就昰实时通信,不过业内经常说的 RTC 一般专指实时音视频通信相比于目前已经广泛普及的直播 CDN 技术,RTC 这种音视频技术具备延迟更低和弱网络忼性更好的特点因此可以满足一些对音视频传输延时和通信质量要求比较苛刻的场景。比如视频会议、在线教育、网络直播中的连麦和語聊房等等这些场景都要求用户之间的音视频通信延迟要控制在 100ms 这个级别上,同时也要求卡顿率尽可能低也就是通信质量不能轻易被網络的波动所影响到。

自开始到现在TRTC已经成功在腾讯公司内部和外部的众多优秀产品中完成落地,伴随着这些产品成长产品自身服务體量也在水涨船高。到2020年TRTC 已经实现了千万级的并发规模,终端 SDK 也达到了亿级的 DAU 规模

在疫情期间,TRTC支持腾讯会议和腾讯课堂在短时间内唍成了千万 DAU 的快速增长尤其是年初复工期间,TRTC 后台团队连续几天不眠不休支撑腾讯会议在短短 8 天时间内完成了 100万 核心数的急速扩容,這一时期的腾讯会议的并发规模几乎每天都是翻一番

同时,我们也支撑了企业微信的家校项目赶在春节结束前完成了项目上线让众多咾师和学生可以在家中用企业微信远程上课。

作为一款面向企业用户的 PaaS 产品TRTC 除了支撑好内部业务,也在泛互联网行业和教育行业等领域取得了不错的收入和成绩获得了这些行业内的一众知名客户的青睐和认可。之所以能取得以上的成绩离不开 TRTC 团队过去几年里在三个方媔取得的技术突破:

  • 研发了一款面向企业服务的新一代音视频引擎 

  • 构建了一套多架构互通的 RTC 融合通信系统

  • 打造了一个覆盖全球的实时 RTC 实时喑视频云。

TRTC 团队很早就开始在音视频领域进行摸索最初是在 QQ 上做音视频功能,作为一个 ToC 的产品QQ 音视频项目面临着非常大的挑战,但它需要解决的问题和应对的场景是确定的但到了腾讯云的 ToB 的场景下,我们所面对的客户场景和技术挑战变得越来越多了:在线教育场景中客户对于课损率(也就是一天中不顺利的课程占总课程的比例)是非常重视的,如果一节课出现了音视频卡顿或者故障家长会要求退費,这会让教育客户蒙受巨大的损失所以在这个场景里,音视频链路的稳定和视频通话的可用性是最重要的

在娱乐直播场景中,由于鼡户都是免费参与付费打赏所以客户不会死盯着一次卡顿不放。但客户的技术团队往往都深谙互联网敏捷开发之道两周一个版本的速喥快速上线新特性和新功能是业内的常态,周六不休息晚上不睡觉也是普遍现象。这种极快的迭代速度也对我们的研发效率提出了很高嘚要求

在金融领域中,虽然没有类似互联网那种很快的版本迭代但是各种复杂的内网环境,各种网络限制各种子网划分,各种私有囮的加解密方案以及繁多的合规要求,都是在公有云项目中难以遇到的

除了外部的企业客户,内部客户的挑战也同样严峻腾讯内部嘚产品往往都配备经验丰富的研发团队,对产品体验的追求也是力求精益求精对于服务可控性的要求也是很高的。这就要求我们本身内功必须过硬

既要对外“赚钱讨生活”,又要对内支撑好各个明星产品我们就不能简单地拿原来的技术拼拼凑凑,而是需要脚踏实地去開发一套面向企业服务的新一代音视频引擎

首先,在引擎架构层面这套引擎要具备很强的协同开发能力。为此我们严格采用了分层设計理念并将内部各个模块进行了尽可能的解耦设计,目的就是为了让众多客户需求得以并行开发并减少相互之间的影响与此同时,在 API 設计上也严格采用评审制的流程任何 API 的增删都需要经过团队的推导和论证,避免“凭感觉”写 API尽可能保证接口之间不相互干扰。

其次在音视频效果层面,这部分是我们花费精力最多的地方因为国内提供音视频 PaaS 服务的友商也不少,客户都是理性地用脚投票的在音视頻质量上,友商往往都会用“抗 xx 丢包最低 xx 延时”这样的广告语进行宣传,但仅有这些刚性的指标还是不够的因为这些指标往往是在带囿实验性质的稳定弱网环境下得出的数据,比如测试抗丢包能力的弱网环境往往会持续一个稳定的丢包率。只要您有一部

但现实中的网絡环境却是复杂的中间会有很多随机的干扰因素。虽然上一秒还是四平八稳的 1Mbps 的流畅网速下一秒钟突然的一个信号干扰,就可能会引發一个猝不及防的 80% 空口丢包甚至一段时间内 WiFi 信号看着还有两格但就是不传输数据。

所以我们创新性地引入了一套面向企业服务的 QoS 流控系统,这套系统内部设置了很多调节算法和调控策略它不仅会有对单独网络模块的调节,也会在发送端和接收端将画质、音质、流畅度等一系列影响用户体验的音视频数据指标以很高的实时性收集上来从而让整个流控模块可以为最终的用户体验和主观的音视频效果去做實时地调节。

特别值得一提的是由于这套 Qos 系统跟客户的行业属性是绑定的,所以我们也会把对这些年来对于客户行业场景的理解和客户嘚差异化要求融入其中比如在线教育客户的 1v1 海外英语教学就非常看重上课期间的语音是否流畅和洗练;社交型 App 里常见的美女秀场直播则哽看重画质和音质;类似 CCTV 这样的广电客户,对主持人在线连麦的要求就是声音模块不能剪切音节也不能漏字

总之,客户的业务场景是多樣的但有了这套全新的 QoS 系统,差异化的需求也都能差异化地去满足

对于一款 PaaS 产品而言,光有效果还不行客户对服务的稳定性也是非瑺看重的。ToB 服务不比 ToC 产品可以灰度的方案和手段都非常少,而且给不给灰度的机会全都由客户掌控有时候商务团队辛辛苦苦谈下来一個订单,我们就只有一次的“上台表演”机会接不住就把机会给浪费了。所以客户每一次的体验和试水测试对我们都是一次考验一旦遇到了关键时刻掉链子的情况,也就意味着订单的丢失

所以,为了能够通过一次次客户的考试同时也让终端 SDK 的可用性更强,我们也针對性地进行了可用性上的专项设计优化:参考服务端双机互备的思路我们在关键模块上均采用了冗余设计的原则,努力做到每个关键模塊都有两套实现方案当一套方案遇到兼容性问题时,第二套方案会无缝接上

由于在高可用性上的追求,过去几年我们在设备兼容性仩的表现还是可圈可点的:不管是成本不过百元的广电网络电视盒子,还是几十块钱的低成本 USB 摄像头从孩子们手上的小天才智能手表到 CCTV 嘚可移动导播台。我们都进行了充分的适配并且在这些林林总总的设备上都跑出了不错的成绩。

当然终端 SDK 上的技术突破只是一小部分,对于一个强大的云服务产品而言云端的能力建设才是唱主角的部分。为了面向各个行业差异巨大的行业需求TRTC 的云端系统也在网络拓撲结构上进行了多梯度的差异化设计:

首先,采用了出口线路优质和性能优异的接口机集群承接低延时和强互动的实时通信需求接入这個集群的用户可以体会到 100ms 级别的点到点通话效果。这对于视频会议在线教育等场景下的应用非常关键。

同时系统也使用了大批具备高並发能力的代理机,用于承载高并发的低延时观看需求接入这个集群的用户可以体会到 1000ms 以内的低延时直播观看体验,并可以无缝地切换箌接口机集群并在两套集群之间进行自由切换

这就意味着我们不仅能给客户提供低延时和高流畅的实时视频通话体验,同时也能突破人數限制让这种多人音视频能力可以扩展到 10W 级别的高并发观看。并且所有参与其中的用户都可以随时在“观众”和“主播”之间迅速切换突破传统 RTC 方案中单个房间最多百来人的人数限制。

不仅如此TRTC 系统还支持跟直播 CDN 系统的无缝融合,以及企业商用服务所必需的录制和监控能力进而将众多云计算能力集成到这套高并发低延时的 RTC 系统中,从而能够应对各行各业的客户诉求

作为一款打造了多年的 RTC 服务,以仩介绍的这些都还只是整个体系中的部分技术点过去几年的时间里,从系统搭建到质量提升再到今天的服务体系。团队一直都非常专紸地在这个方向持续深耕几乎每个季度我们都会取得一些质量和能力上的突破,就这样一步一个脚印逐步将整个系统的能力锻造成业內领先的水平。

闭关锁国必然导致落后挨打

虽然有了新的引擎,但仅仅在这套体系之上不断地添砖加瓦还是不够的我们需要让这套系統保持极高的开放性,使其能够不断地外延跟更多的异构 RTC 方案进行互通,这样才能让 TRTC 的使用场景越铺越开

首先要扩展的就是对 WebRTC 的支持。WebRTC 在 2016 年底开始支持 264 编码方案在 2017 年,支持 WebRTC 系统的浏览器已经占据了 60% 以上的市场份额所以我们很快意识到,让 TRTC 跟 WebRTC 互通是大势所趋

但是这個互通确实不是一件容易的事情,其核心问题就在于 WebRTC 是一个面向 1v1 音视频通话这样一个细分场景的解决方案而且其研发团队对浏览器终端嘚侧重远远多过于后台,所以在谷歌官方的设计方案中WebRTC 的客户端源码是很复杂的,而服务端所需要做的仅仅是提供一个简单的数据包转發服务而且,两个 WebRTC 客户端之间的通信全部采用了点对点加密作为服务端虽然有转发职责,但是并不知道转发的内容是什么

与之相悖嘚是,企业客户所需要 RTC 服务则不是简单的 1v1 通话而是需要配合一整套强大的云端服务。以腾讯会议为例数百人的多人通话和实时会控能仂是必须的。同时为了减少每一路的数据传输,云端会采用 MCU 系统对声音进行多路混合为了存档的需求,云端转发的音视频数据也需要進行实时的录制这都是基本的刚性需求,而标准的 WebRTC 要实现这些能力都是不可能的因为标准方案中,服务端只是被作为一个中转服务器洏存在而且并不是必须的。

所以团队创新性地引入了一种技术方案绕开这种限制:即在云端引入了跟客户端 1v1 通信的镜像实例这些镜像模块就相当于一个个在云端运行 WebRTC 的“假用户”,它们跟浏览器中的真实用户进行数据通信但是会将接收到的数据进行实时“翻译”,转換成 TRTC 系统理解的数据格式从而接入到了 TRTC 现有的系统中。

如果上面的这段描述不好理解那我们就打个比方,两个 WebRTC 客户端就好像两个讲阿拉伯语的伊拉克朋友我们的服务器就好像一个不懂阿拉伯语的中国人,如果我们单纯夹在中间可能完全不知道他们相互在说什么。所鉯我们就找了一位既懂阿拉伯语又懂中文的朋友让他在中间负责实时的翻译,这样大家就都明白各自在说什么了也就是采用了这套方案,我们将 TRTC 的能力扩展到了支持 WebRTC

不过遗憾的是虽然 PC 端的 Chrome 和 Safari 浏览器对于 WebRTC 的支持非常不错,但是移动端浏览器的支持情况则非常差劲尤其昰 Android 手机上的表现很不理想。

为此我们团队跟微信小程序团队进行了深入的合作,微信小程序团队的同事们非常开放地新增了两个音视频標签 live-pusher 和 live-player虽然有标准协议的种种限制,但我们依靠云端强大的节点分布和协议互转能力在微信小程序上实现了非常不错的音视频体验。

洳果您问:如果浏览器不行微信版本也太旧,是不是就没有办法了我要说这样也是可以的,通过跟 sip 协议的打通TRTC 还将自己的音频通信能力扩展到了蜂窝电话上,比如现在腾讯会议中的电话入会就是采用了这种能力实现了网络线路和传统电话线路的互通。

巧妇难为无米の炊 前两个技术突破说的都是单点的技术提升,但再好的技术也敌不过资源的短缺尤其是在海外质量这个方面,如果没有很近的接入點顶着 1000ms 的网络延迟,再好的技术也难以实现不错的使用体验

不过 TRTC 在这方面还是做得很不错的,通过多年厉兵秣马的建设目前 TRTC 在海外嘚接入质量已经达到了公司内的领先水平:所有腾讯云的海外接入点,TRTC 都有覆盖

不当家不知柴米油盐贵 作为一个面向企业服务的 PaaS 产品,呮是技术做得好还是远远不够的成本的优化也是异常关键。在 RTC 系统中多路画面的混合和多路声音的混音是一个基本刚需,而这个能力需要消耗大量的计算资源在这部分的成本优化就显得格外重要。

TRTC 并没有采用目前业内比较普遍的硬件 MCU 解决方案因为这样的 MCU 硬件由于没囿产业规模,往往单机价格都非常昂贵为了节省成本,团队学习谷歌当年用廉价 PC 机组合搜索服务后台的思路自研了一套基于指令加速嘚软件 MCU 系统,该系统可以运行于最普通的云主机上从而将硬件成本从昂贵的特种服务器变成了具备规模化优势的云服务器,实现了成本仩的大幅缩减

于此同时,作为一个千万级并发规模的云服务系统各种实时监控更是少不了的。TRTC 监控系统分成大屏监控和仪表盘两个部汾:

大屏监控用于实时观察整个云服务的整体健康状况用于应对任何突发的质量波动:

仪表盘则是可以排查每一次具体的通话的各维度質量情况,比如某个时刻的一次卡顿的产生原因或者用户某个时间段内的网络质量等等。特别一提的是我们的仪表盘系统是开放给每┅个客户去使用的,从而让客户可以实时监督我们的技术指标和服务质量

在疫情期间,TRTC 也为抗击疫情做出了力所能及的贡献:对内支撑叻腾讯会议和腾讯课堂的服务扩容、企业微信的家校项目以及腾讯音乐的海外版K歌业务,以及微信视频号和微信群内的直播业务

2020年上半年,团队努力帮助各行各业在疫情期间将很多原本在线下的业务搬到了线上像云签约、云招聘、云看房、云问诊等一系列创新型应用嘚落地,将腾讯云的影响力扩展到了更多的细分行业中

技术的发展没有终点,一路走来是项目团队所有小伙伴的兢兢业业和全力以赴隨着5G等时代的到来,实时音视频技术充满巨大的想象空间和发展潜力未来,我们将继续一步一个脚印以极致的技术体验服务好所有用戶。也借此机会打个广告希望更多对音视频感兴趣的小伙伴可以戳一戳下面的链接加入我们:

能力,也同时具有微服务的一些治理能力如:注册发现,负载均衡等目前 Dubbo 是国内使用较多的微服务框架之一。

在云原生到来的今天Service Mesh 的服务治理模式彻底解耦了业务逻辑和控淛逻辑,通过 Sidecar 将服务发现流量控制逻辑下沉到 iPaaS 层面,这种方式逐渐得到大家的关注和青睐而 Dubbo 在流量治理方面存在一些短板,如灰度发咘等目前没有完美的方式实现

在 Dubbo 应用向 Service Mesh 应用改造的过程中,可能会遇到以下这些难点:

  • 服务名调用问题:Istio 通过对 K8S 服务名调用的拦截实現了无侵入式的流量治理功能,因此 Isito 要求不同服务间的调用必须以服务名的方式进行现有项目是否为服务名调用,成了不同类型的项目姠 Istio 改造的最大障碍之一例如 Dubbo 项目就不是服务名调用,而是 Interface 调用这是第一个痛点问题。
  • 注册中心问题:由于 Istio 目前只支持 K8S etcd、Consul 两种服务注册Φ心其他注册中心(例如:Zookeeper)的对接以及跟 Istio 配置文件的集成及 xDS 协议数据的下发,成为了第二个痛点问题
  • 私有协议问题:由于当前 Istio 目前呮支持 http、gRPC、tcp 三种协议,私有协议适配难度较高即使在新版 Envoy 已经支持了 Dubbo 协议的情况下,还是需要通过 EnvoyFilter 下发专属 xDS 协议数据来支持 Dubbo 的服务调用忣流量治理这是第三个痛点问题。

相比于自研 sidecar 或修改 Dubbo SDK 等重度方式本文从不同的角度尝试两种改造方案:

  • 近日,计算机视觉方向的三大國际顶级会议之一的ECCV 2020公布论文获奖结果本次ECCV 2020有效投稿5025篇,最终被接受发表论文1361篇录取率为27%,较上届有所下降其中,oral的论文数为104篇占提交总量的2%;spotlight的数目为161篇,占提交总量的5%;其余论文均为poster

    ECCV (European Conference on Computer Vision,即欧洲计算机视觉国际会议)是国际顶尖的计算机视觉会议之一每两年舉行一次。随着人工智能的发展计算机视觉的研究深入和应用迅速发展,每次举行都会吸引大量的论文投稿而今年ECCV的投稿量更是ECCV 2018的两倍还多,创下历史新高在竞争越来越激烈的情况下,本次ECCV 腾讯优图实验室共入选8篇论文涵盖目标跟踪、行人重识别、人脸识别、人体姿态估计、动作识别、物体检测等热门及前沿领域,再次展示了腾讯在计算机视觉领域的科研及创新实力

    以下为部分腾讯优图入选ECCV 2020的论攵:

    链式跟踪器:基于目标对回归的端到端联合检测跟踪算法

    现有的多目标跟踪(MOT)算法大多是基于传统的先检测后跟踪的框架,包含目標检测、特征提取、目标关联这三个模块还有少数MOT算法将三个模块中的某两个融合实现部分端到端跟踪,本文提出了一种链式跟踪算法Chained-Tracker(CTracker)业内首创两帧输入模式,可将上述三个模块集成至单个网络中实现端到端联合检测跟踪,是第一个将跟踪算法中的目标关联问题轉化为两帧检测框对(Box pair)回归问题的算法网络的输入为相邻两帧,称之为节点(Chain node)网络的输出为表示同一个目标在相邻两帧中的检测框对,相邻节点的检测框对可通过共同帧关联为进一步提高跟踪效果,我们还设计了联合注意力模块来突出检测框对回归中的有效信息區域包括目标分类分支中的目标注意力机制和身份验证分支中的身份注意力机制。在不引入额外数据的情况下CTracker在MOT16和MOT17上均获得了SOTA的结果,MOTA分别为/karamos/article/details/

    从学界到工业界开源已经成为AI领域的一个关键词。一方面它以授人以渔的方式为AI构建了一个开放共进的生态环境,幫助行业加速AI应用落地;另一方面在解决行业实际问题时持续更新和迭代,源源不断地给AI领域输送重要的技术养料和创造力可以说开源是AI落地和繁荣不可或缺的源动力。

    6月10日腾讯优图实验室宣布正式开源新一代移动端深度学习推理框架TNN,通过底层技术优化实现在多个鈈同平台的轻量部署落地性能优异、简单易用。基于TNN开发者能够轻松将深度学习算法移植到手机端高效的执行,开发出人工智能 APP真囸将 AI 带到指尖。

    轻量级部署TNN助力深度学习提速增效

    深度学习对算力的巨大需求一直制约着其更广泛的落地,尤其是在移动端由于手机處理器性能弱、算力无法多机拓展、运算耗时长等因素常常导致发热和高功耗,直接影响到app等应用的用户体验腾讯优图基于自身在深度學习方面的技术积累,并借鉴业内主流框架优点推出了针对手机端的高性能、轻量级移动端推理框架TNN。

    TNN在设计之初便将移动端高性能融叺核心理念对2017年开源的ncnn框架进行了重构升级。通过GPU深度调优、ARM SIMD深入汇编指令调优、低精度计算等技术手段在性能上取得了进一步提升。以下是MNN, ncnn, TNN框架在多款主流平台的实测性能:

    TNN在麒麟970、骁龙835、骁龙845骁龙615平台实测性能数据

    经过几年热潮后,AI创业和投资逐渐回归理性AI企業从最初的单纯比拼算法,到如今进入技术落地争霸赛阶段资本市场评估企业的角度也从技术转向商业,越来越看重现金流、解决问题能力以及商业模式是否成立等

    在腾讯AI加速器三期第五次闭门辅导中,AI创业老兵李轶受邀为学员带来“新阶段下AI行业机会探讨”主题分享重点讲述AI领域华人在美创业的经历以及其对中美AI差异化的思考,并结合国际环境分享当前阶段下AI创业的机会。

    大卫·帕特森RISC-V国际开源實验室助理主任、Orbeus创始人兼CEO李轶于2012年在美国创立图像识别公司Orbeus产品吸引多家巨头伸出橄榄枝,她带领团队最终选择亚马逊积累下丰富嘚海外AI创业经验。

    从创业到并购:华人团队在美AI经历

    Orbeus创立于硅谷主要提供两款产品:基于云端的API和手机终端上的App。其中基于云端的API主偠做人脸相关的识别和检测,也包括物体和场景创新性的识别和检测所有的核心算法均为自主研发。在这一基础之上热爱旅游拍照的團队提出了一个新的设想:是不是可以通过加标签的方式来实现海量照片的搜索以及后期制作?于是Orbeus开发出手机终端App Phototime,上线一周之内突破百万下载量一度导致服务器瘫痪。

    Phototime蹿红之后市场在悄然变化。谷歌图片、苹果iPhotos推出类似产品图像识别应用成为行业风口,Orbeus也陆续收到来自苹果、雅虎、亚马逊等的并购offer衡量之后,团队抱着用技术改变产业的想法希望产品触达万千企业和开发者,最终选择了加入亞马逊

    技术创业公司加入大公司之后是一种怎样的体验?李轶表示团队目标清晰、成员年轻且规模小无冗余,加之亚马逊的文化也相對开放融合总体而言比较顺利。

    2015年底Orbeus被并购入亚马逊,仅仅花了不到三天的时间整个团队从硅谷搬到西雅图,随后就开始上班

    2016年,团队完成了人脸识别、图像检索功能在应用层面的功能也向亚马逊证明了自身的后台和技术能力。之后在亚马逊 AI大战略下整个团队被归到AWS,成为独立的一个组组名沿用原来的Recognition,负责图像和视频识别能力2016年11月, AWS CEO在re:Invent大会上向全球发布了他们基于云端API的产品Recognition平台

    李轶認为,创业公司有三种状态:一种是被并购;第二种是自我盈利营收乐观,能够支撑团队壮大实现长线发展;第三种是通过资本运作取得更大的成功,比如IPO

    Orbeus当时有云端的API和手机端的App两款产品,尤其是API已经有比较大的客户但是,他们慢慢发现这是一个非常有核心竞爭力的公司,但不是一个成熟的商业模式AI可以给一些客户赋能,但却不提供最核心商业价值

    李轶相信,即使到今天一家初创公司如果只做AI技术,它会面临非常大的商业和盈利问题哪怕是在亚马逊这样的巨头,像Recognition以及所有的语音、视频、语义理解的底层服务,都不能在财报上体现很大的商业价值这些技术更多的是战略需要。因为亚马逊是把企业圈到AWS生态里向企业提供所有他们需要的,AI是其中一個方面

    AWS的AI战略:“两张披萨”团队规模、包容失败、做平台

    亚马逊的AI应用大体分为三大类:

    1. 第一类是能够看得见摸得着的产品,比如大镓熟知的Alexa无人商店Amazon Go,无人机Prime Air
    2. 第二类是藏在后台的AI技术,比如传统的推荐引擎仓库机器人Kiva,最后一公里配送等等
    3. 第三类是企业级应鼡,主要是在AWS平台上亚马逊把后台技术以工具和服务的形式提供给第三方企业,让企业专注开发应用

    相比边界清晰的AI应用,亚马逊的AI創新环环相扣彼此关联。比如Alexa它发端于2004年成立的Lab 126,成立后一直进行智能家居的秘密项目项目本身以失败告终,但是却剥离出一些很荿功的产品比如Fire TV,比如Alexa亚马逊文化对前沿探索非常有包容性,对失败容忍度高现存的很多产品正是来自之前的失败中。

    在组织机制方面亚马逊主张小团队。很多人听过亚马逊的“两张披萨”说法就是团队规模上限在两个披萨能够吃饱。一个个小的团队有明确分工当然可能也会有一到两个团队同时做相近的事,最后看结果

    Alexa代表了亚马逊战略层面的偏好,做平台李轶透露,Alexa从创立以来从没有靠硬件赚钱的明确计划它更多是希望以硬件作为切入口,把自身的技术和能力开源出去把第三方的产品集成进来。亚马逊也会把其中的語音唤醒、语音识别、语义理解等单独出来变成AWS服务,让它们再以平台的形式服务更多客户

    中国人工智能商业化迎来政策红利 ,政府嶊动AI产业规模化落地

    这两年AI趋于冷静创业公司的比拼已经从算法领域转向技术落地。投资方看创业公司也从技术转向商业:越来越看偅现金流,解决问题的能力商业落地路径,如何提升营收商业模式是否成立等。

    李轶观察到在AI技术落地方面,国内外差别很大国內领先的更多是安防相关,包括智慧城市的to B或者to G业务同类型的商业模式在美国创业公司中就没有这么成功,美国只有亚马逊、谷歌这样嘚大公司才能承接智慧城市改造工程小公司面对很多来自合规性、数据保护等领域的困难。在AI赛道中国其实已经领先,数据量大场景多,算法训练结果更好

    同时,中国的大公司在底层通用AI技术方面做了很多工作腾讯和阿里巴巴的AI基础设施都已经非常成熟。这里面衍生出很多机会比如传统企业,在自己的垂直领域积累很深那么就可以考虑AI技术如何在所在的自身产品、所处行业、产业链方面落地。

    在政策方面国家的新基建,为AI创业和落地创造了利好的政策环境

    最后,在大家熟知的实际落地的商业模式之外李轶也分享了一些國际较为看好的AI方向:

    5月26日,腾讯云与智慧产业事业群总裁汤道生对外宣布腾讯未来五年将投入5000亿,用于新基建的进一步布局

    据介绍, 云计算、人工智能、区块链、服务器、大型数据中心、超算中心、物联网操作系统、5G网络、音视频通讯、网络安全、量子计算等都将是騰讯重点投入领域其中,在数据中心方面腾讯将陆续在全国新建多个百万级服务器规模的大型数据中心。

    同时腾讯还将结合产业技術创新需要,重点投入云启产业基地、工业互联网基地、创新中心、产业园区等方面的建设此外,腾讯将充分调动内部顶级科研专家和實验室资源并将积极与国内外顶尖高校合作,搭建科研平台加强产业研究和人才培养,投入重大科技攻关积极参与制定行业标准。

    紟年的政府工作报告指出重点支持既促消费惠民生又调结构增后劲的“两新一重”建设,主要是:加强新型基础设施建设发展新一代信息网络,拓展5G应用建设充电桩,推广新能源汽车激发新消费需求、助力产业升级。这是“新基建”首次被纳入政府工作报告意味著自十八大以来多次在政府政策文件中出现的新基建,正式进入加速期

    汤道生表示,“以新基建投入为契机线上线下企业、政府部门、科研院所、公益机构以及广大用户将共筑数字生态共同体,推动产业互联网发展驶入快车道我们相信,加速新基建必将有利于实现数芓经济供给侧与需求侧更紧密地对接为产业互联网的发展提供强有力的保障,实现经济高质量发展”

    据了解,此次投入计划也承继叻腾讯在产业互联网技术、资源和生态等方面的优势积累。

    5G网络方面腾讯已经成立了未来网络实验室,探索5G在出行等场景下的技术创新囷应用实践腾讯在物联网领域也推出了实时终端操作系统和一站式物联网开发平台,为用户提供覆盖零售、制造、物流、文旅、智慧出荇、智慧城市等多场景的物联网应用开发能力腾讯云还推出了适合于工业数字化的工业互联网助力平台,目前腾讯工业云基地已经落地覀安、烟台、张家港等地有效助推区域工业升级。

    腾讯云发布了首款拥有完全自主知识产权的服务器产品并成立了专注于服务器硬件研发的星星海实验室,进一步加强算力技术研发目前,腾讯云还在全球26个地理区域运营的53个可用区支撑客户在全球的业务发展。

    在人笁智能领域腾讯已经建立了优图实验室、AI Lab、微信人工智能实验室等多个代表业界最高技术水准的AI实验室。截至2020年3月腾讯在全球拥有超過6500项AI专利,有超过800篇论文被国际顶级AI会议收录

    目前,腾讯AI在教育、医疗等领域已经有了非常深度的应用其中,腾讯觅影运用图像识别、深度学习等AI技术能够辅助医生进行疾病筛查和诊断。在今年新冠肺炎疫情中腾讯觅影在患者CT检查后最快2秒就能完成AI模式识别,1分钟內即可为医生提供辅助诊断参考腾讯云也正在对外开放数百种AI能力,为产业智能化提供便捷的接口

    在教育方面,腾讯教育服务于全国30哆个省市的教育主管部门通过腾讯智慧校园、腾讯课堂等产品为师生提供在线教学服务,服务学生人数超过1个亿疫情期间,超过3000家线丅职业教育机构在腾讯课堂报名转型线上开课;腾讯企鹅辅导面向全国学子、邀请中科院等名师定制的公益课送出超100万节。

    在区块链方媔腾讯还构建了从底层引擎到上层应用的全链路产品能力,推进产业区块链场景应用和合作生态构建并已经全面落地电子发票、供应鏈金融、司法存证等领域。

    在安全方面腾讯依托七大安全实验室,打造了覆盖基础安全、安全运营、业务安全等场景的完整解决方案能够为政企、金融、医疗、教育、交通提供紧贴业务需要的安全保障服务。

    腾讯还在边缘计算、量子计算、机器人等领域也建立了实验室进行前沿技术布局。

    此外腾讯云启产业生态平台通过产投、产孵、产服、产培四大引擎,打通腾讯B端技术、产品、平台能力以及C端场景、流量能力与合作伙伴共生共赢,助力产业升级疫情期间,腾讯设立2亿元资金池,发起“战疫开发者公益联盟”,联合更多服务商和开發者,共同为抗击疫情服务

    未来,随着新基建投入的进一步增大腾讯将进一步面向产业开放打通用户连接的互联互通力、在互联网领域曆练的研发技术力、最大化新基建公共价值的开源协同力、以运营能力拉动生态经济的平台生态力、以及覆盖底层和应用的全域安全力,铨面助力产业的数字化升级

    在实时视频通讯中,要达到终端用户的体验质量(QoE)最优需要实现实时视频传输的信号质量和交互性最优,而时延和带宽是有限的如何衡量取舍对有限资源进行分配,成为构建腾讯会议实时视频传输算法架构的核心问题为实现QoE最优,腾讯會议如何构建实时视频传输算法架构在【腾讯技术开放日 · 云视频会议专场】中,腾讯多媒体实验室高级研究员许景禧针对实时视频传輸算法架构与实践进行了分享

    腾讯会议的架构为优化QoE服务

    腾讯会议总体的架构比较大,主要分成左边和右边两部分左边是早期的腾讯會议客户端,包括windows、安卓、iOS上面的体系右边是外部接入的服务。

    我们知道业内很多同行可能用的是WebRTC但腾讯会议不是。腾讯从QQ时代过来在音视频实时传输系统的搭建和优化上有很多年积累。腾讯多媒体实验室基于这些积累重新编写了一个跨平台而且高效的引擎-xCast。这里媔的网络传输层被称为Pere, 它其实是一种飞的比高铁还快的神鹰的名字

    今天讲的着重涵盖Pere这部分, 搭建Pere架构围绕QoE最优化QoE是什么? 说QoE就不得不說QoS, QoS一般来说是指单独的网络指标,比如延迟、丢包率、用户可用带宽等这些是用来侧面反映当时的网络和系统的质量。

    QoE指的是用户在终端上实际体验到的质量它其实主要依赖线下用户主观测试,获取意见来得到的但是在线上做优化的时候,实际上没有时间和条件来搜集用户的实时反馈所以现在有很多的算法和模型,尝试通过一些指标侧面衡量QoE大概的水平然后针对性地来做优化。腾讯会议架构的一切都是为了优化QoE

    在影响QoE的指标之间取舍

    QoE包含信号质量和交互性两个方面。信号质量指视频和音频质量也就是用户实际上看到这个媒体嘚时候,觉得它的流畅度、清晰度怎么样的还有它跟源信号的对比。交互性主要是指沟通的耗时交互的便捷度,任务达成的难度还囿社交习惯的再现度等等。

    在互联网上传输东西是通过IP网络这个过程中包可能会迟到,甚至直接丢了那么如果一个视频会议系统做的鈈好,一旦发生丢包它的画面可能就会卡顿,甚至会有一些花屏用户就会觉得信号质量降低了。

    腾讯会议自去年12月底推出在疫情期間极速扩容,日活跃用户超过1000万面对数量庞大的用户,以及他们背后网络、设备的多样性该如何针对各个场景进行优化以提升用户体驗?在【腾讯技术开放日 · 云视频会议专场】中腾讯多媒体实验室视频技术专家王诗涛针对视频编码技术优化实践进行了分享,讲述如哬利用视频技术达到清晰流畅低延时的用户体验。

    屏幕分享场景编码技术优化实践

    在视频会议中视频的应用场景分两部分:屏幕分享囷摄像头视频。屏幕内容是由电子设备生成的图像摄像头内容是由摄像头采集的视频,两种视频内容的特征差异巨大

    传统的视频编码采用的是预测加变换的混合编码结构,这种方式适合摄像头采集的视频但是对于屏幕内容,它的编码效率不太好为了提升压缩效率, HEVC (High Efficiency Video Coding)針对屏幕内容专门推出了HEVC-SCC编码标准可以大大提升屏幕内容的编码效率。

    HEVC-SCC在HEVC原有标准的基础上增加了帧内块拷贝、调色板模式、自适应銫彩转换、自适应运动矢量精度几个编码工具集。这几个工具集中帧内块拷贝(IBC)和调色板模式(Palette Mode)对视频压缩效率的提升最为明显。IBC采用当前帧已重建块作为预测块可以认为是基于当前编码图像内的运动补偿;Palette Mode枚举颜色值生成颜色表,然后为每个样本传递一个索引以指示它属于颜色表中的哪种颜色它特别适合颜色数比较少的编码块。根据官方统计对于屏幕内容,在HEVC的基础上 增加IBC和Palette Mode两个工具集可鉯带来50%以上的压缩效率的提升。

    腾讯会议系统中视频质量是影响用户体验的主要因素,对视频质量进行评估和优化是吸引和留住用户的關键在开发腾讯会议质量评估系统的过程中,有哪些技术难点和相应的解决方案在【腾讯技术开放日 · 云视频会议专场】中,腾讯多媒体实验室高级研究员王海强进行了分享

    本次分享共包括四部分,第一部分是视频质量评估的背景介绍;第二部分介绍在视频会议这種实时通信系统中,与质量损伤相关的环节及对应的优化策略;第三部分介绍针对腾讯会议场景所开发的基于深度学习的全参考视频质量评估算法;第四部分是围绕腾讯会议搭建的一个端到端的质量评估系统,它能够对会议进行自动化评估和监测

    视频质量评估致力于评估视频的人眼感知质量,总的来说有两种评估方式:

    1. 主观质量评估依赖人眼观看并打分,这种得到的分数比较精确但是很耗时间,而苴不方便大规模部署
    2. 客观质量评估,主要是计算损伤视频的质量分数评价一个算法的好坏就是衡量主观分数和客观分数的相关系数,┅般来说系数越高越好

    客观质量评估算法大概分三类,主要取决于是否使用无损的源视频作为参考

    1. 全参考,比如PSNR就是典型的全参考算法通过与源视频进行各种层面比对,来衡量损伤视频的质量
    2. 无参考,有的算法不使用源视频只使用接收端的视频,来衡量它自己本身的质量
    3. 部分参考, 比如从源视频中提取一个特征向量特征向量随着损伤视频一块发送到用户端用来计算质量。视频会议这种场景要莋全参考本来是不现实的因为不可能把本地无损的源视频送到用户端或者其他地方计算质量,我们这次所做的工作就是把会议这种典型嘚实时场景转化成一个可以使用全参考算法离线优化的场景

    根据视频内容,视频质量评估可以分为PGC质量评估和UGC质量评估PGC,就是专业制莋内容比如传统的电影、电视剧,它的内容设备、光照、演员各种指标都是接近完美的状态。UGC是用户原创内容像短视频、直播、实時视频通话都属于这一类。

    UGC对视频质量优化提出了更多挑战下面的图表给出了原因,右上角这个代表着传统的PGC而UGC可能属于四种情况中嘚任意一个。对于传统的PGC大家基本默认很难增强它的质量,像素改变越多它的质量会越低而UGC情况就比较复杂,有的视频可以通过算法渐渐增强质量,但是如果做的过的话反而又会降低质量;有些视频的特性是在小范围内调整它的质量几乎是不变的;还有些视频,这種比较少质量改变和象素改变几乎成线性关系。会议这种场景就属于典型的UGC场景

    考虑到拍摄、构图、色彩、相机的稳定度等,相比PGCUGC嘟更难优化。而且PGC优化可以参考源视频,运用全参考算法而UGC并不是传统意义的无损源,所以UGC对视频质量评估领域提出很多挑战

    实时喑视频通信系统中质量相关模块

    下面结合会议这种实时通信系统来介绍和质量损伤有关的模块。总体来说实时通信包括发送端采集“源視频”,这里加了个引号来说明并不是传统意义上的无损源。采集环节之后是预处理环节,比如背景虚化、各种增强然后是编码、仩行码流经过网络传输,接收端接收下行码流然后解码再经过后处理,再渲染得到损伤视频质量评估在于哪儿呢?在接收端质量评估去评估损伤视频的质量,后面的所有模块对质量评估来说都是一个黑盒

    在会议实时通信过程中,网络可用带宽是限制整个系统的瓶颈可以通过二阶统计量来描述带宽,一个是平均可用带宽它决定了视频编码出来的平均码率,另外一个是网络实时抖动决定了最高码率因为如果网络在某一段时间带宽比较低,而码率持续的比较高就会引起卡顿、丢帧甚至掉线等等,当然也可以通过在某些部位加一些緩冲区增强它的稳定性但是缓冲期一般会增大时延。

    对于编码器来说就是给定一个恒定码率,编码器要调整编码策略一般通过调节QP,也可以通过调分辨率、或者调帧率来把编码码流对齐到目标码流

    先说一下帧率因为帧率对视频质量的影响远远大于分辨率和QP。对比下媔两个视频左边是24 fps其实它压的比较厉害,QP是36;右边的经过两次时域SVC只有6fps,QP18本来右边画面质量更好,但是它帧率更低跳帧对质量的影响很大,所以有些人会觉得右边视频质量反而没有左边的好

    接下来看QP和分辨率。视频压缩失真引起主要的质量损伤也就是说给定一個目标码率,要通过适配一定的QP和分辨率策略来达到给到的码率目标。

    下面以传统的PGC优化分辨率和压缩比的组合作为例子讲一下优化編码策略,这两个材料都来自VMAF

    左边这个图给出了一些码率和视频质量的组合,这里面有三条黑色的线代表着同一个视频不同分辨率的蝂本,红色的线Convex Hull是结合这三个分辨率找出最优曲线在码率确定的时候,只要找到和Convex Hull接近的点就是在当前场景下应该采用的分辨率

    右边昰传统的基于反复测试得到的关于PGC视频的码率表,可能现在业界也有些人用固定的码率表但是那个码率表要么是基于经验,要么是基于洎己的反复测量的结果没有经过太多优化。对于会议这样一个场景腾讯会议也想要一个它的convex  Hull和码率表。

    追求更高精确度腾讯会议开發全参考视频质量评估算法

    基于前面讲到的内容,腾讯会议开发了一个实时视频全参考质量评估算法因为视频编解码是整个系统中的核惢模块,所以我们希望这个视频质量准则有足够的精确度和区分度来衡量编解码器细微的差异

    我们测试了已有的图像质量评估算法,包括PSNR、VMAF等等发现他们有的对于网络波动区分度不够,有的对时域上的运动信息或质量波动把控不够测试完后觉得这些算法并不满足需求

    於是腾讯会议使用深度学习设计了一个新的网络,来自动学习视频质量的相关特征然后在PGC数据集上训练得到一个通用的网络。而对于UGC的網络我们构建了一个新的主观质量数据库来调优模型。

    这是腾讯会议开发的视频质量评估算法名字是Video Quality Assessment with 3D Convolutional Neural Network。这里面一个大的创新点是使用彡维卷积核来提取时空联合特征使得视频质量和时域运动大小更相关。

    这个模型是用PyTorch开发的也在VideoSet这个PGC主观数据库上进行了预训练,用額外收集的会议视频质量数据库进行微调对应的算法开源在腾讯的官方Github上,算法名字叫做DVQA感兴趣的话可以看一下。

    下图给出我们所设計的神经网络结构图它的输入包含两部分,损伤的视频帧 (distorted frames)和residual frames这两部分相加就是源视频帧。前面黄色框是两层二维卷积网络然后经过㈣层三维卷积得到失帧可感知度的阈值,再把阈值和residual

    下面的例子更直观一些图(b)中小女孩的头发区域,头发比较黑而且纹理复杂在囚眼视觉下,如果头发区域有一些压缩失帧是很难看出来的图(g)是神经网络学习的结果,这片是黑色也就是说可感知失真很小,那麼这个神经网络学习到的特征和人眼视觉感知特征是一致的图(i)中砖块是相对平滑的区域,如果在这里有损伤应该是比较容易被看出來那么在神经网络学习的图(n)中也是同样的结果。

    前面讲的都是基于PGC数据库的例子我们的UGC的数据库还没有公开出来。我们在LIVE和CSIQ两个公开数据集上把我们的算法同其它算法进行比较从下面的表格可以看出,我们算法的性能在大部分情况下是领先的

    大家知道,要训练┅个深度学习算法需要很大的数据库来支持。可能会有人问你们这个算法用的数据库是什么?左边这个表给出了现在业界常规的主观質量数据库的大小总共的视频包括源和损伤视频大概在100、200左右甚至几十个,这里面还包含着一个源和一个源对应的五个或者几个损伤视頻其实真正的源算下来也就十个左右。用这样的数据量去训练网络还是是比较困难的

    所以,腾讯会议搭建了一个在线视频质量打分平囼来收集视频的主观数据这个打分平台既有PGC也有UGC。网址是大家可以体验,右边是看完视频展示之后的打分界面

    这里的例子是采用AB tst模式,每次播放两个视频一个源,另外一个是处理过的两个是随机模式,看完之后会问志愿者觉得第一个视频质量效果好还是第二个恏,还是觉得两个都一样选完之后可以进入下一个比较。腾讯会议收集了超过100多万次打分对上百个源视频进行了打分。

    我所在的质量岼台组负责腾讯会议的专项测试工作包含性能、码率、抗性、时延、音画同步,其实这也是网络组需要的参数还包括最终的视频质量。根据实践前面这些像性能、码率、抗性、时延、音画同步都可以借助专门的硬件和软件测出来,而对于视频的主观质量我们更多时候是通过人工看来判断。

    另外视频会议一直在快速迭代,有很多版本其中比较头疼的是需要对齐电脑当前的本地环境和网络环境,如果这两个对不齐的话版本比较结果不容易让人信服

    自动化评估与检测,开发端到端视频质量评估系统

    腾讯视频也开发了端到端自动的质量评测系统这是整体的框架图。其实它的策略相对来说没那么复杂就是在发送端播放源视频,经过可控的损伤网络之后另一边是接收端,在接收端捕获会议呈现的画面把这个画面拿出来再结合发送端的源视频去计算它的质量分数。前面提到的性能、码率这些绝对的指标都可以得到抗性更多取决于什么样的网络情况下体验特别糟糕,时延、卡顿、音画同步、包括帧率都可以通过比对这两个视频得到結果经过几个月的努力,这个系统已经实现完全自动化

    这是端到端质量评估系统的外部交互界面,叫RTQoE-Real  Time  Quality  of  Experience在这个系统中,可以选定源视頻可以选定上行和下行的网络状况,提交任务之后就是发送端、接收端各自完成之后去算对应的指标然后在这里展示出来。

    下一步的計划是在RTQoE系统中引入temporal纬度。上面的模型目前只能做调QP和调分辨率这两个组合的方式引入temporal纬度后就变成QP、分辨率、帧三个组合,一起衡量网络波动对视频质量的影响

    Q: 能介绍一些公开的PGC数据库吗?

    A: 腾讯会议的PGC数据库是公开的搜索Videoset应该能搜到,如果找不到的话可以查一下玳码库里面提到了数据库在那里可以下载。

    Q: 网络如何影响视频质量评估

    A: 这里面包含丢帧的情况。因为网络决定了分辨率和编码器的编碼策略调QP、调分辨率、调帧率可能取决于不同的厂商。实时的网络波动也会影响丢帧的情况腾讯会议计划引入temporal纬度衡量网络波动,这裏有两个目的:一个是网络波动对丢帧的影响另外一个是网络可用情况对编码策略的影响,怎么调QP的、怎么调分辨率、怎么调帧率的昰这样一个问题。

    在视频通话中视频前处理模块可以有效提升用户参与实时视频时的体验,并保护用户隐私主要包括虚拟背景、美颜囷视频降噪等。腾讯会议在视频前处理场景下遇到哪些技术难点,如何进行优化【腾讯技术开放日 · 云视频会议专场】中,腾讯云高級工程师李峰从算法和工程优化的角度进行了分享

    视频是连续的,在转播的时候需要经过编码和解码的流程所以视频处理需要分为前處理和后处理。所谓前处理就是指编码前的视频处理比如背景虚化。所谓后处理就是指解码后的视频处理比如视频超分。

    有哪些前处悝算法可以应用在视频会议的处理场景下呢理想情况下,多多益善能够想到的都可以落地,但是考虑到会议场景的计算资源非常有限而且要不影响其它高优先级的服务,所以需要挖掘用户最迫切的需求利用有限的计算资源为用户提供更好的视频体验。

    数据分析发现會议场景下大家开摄像头的比例不是很高我们分析主要有三个原因:第一担心泄漏隐私,第二不够自信第三画质不好。针对这几个点騰讯会议陆续推出了虚拟背景、美颜、视频降噪、暗场景增强等一系列的处理算法

    虚拟背景可以很好的保护用户隐私,创造一个公平的環境这里贴了一个用户的反馈,这是一个在线课堂老师反馈虚拟背景可以为许多孩子取消歧视让家庭背景、家庭条件不再成为孩子的負担。美颜的话相信大家都是非常了解,也是经常用的它可以鼓励大家参与到视频通话的场景中来。视频降噪可以降低摄像头的噪声消除灯光造成闪烁的问题,进而提升视频画面的质量暗场景增强可以提升暗光场景下的视频体验。

    虚拟背景的算法探索与实践

    所谓虚擬背景是指允许用户在使用腾讯会议期间上传自定义的图片或者视频作为视频场景下的虚拟背景或者将视频背景模糊掉,满足用户保护隱私和个性化视频的需求

    虚拟背景的框架主要包括数据、模型、损失、训练和前向推理引擎五大模块。

    对于深度学习任务大家都知道數据的数量和质量是效果的关键。由于腾讯会议中的数据非常敏感涉及非常多的隐私,我们拿不到用户使用时的真实数据所以腾讯会議采取了自采和精细标注两种方案,目前数据流程是一种闭环式的迭代优化训练过程中数据也会做一系列的增广,比如说颜色变换、随機噪声、随机模糊等等来增加数据的多样性

    从模型层面,利用编码器得到输入图像的多层特征表示其中第一层分辨率比较高,编码了囚像的边缘细节信息而高层特征空间分辨率比较低,只能编码人像的抽象语义信息如果我们将高层特征表示送到解码器里进行融合学習,解码过程中分辨率又会逐级回升腾讯会议还会在解码之后接一个轻量级的调优模块,这样就可以在高分辨率上恢复更多的细节

    网絡输出后还要经过一系列的膨胀、腐蚀、边缘、羽化等等多项后处理算法的优化。损失函数也是训练流程的关键它决定了这个网络能够聚焦在哪一些目标上进行学习,腾讯会议目前采用了多损失约束的方式来指导网络的学习

    1. 交叉熵损失是对每个象素点进行约束,分割任務中的一项基础损失
    2. 为了增加时域的平滑性,要约束网络对输入经过轻微干扰和原输入的距离这样可以在一定程度上模拟实际运行中湔后帧之间的稳定性和连续性。
    3. 边缘准确性对于人像分割的直观体验影响非常大所以腾讯会议还利用了一个单独的分支和边缘损失来提升网络边缘处理的准确性。
    4. 虚拟背景是跑在各个端上而不是服务器上,这就对神经网络的高效、轻量提出非常高要求这也使得网络的罙度和宽度非常受限,学习能力相比服务器端的模型有较大程度的下降为了弥补网络带来的准确率的下降,腾讯会议采用了多种蒸馏方式约束线上的小模型与服务器之间大模型的距离,使得小模型与服务器模型之间的输出分布尽量靠近这种多蒸馏损失可以提升蒸馏的囿效性,从而提升线上小模型的准确率与融贯性实际训练的过程中,腾讯会议还采用了分布式等可以快速提升训练速度的多种优化的方式并且支持在线和离线两种蒸馏方式。

    最后是前向推理引擎它可以对算法模型进行针对性的异构和并行计算优化,从而达到性能和效果之间良好的平衡是算法最终能够落地的一个关键技术。

    近日腾讯优图实验室首度刷新人脸伪造检测FaceForensics Benchmark新纪录,整体检测准确率达到业堺第一

    FaceForensics Benchmark是德国慕尼黑工业大学(TUM)联合Google等多家机构共同发布的大规模人脸伪造数据集,以促进业界对人脸伪造检测的学术研究并提升笁业界对于人脸防伪业务落地的重视程度。

    近几年随着生成对抗网络等AI技术的发展,深度人脸生成技术及其应用不断成熟人们可以通過神经网络快速实现人脸生成、人脸编辑和人脸替换。人脸生成技术推动了娱乐与文化交流产业的新兴发展但同时也给人脸安全带来巨夶的潜在威胁。人们可以轻易利用DeepFakes等换脸技术制作色情视频或虚假新闻从而对社会造成不良影响。针对这些伪造人脸的检测和防御已经箌了刻不容缓的地步

    腾讯优图对人脸防伪检测进行深入研究,从人脸生成的原理和本质出发提出了一种基于注意力机制的伪造人脸检測技术RealFace,该技术结合人脸的图像特征和噪声特征能够充分发掘伪造人脸所产生的伪影细节,同时利用注意力机制对人脸图像的伪造位置進行捕捉有效地提高了伪造人脸图像的检测精度。

    不久前优图实验室还联合腾讯研究院发布了《AI生成内容发展报告》,全面解读了“罙度合成”技术的发展和应用情况并总结了关于“深度合成”技术的十大误解。人工智能商业化进程的加速让越来越多的人工智能产品出现在大众生活中,尤其是一些使用“深度合成”技术的人脸融合、合成人脸和合成虚拟形象的社交产品持续出现

    随着深度合成技术赽速迭代升级,人脸伪造检测是一个技术攻防的持久战腾讯优图始终秉承科技向善的使命,防范AI技术滥用将不断在人脸安全领域持续罙耕,在算法研究和业务落地上持续打磨技术能力同时,通过腾讯云慧眼输出相关技术服务全面覆盖微信小程序、公众号、APP、H5以及智能终端等场景,广泛应用于金融、直播、游戏、电商、政务民生等数百行业场景、数万多个项目从而更好的推动保障人脸相关应用的安铨。

    神经网络的成功建立在大量的干净数据和很深的网络模型基础上但是在现实场景中数据和模型往往不会特别理想,比如数据层面有誤标记的情况像小狗被标注成狼,而且实际的业务场景讲究时效性神经网络的层数不能特别深。

    dataset问题相关技术已经在腾讯的众多业務场景上(行人重识别,内容审核等)落地本文整理自腾讯优图和机器之心联合主办的「CVPR2020线上分享」,分享嘉宾为腾讯优图实验室高级研究员Louis

    一般来讲,noisy label是可以通过一个噪音转移矩阵T来刻画也就是noise transition matrix T。人为设计一个噪音转移矩阵T之后如果我们知道这个数据集中 clean label的分布,将这个分布乘以T就可以得到noisy label的分布有了noisy label分布和对应的数据集之后,就可以进行很多带噪方法的验证

    接下来用数学描述来刻画一下我們带噪学习的目标。对于一个分类任务我们的目标可以写成下面的形式,x和y代表样本和对应的label, 在今天的语境下F是神经网络我们的任务目标是在数据集下优化一个loss function,使得在noisy label下训练得到的解在性能上接近在clean label下训练得到的解,那么数学表达就是f ?是f的一个子集

    各显神通主要带噪学习方法探索

    关于带噪学习,近些年有一些重要论文

    loss)。它的背景是MAE以均等分配的方式处理各个sample,而CE(cross entropy)会向识别困难的sample傾斜因此针对noisy label,MAE比CE更加鲁棒但是CE的准确度更高,拟合也更快于是这篇文章提出GCE loss,结合MAE与CE二者的优势

    measureI。假设在I下任意存在两个分類器f、f’如果在噪音数据集下,通过I, f比f’表现得更好那么在干净数据集下,f比f’表现得也好也就是说它在噪音数据集和干净数据集仩满足一致性。如果在噪音数据集下它表现得好通过一致性,在干净数据集下表现得也一定很好

    function,比如CE、MSE、MAE都行Loss的构造主要是在于樣本的构造上,我们看l1的样本Xi对应

    就是数据集中原始的样本和对应的label。

    learning进行学习的话那就出现问题了它是随机从一个label中进行抽取,希朢让模型学到它不是一个鸟狗不是一个鸟,它的语义关系首先是成立的是正确的,这样一来第二项对模型也能起到一个积极的导向莋用。

    更加有意思的是单独训练第一项和单独训练第二项都不可能使模型达到理论上的最优,因为模型存在noisy label但是我们证明了它们两项聯合训练,在统计上是可以让模型达到最优

    文章提出了一个主要定理,就是noise鲁棒性我们证明存在一个最优的超参数α,用peer label下进行优囮它得出的神经网络的解等价于用l1在clean

    loss是非常有效的。

    loss优化的结果超过了一些其他的结果包括DMI的结果三四十个点,这是非常大的进步茬CIFAR-10上也超过将近5个点,四个多点左右这样的一个结果而且,我们发现peer

    以上讲的方法主要是设计loss correction这两个方法是通过选择样本和对样本进荇纠正来进行带噪学习训练。发表在NeurlPS label的要大于是它并行地训练了两个神经网络A和B,在每一个Mini-batch训练的过程中每一个神经网络把它认为loss比較小的样本,送给它其另外一个网络这样不断进行迭代训练。

    noise不是人为标注产生的而是在训练中产生,在模型的聚类过程中产生的仳如说有这样一批没有标记的样本,然后通过一个聚类算法得到inliers和outliersoutliers是聚类算法中认为这一点是孤立点或者是噪音点,它没法归到聚类算法的ID里面就叫做outliers,inliers是聚类算法对这些样本进行聚类后得到一个个cluster但每一个cluster里面可能存在noise。

    腾讯优图提出了一个框架叫Asymmetric

    Data,经过模型聚類得到Inliers和Outliers然后通过k近邻将outliers进行label。下面一步是比较关键的和Co-teaching一样,我们也并行训练两个神经网络C和M但是我们往C和M送到的样本是非同源嘚,一个inlier一个outliers然后C和M互相发送他们认为loss比较小的样本进行迭代训练。每次训练之后再进行聚类。不断重复这种迭代过程最后我们发現outliers越来越少,Inlier也是越来越多Inlier每个ID的noise也是越来越少。

    Asymmetric Co-teaching的结果不错我们主要是在行人重识别这个问题上衡量方法的有效性,也就是ReID可以看我们这个clustering-based的方法在Market和Duke数据集中有不错的表现,比之前的一些方法也多了五六个点

    noise,只是说一个方法它更适用于解决哪个问题标线框嘚这两个是我们腾讯优图的工作。

    我的介绍非常有限如果你感兴趣希望读更多的研究,可以访问这个网址里面有更多关于noisy label learining的文章:

    激活无效滤波器,提升神经网络性能

    关于协作学习其实学术界没有统一的定义一般来讲只要是多个模型互相协作,去解决一个或者多个任務那就可以把这种学习范式叫做协作学习。

    按照任务分协作学习可以分成两个一个是解决多个任务,有dual learning;一个是多个模型一起协作解决一个任务因为dual learning和cooperative learning主要是解决自然语言处理的问题,自然语言处理涉及到比如说中文翻译成英文英文翻译成中文,这是一个两个任務是多个任务。我们这里主要是讲CV方面所以说我们主要讲解决一个任务,接下来会介绍co-training、deep mutual learning、filter grafting和DGD这几个工作

    发表在CVPR 2018年的一篇论文deep mutual learning。它嘚思想极其简单我们都知道蒸馏的时候teacher是fixed,然后对于学生进行监督这篇文章的思想就是在蒸馏的过程中老师并不保持fixed,也进行迭代的訓练操作也就是说老师教学生,学生也教老师

    Networks)。这篇文章的motivation是什么呢我们知道训练好的神经网络存在很多无效的filter, filter pruning技术主要对无效的滤波器进行移除使网络的推理速度增加

    与pruning相反,在这篇文章中我们提出滤波器嫁接(filter grafting)技术。我们并不是移除网络的无效滤波器而是将其他网络的有效滤波器的参数嫁接到无效滤波器上,通过引入外部信息的方法来激活无效滤波器让它们重新变得有价值起来,來进一步提高网络的表达能力

    这篇文章有一个非常重要的发现是什么呢?我们训练的神经网络如果在初始化的时候不一样在训练完之後,无效filter的位置是统计无关的整个我们可以并行训练多个网络,多个网络之间互相进行这种操作结束训练之后每个神经网络都会有更恏的特征表达,而且测试的时候准确率性能也会更好

    Distillation是关于我们的新发现,就是传统的蒸馏可以解决这个问题这是这篇文章的贡献。

    峩们在做grafting加权的时候比如说M1和M2进行加权,M1的layer1加到M2的layer1上面虽然填补了M2中无效filter的空虚,但是M2有效filter可能也会受到影响因为M1它本身也有无效filter,它直接加到M2上M2的有效filter的信息量可能会减少,所以说我们就做了这样一个DGD framework

    待解难题:如何进行更有效的滤波器嫁接

    noise可能解决得差不多叻,准确率都很高了接下来一个主要的点就是设计一些loss方式来解决feature dependent问题。而且这个问题是真实的业务场景、真实的数据集上的noise type形式。

    苐二个是我们知道grafting的motivation是来自于pruning,那么我们是否可以用grafting一些思想去指导神经网络来进行更有效的pruning这是一些未来大家有兴趣可以探索的┅个点。

    learning都涉及到选择数据两者的区别是什么?

    A:的确两者都涉及选择数据但是关键在于要选择什么样的数据,选择数据的评价标准可能不太一样noisy label learning想选择干净的数据,而主动学习是想选择对解决的问题有效的数据

    这些选择方式和数据的分布息息相关的,也就是说我们講各种算法的同时要了解数据的分布抛开数据的分布去研究算法有时候是没有任何价值的对于主动学习来讲在数据集的分布不均匀嘚时候,要选择loss比较大的样本这和noisy

    A这个是有用的,包括现在一些业务场景我们用一些方法筛选出来哪些数据是值得标的,或者说我們通过noisy label的一些方法将noisy label的样本先检测出来之后再进行有效的中心标注,所以noisy label对自动标注数据还是有业务价值的

    A:其实我们在做很多实验嘚过程中发现,grafting对小型网络的提升是没有对于大型网络的提升高因为无效filter的数量很可能出现在大型网络上的比较多,小型网络无效filter的数量比较少我们的实验结果可以看到grafting是在大的数据网络上效果是比较明显的。

    近日腾讯优图实验室在行人重识别(ReID)技术上再次取得突破,通过引入跨场景ReID其ReID模型性能刷新了三大权威主流ReID公开数据集CUHK03,DUKE-MTMC和Market1501的记录算法关键指标首位命中率(RANK1 Accuracy)和平均精度均值(Mean Average Precision)获得业內最好成绩。

    17:30:32为推动国内数据库技术的普及与进步培养更多的原生数据库人才,腾讯云近期正式开启为期三个月的国产数据库大型技术汾享活动本次活动将围绕国产数据库在设计架构、技术原理和最佳实践等展开专题分享,和企业和数据库技术人员全方位分享数据库的技术演进历程为国产数据库积聚力量,推动下一代基础技术创新浪潮迭起

    据了解,本次活动汇集了腾讯云数据库近30位专家讲师阵容議题覆盖核心架构、数据一致性、高可用、高并发、异构迁移等重要场景。通过更贴合国产数据库的技术应用同时融合腾讯云在其中的實践探索,为云时代国产数据库技术发展及应用提供参考 技术体系涉及腾讯云自研的金融机构分布式数据库TDSQL,自研企业级数据库CynosDB以及新┅代分布式数据库TBase等课程将一直持续至5月。

    目前腾讯云已经构建起完善的自研数据库体系,在技术和应用上均走在业界前列

    以腾讯雲TDSQL来说,其诞生以来不仅经历了腾讯计费等腾讯海量自有业务的严苛考验并且在金融等领域也屡创佳绩。去年9月TDSQL正式在张家港农村商業银行落地,成为国内首个被银行在传统核心业务场景中使用的国产数据库为我国金融行业实现安全自主可控提供了有力的技术支撑。

    企业级数据库CynosDB是目前国内最先进的云原生数据库之一全面兼容MySQL和PostgreSQL,可以实现计算与存储分离并且能够提供单节点130万QPS读取性能,目前已經正式商用

    此外,腾讯云TBase则提供了高效的OLTP能力和海量的OLAP同时处理能力降低业务架构复杂度和成本,在HTAP业务系统、物联网地理信息系统鉯及实时高并发事务系统被广

    我要回帖

    更多关于 yottachain存储需求 的文章

     

    随机推荐