谁知道饥饿游戏插曲上吊树2里 自我评估那块为什么女主做了个上吊的机器人

多边形,第四次尝试补番的记录楼
―― 晋江文学城网友交流区
主题:多边形,第四次尝试补番的记录楼[389]
你有倾向吗?我先推几个剪辑给你戴滤镜?
№1&☆☆☆= =于 15:52:25留言☆☆☆ 
第一集的话至少撑到丹尼尔回收那里,有一点点黑的意味
№2&☆☆☆= =于 15:52:35留言☆☆☆ 
万事开头难……总算把第一集看完了,之前都是因为看不懂它到底要表达个什么才弃掉的,这次开了弹幕好像要好一点,有几个弹幕好好笑哈哈哈哈哈哈哈哈,搬运机器人也长得有点可爱,就是还是不明白他们在干嘛otz,那个绿毛长得不错!接下来努力看第二集
№3&☆☆☆= =于 16:06:05留言☆☆☆ 
你有倾向吗?我先推几个剪辑给你戴滤镜?№1 ☆☆☆= =于 15:52:25留言☆☆☆不用了,谢谢解解,我亲友先前就给我带了滤镜…
№4&☆☆☆= =于 16:06:40留言☆☆☆ 
哇,这个白毛的声音好好听!!!!
№5&☆☆☆= =于 16:08:12留言☆☆☆ 
丹尼尔日常(1/1)
№6&☆☆☆= =于 16:10:37留言☆☆☆ 
哇,这个白毛的声音好好听!!!!№5 ☆☆☆= =于 16:08:12留言☆☆☆丹尼尔吗?终于有夸他声音的了!
№7&☆☆☆= =于 16:11:11留言☆☆☆ 
呃这句退场说得有点尬…怎么那么多人刷xx正式入坑请多指教,更尬了
№8&☆☆☆= =于 16:14:16留言☆☆☆ 
丹尼尔日常(1/1)№6 ☆☆☆= =于 16:10:37留言☆☆☆xs,丹尼尔领进门,修行靠个人
№9&☆☆☆= =于 16:14:21留言☆☆☆ 
哇,这个白毛的声音好好听!!!!№5 ☆☆☆= =于 16:08:12留言☆☆☆丹尼尔吗?终于有夸他声音的了!№7 ☆☆☆= =于 16:11:11留言☆☆☆他非常男神音啊!
№10&☆☆☆= =于 16:14:31留言☆☆☆ 
呃这句退场说得有点尬…怎么那么多人刷xx正式入坑请多指教,更尬了№8 ☆☆☆= =于 16:14:16留言☆☆☆弹幕挺尬的,你自己看着关
№11&☆☆☆= =于 16:14:55留言☆☆☆ 
哇他真的是我的菜啊,叫丹尼尔是吧,有cp吗(期待脸
№12&☆☆☆= =于 16:16:10留言☆☆☆ 
真的是个泡面番啊,每一集都这么短,感觉还没开始就在放片尾曲了……丹尼尔好喜欢!然后金好像是标准热血少年漫金发蓝眼的小太阳型男主,据说后面会黑化?我亲友安利的时候让我带着主角凸滤镜看所以我决定去搜搜金丹再看第三集
№13&☆☆☆= =于 16:23:10留言☆☆☆ 
哇他真的是我的菜啊,叫丹尼尔是吧,有cp吗(期待脸№12 ☆☆☆= =于 16:16:10留言☆☆☆没有……最热是zzs……
№14&☆☆☆= =于 16:24:33留言☆☆☆ 
真的是个泡面番啊,每一集都这么短,感觉还没开始就在放片尾曲了……丹尼尔好喜欢!然后金好像是标准热血少年漫金发蓝眼的小太阳型男主,据说后面会黑化?我亲友安利的时候让我带着主角凸滤镜看所以我决定去搜搜金丹再看第三集№13 ☆☆☆= =于 16:23:10留言☆☆☆……咳,好吧,lz你带个固码如何
№15&☆☆☆= =于 16:25:01留言☆☆☆ 
真的是个泡面番啊,每一集都这么短,感觉还没开始就在放片尾曲了……丹尼尔好喜欢!然后金好像是标准热血少年漫金发蓝眼的小太阳型男主,据说后面会黑化?我亲友安利的时候让我带着主角凸滤镜看所以我决定去搜搜金丹再看第三集№13 ☆☆☆= =于 16:23:10留言☆☆☆你亲友估计是饿着了想让拖你一起入坑,xs
№16&☆☆☆= =于 16:25:20留言☆☆☆ 
。。。主角凸,lz你基友对你是真爱
№17&☆☆☆= =于 16:25:35留言☆☆☆ 
真的是个泡面番啊,每一集都这么短,感觉还没开始就在放片尾曲了……丹尼尔好喜欢!然后金好像是标准热血少年漫金发蓝眼的小太阳型男主,据说后面会黑化?我亲友安利的时候让我带着主角凸滤镜看所以我决定去搜搜金丹再看第三集№13 ☆☆☆= =于 16:23:10留言☆☆☆你基友是金凸解解吗,我基友也是(
№18&☆☆☆= =于 16:26:27留言☆☆☆ 
你这位基友真的想让你入坑吗
№19&☆☆☆= =于 16:26:46留言☆☆☆ 
你要想戴主角凸滤镜一定要去看漫画啊!!!!甚至建议先看漫画再看动画
№20&☆☆☆= =于 16:26:59留言☆☆☆ 
解解你这位基友………………(欲言又止)
№21&☆☆☆= =于 16:27:19留言☆☆☆ 
……主角凸……LZ我曾经三次打开动画然后失败……结果去补了漫画,感觉漫画节奏和故事发展好一点,然后再来看动画(毕竟动画糖多……
№22&☆☆☆= =于 16:27:40留言☆☆☆ 
qswl,金丹才三十几个tag!因为她从来都是主角攻粉所以……
№23&☆☆☆今天补番成功了吗于 16:27:53留言☆☆☆ 
qswl,金丹才三十几个tag!因为她从来都是主角攻粉所以……№23 ☆☆☆今天补番成功了吗于 16:27:53留言☆☆☆你可以看下金瑞,漫画里有瑞不陪玩金就直接黑化的桥段,一千多的tag,比金丹好多了
№24&☆☆☆= =于 16:29:14留言☆☆☆ 
……主角凸……LZ我曾经三次打开动画然后失败……结果去补了漫画,感觉漫画节奏和故事发展好一点,然后再来看动画(毕竟动画糖多……№22 ☆☆☆= =于 16:27:40留言☆☆☆我我我……我还是想先看一下动画,毕竟看动画感觉不太用脑子可以边打游戏边补我应该可以的,我一直比较吃这种攻……大概
№25&☆☆☆今天补番成功了吗于 16:29:20留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?
№26&☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26 ☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆不,并不是
№27&☆☆☆= =于 16:33:55留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26?☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆让我笑一会儿雷与搬运人
№28&☆☆☆= =于 16:34:18留言☆☆☆ 
前几集我是靠着对裁判球的爱坚持下来的……
№29&☆☆☆= =于 16:36:36留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26 ☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆噗,不是了,雷对面是操作人
№30&☆☆☆= =于 16:37:32留言☆☆☆ 
丹尼尔第一定律真的笑死我了
№31&☆☆☆= =于 16:37:36留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26 ☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆噗,不是了,雷对面是操作人№30 ☆☆☆= =于 16:37:32留言☆☆☆雷球is rio(x是搬运人啦
№32&☆☆☆= =于 16:40:02留言☆☆☆ 
(收起)算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26 ☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆噗,不是了,雷对面是操作人№30 ☆☆☆= =于 16:37:32留言☆☆☆雷球is rio(x是搬运人啦<(显示全部)br>№32 ☆☆☆= =于 16:40:02留言☆☆☆我怎么打成操作人的_(:з」∠)_
№33&☆☆☆= =于 16:41:14留言☆☆☆ 
其实感觉场景做的还可以哎,主角被齐塔瑞鲸鱼(有点像)追的时候时候那片迷宫看起来不错,颜色也好看红蓝姐弟的冲天揪也太大了吧,真的是呆毛吗……终于看到基友说的格瑞了!嗯配色挺时髦不过嘉德罗斯也太像猴哥了吧???金箍都有啊他手下那个雷德好可爱!!我好喜欢这种蒙眼的红马尾!而且他脑袋上还戴了像蝴蝶结一样的饰品!感觉像一对耳朵23333,还欺负裁判球!
№34&☆☆☆今天补番成功了吗于 16:48:12留言☆☆☆ 
出现了,雷德第二定律
№35&☆☆☆= =于 16:49:29留言☆☆☆ 
其实感觉场景做的还可以哎,主角被齐塔瑞鲸鱼(有点像)追的时候时候那片迷宫看起来不错,颜色也好看红蓝姐弟的冲天揪也太大了吧,真的是呆毛吗……终于看到基友说的格瑞了!嗯配色挺时髦不过嘉德罗斯也太像猴哥了吧???金箍都有啊他手下那个雷德好可爱!!我好喜欢这种蒙眼的红马尾!而且他脑袋上还戴了像蝴蝶结一样的饰品!感觉像一对耳朵23333,还欺负裁判球!№34 ☆☆☆今天补番成功了吗于 16:48:12留言☆☆☆来了,雷德定律
№36&☆☆☆= =于 16:52:29留言☆☆☆ 
出现了,雷德第二定律№35 ☆☆☆= =于 16:49:29留言☆☆☆xs
№37&☆☆☆= =于 16:53:46留言☆☆☆ 
算了还是继续看第三集吧,op听了几次还觉得不错,蛮有抖腿感的Op那个夹道欢迎面对面的场景就是官配吗?№26?☆☆☆今天补番成功了吗于 16:32:55留言☆☆☆让我笑一会儿雷与搬运人№28 ☆☆☆= =于 16:34:18留言☆☆☆!!!我都没看清还有搬运人,只看到突然矮下去一块!我暂停了看看……
№38&☆☆☆今天补番成功了吗于 16:54:06留言☆☆☆ 
几个主要站位还是有点对应的,他雷是个意外
№39&☆☆☆= =于 16:55:54留言☆☆☆ 
天啦雷德还涂了黑色的指甲油!
№40&☆☆☆今天补番成功了吗于 16:56:51留言☆☆☆ 
23333又一位被雷德戳中的解解啊好吧我也喜欢他
№41&☆☆☆= =于 16:58:19留言☆☆☆ 
出现了,雷德第二定律№35 ☆☆☆= =于 16:49:29留言☆☆☆红红火火恍恍惚惚哈哈哈看到以前的我了
№42&☆☆☆= =于 16:58:48留言☆☆☆ 
几个主要站位还是有点对应的,他雷是个意外№39?☆☆☆= =于 16:55:54留言☆☆☆伸手指空气惹。
№43&☆☆☆= =于 17:03:38留言☆☆☆ 
丹尼尔第一雷德第二和主角攻定律…………这双眼睛见证了太多这样的补番lz,怜爱
№44&☆☆☆= =于 17:04:56留言☆☆☆ 
居然是金凸解解,蹲楼了,解解一定要坚持下去啊!
№45&☆☆☆= =于 17:05:36留言☆☆☆ 
来了,主角出场的典型套路,两个神仙打架,小白从天而降闪亮登场∠( ? 」∠)_果然是热血漫男主役……哈哈哈哈哈哈哈哈金把搬运人的脑袋扯掉了,他怎么那么皮雷德太可爱了,深V开襟,啊……喜欢格瑞踢开金这反应emmmmmmm,挺像我之前磕的某个cp,基友给我概括的是虽然他嘴上说着自己的温柔很昂贵,但对金就是不要钱大放送,果然挺贴切!而且他们是竹马对吧!我要去搜一下金瑞
№46&☆☆☆今天补番成功了吗于 17:06:25留言☆☆☆ 
来了,主角出场的典型套路,两个神仙打架,小白从天而降闪亮登场∠( ? 」∠)_果然是热血漫男主役……哈哈哈哈哈哈哈哈金把搬运人的脑袋扯掉了,他怎么那么皮雷德太可爱了,深V开襟,啊……喜欢格瑞踢开金这反应emmmmmmm,挺像我之前磕的某个cp,基友给我概括的是虽然他嘴上说着自己的温柔很昂贵,但对金就是不要钱大放送,果然挺贴切!而且他们是竹马对吧!我要去搜一下金瑞№46 ☆☆☆今天补番成功了吗于 17:06:25留言☆☆☆来啊lz!!咬着我们黑色小章鱼触手等你
№47&☆☆☆= =于 17:07:54留言☆☆☆ 
懂了,开帖有益于补番,我下次也试试
№48&☆☆☆= =于 17:09:02留言☆☆☆ 
天啊居然是罕见的金凸解解,解解你一定要坚持补完啊蹲楼给你卖安利
№49&☆☆☆= =于 17:11:03留言☆☆☆ 
不愧冷逆xq
№50&☆☆☆= =于 17:12:59留言☆☆☆ 
来了,被天使长和雷德一眼荡魂的又多了一位
№51&☆☆☆= =于 17:14:36留言☆☆☆ 
哇他真的是我的菜啊,叫丹尼尔是吧,有cp吗(期待脸№12 ☆☆☆= =于 16:16:10留言☆☆☆有的有的,银丹银解解吃吗
№52&☆☆☆花式是CP发一年糖于 17:15:33留言☆☆☆ 
想知道动画丹第一定律的情况看到漫画丹之后有什么感想
№53&☆☆☆= =于 17:15:40留言☆☆☆ 
唔不错啊有过千的tag,好像金后面会黑化是吧……我要努力看到他黑化元旦到了,本该是个开开心心的日子。但是英国独立报今天突然发现,互联网上存在着这么一个网站:“我知道你下载了什么”——没错,这就是该网站的名字。海内外的单身狗们顿时一惊。这个网站有什么功能?
功能一:只要你点开该网站,你的种子下载历史就一览无余。雷锋网小编使用 VPN 进入网站,立刻就看到了这个账户的所有下载记录:
该网站截图,显示出小编所用地址的种子下载记录。其中有我们耳熟能详的《生活大爆炸》、《权力的游戏》以及《饥饿游戏》。
功能二:输入任何 IP 地址,就能查询到该地址的下载记录。
以上是小编进入该网站后,所看到的一段英文说明,意为:
“使用其他人的互联网连接(用他们的 WiFi、电脑、手机、平板电脑),来查看他们的种子下载记录。”
觉得这是在诱导人犯罪?相比后面,它还不算什么——这句话后紧跟一个超链接“用特殊生成的链接监视他们”。点开就到了一个新页面,介绍他们最腹黑的功能。
而这就是功能三:你可以给朋友发送一个看起来无害的链接,比如伪装成新闻、知乎或贴吧。对方点开后,该网站会登入他的 IP,向你展示对方的所有下载历史。
很可怕,对不对?当然,这根本不局限于朋友之间的恶作剧,你可以把伪装好的链接发送给任何人。明星?政治人物?只要他点开,就中招了。
目前还不清楚这家网站的背景和动机。独立报猜测,该网站想要向警察以及内容供应商(比如电影发行商)兜售用户下载盗版内容的信息,以进行追查并罚款。但无论客户是谁,这都已经极大威胁了网民隐私。因为不管你下载的内容是什么,即便不是盗版,你的信息也在别人掌握之中,轻易就能获取。
利用 IP 地址追踪下载、上网历史已经不是什么新鲜事,背后的技术也谈不上高大上。但做得这么明目张胆,公然宣称能帮助用户窃取他人隐私信息倒是极少见。
日增加了一闰秒,31日11点59分59秒之后不是2017年,而是59分60秒。增加闰秒在过去几年发生过多次,主要互联网公司都对此已有经验。但云计算公司Cloudflare,它的DNS查询服务由于闰秒bug而导致了5xx错误。
Cloudflare称,闰秒bug影响了部分权威DNS和原点DNS查询。问题从日00:00 UTC开始出现,Cloudflare在一个半小时后开始部署补丁。
http://www.cnbeta.com/articles/572559.htm
一代天后王菲《幻乐一场》演唱会昨晚在上海举行,距离她的上一次演唱会已经过去将近4年,不用说它备受瞩目,黄牛紧盯。如此热门,甚至开唱前就已经上演了一场“票价崩盘”的“戏码”,被质疑过度营销。如果你不想参与这些娱乐圈的日常,同时为自己省下可能是数千元可能是几百元(看是不是崩盘时候买的)的话,还可以选择花30元买一张VR直播的票在家里看。VR不就是让你身临其境嘛。结果,愿望如此美好,现实却如此冰冷。
天后,为什么我看不清你的脸?
花30元看VR直播值不值,如果要简单回答,答案就是:不值。为什么不值可以从两个方面来分析:
首先,体验不好。
VR直播有没有身临其境的感觉呢,答案是:有的,如果你的马赛克脑补能力很强的话。说马赛克是有些夸张,但基本上就是AV画质了,即便是超高清画质,当你用VR观看的时候,也是渣一样的分辨率。
VR直播截屏
演唱会的VR直播点靠近前排的VIP座位,整个直播过程中,即便雷锋网感到自己有生之年竟然可以离天后如此之近,却还是看不清她的脸。而如果真的现场前排,通常是可以的。
除了画质渣,还有许多人抱怨眩晕问题。这主要是由于视频帧率较低,以及手机盒子转头延迟太大造成的。
第二个原因,有更好的选择。
一款产品值不值,是要通过对比来看的。实际上,整个VR直播雷锋网只看了几分钟便觉得实在看不下去了,于是回去腾讯视频看免费的直播。
腾讯视频直播截屏
只有720p的视频直播感觉好多了,而且如果你花25元买一个月的VIP会员,还能获得1080p的画质,天后的脸从未如此清晰。比起花30元去看VR直播,这个会员感觉值多了。
为什么VR直播体验这么渣?
为这次王菲演唱会VR直播操刀的是影视/舞台特效领域数一数二的公司数字王国,近年来开始押注虚拟现实。该公司2015年底为《康熙来了》最后一集录制了VR版节目,同时进行过多场演唱会VR直播和VR版MV拍摄。而提供VR流媒体直播服务的微鲸VR实力同样不容小觑。
那么为什么VR直播的体验还是这么渣呢?实际上,有很多限制条件不是这两家公司可以控制的。
1、有4K信源却没有4K头显。
针对这次VR直播,数字王国使用了拥有8个摄像头的ZUES全景相机,支持4K视频直播,8K全景缝合影像,75fps高帧率。同时还有一款Kronos全景相机辅助拍摄。
按道理这些参数都已经很厉害了,但问题是,即便有4K信源,目前绝大多数VR头显都没有4K屏幕。观看VR直播的主要设备是手机盒子,而现在大部分的旗舰手机也只是上到2K屏,更多的还是1080p。
2、VR让高清画质变AV画质。
即便有4K的信源和4K的头显,VR也不会像普通屏幕那样高清,因为我们在VR里看到的只是4K的一小部分。
视频是360度的,而头显通常视场角在90-120度之间,这意味着我们能看到的画面只有整个4K画面的1/4到1/3,而这还是整个视野,眼睛真正聚焦的区域要小得多。最终导致你真正看到的画面可能只剩下240p了。
其实目前全景相机要想提供8K、16K的画质,VR头显提升到8K的分辨率并不难,但还有更难突破的问题。
谢霆锋一边吃饭一边看王菲演唱会VR直播,不知道他坚持了多久,图片来源:微博
3、用户带宽受限
即便有4K信源和4K头显,大部分人的带宽也达不到4K直播的要求。根据全球最大的CDN服务商Akamai公司的统计,2015年中国平均网速只有3.7Mbps,而4K流媒体直播需要需要达到15.6Mbps。
4、VR拍摄无法变焦
如果只是对着现场拍而不变焦的话,普通相机直播拍出的画面同样会看不清人脸。而普通的直播不仅可以 对准歌手的脸拉近,相机还可以移动并切换多个机位。
而VR拍摄不仅无法变焦,通常位置也是固定的,虽然可以安放多个机位,但也不能太多,并且不能过度频繁地切换,不然会非常有损沉浸感。
未来,光场VR相机加上注视点渲染技术,或许可以缓解部分问题。
VR直播如何更吸引人?
话又说回来,虽然VR直播问题多多,对于新技术大家还是要多点宽容,各方都在很努力地将它做得更好。
如何让VR直播更吸引人呢?这些是可以参考的方法,预计也会是未来的发展方向。
1、更高清的信源和头显。想要清晰,内容和屏幕都要更高分辨率。此外,对于内容,还可以加入3D、HDR甚至是光场等技术,当然,头显也要相应地支持。
2、更高的网络带宽和更好的视频压缩及传输技术。网络带宽的提升基本是可预期的,很难有爆发式的进步,视频压缩及传输技术则可以有更大的想像空间。今年Facebook就推出过一项算法可以将VR视频压缩80%大小,并几乎不损害画面质量。这可以让用户在低带宽情况下获得更高的视频质量。
3、VR音频。前文没有提到的一个VR内容的重要优势就是VR音频。画面的沉浸感只是一部分,画面和声音的结合会让你感觉更加身临其近。有了VR音频,天后不仅离你很近,你还能感觉她在对着你说话。
4、互动以及其它技术。现在的直播都会加入很多互动元素,但在VR里互动起来就比较难了,特别是手机盒子,未来更多交互方式的加入,比如Daydream已经有了一款体感手柄,会让整个直播的体验有很大提升。另外,VR毕竟还是新兴产品,还有很多实验中的新技术,例如全息影像传送,未来某一天或许会实 现,至少已经在尝试了。
目前,VR直播与普通视频直播的体量相差很大。在微鲸VR上,雷锋网开始看时有6万(对VR直播来说已经相当高了),而腾讯视频此时有600多万;后面VR直播升至7万,视频直播观看人数则达到1000多万。
这次王菲演唱会的VR直播或许效果未必如人意,却可以让更多的人了解到VR,从这个角度看也不是坏事。2016年是VR元年,未来的路还长着呢。
即将过去的2016年,全球人工智能领域的发展迎来了一波新的高潮。无论是技术精英还是普通百姓、企业精英亦或国家领袖,都将目光投向了人工智能、深度学习、自动驾驶等一系列前沿技术。
下面就来看看2016年全球人工智能发展的十大标志事件。
本文转载自创新工场微信公众号
1.AlphaGo围棋对弈战胜李世石
今年3月,由Google DeepMind主导开发的人工智能AlphaGo在完胜欧洲围棋冠军樊麾二段后,又在五番棋中以4-1的大比分击败围棋名宿、韩国国手李世石九段,震惊全球。DeepMind创始人之一德米斯·哈萨比斯表示,这一时刻比科学家们预想的早来了十年。
图片来源:Getty Images
AlphaGo利用了蒙特卡洛树状搜索与两个深度神经网络相结合的方法,以估值网络来评估大量落子间的优劣,而以行棋网络来选择落子。在这种设计下,电脑可以结合树状图的长远推断,又可像人类的大脑一样自发学习进行直觉训练,以提高棋力。
围棋长久以来被视为棋牌运动中“人类智慧的最终堡垒”,而AlphaGo的胜利,让社会大众重新认识到了人工智能发展的潜力和前景。
截至12月,接受了韩国棋院名誉职业九段头衔的AlphaGo,职业围棋等级分已经达到3598分,世界排名高居第二,仅次于中国的柯洁九段。而据韩媒报道,中国棋院表示已经收到了来自AlphaGo的“挑战书”,正在研究出赛棋手的人选,2017年围棋界的巅峰对决一触即发。
2.白宫发表人工智能战略报告与规划
日,美国白宫发布了题为《准备迎接人工智能未来》的战略报告,同时发布的还有美国《国家人工智能研究发展战略计划书》。
图片来源:Whitehouse.gov
这两份文件的出台,是奥巴马政府近年来大力推进包含人工智能产业在内新兴技术产业、并与硅谷科技界紧密合作沟通的结果。Quartz评论说,这份报告与战略计划显示出,白宫并不急于对人工智能的研发进行大规模监管,而是会在交通、金融等垂直领域先行制定应用标准。
而在唐纳德·特朗普当选美国总统后,白宫于12月20日跟进发布了《人工智能、自动化与经济》战略报告,指出人工智能将对生产率增长带来积极影响,不应当因其对劳动力市场现有秩序的潜在威胁,遏制人工智能的发展有分析认为,这是奥巴马政府离任前对特朗普的最后提醒。
除白宫之外,今年多国政府也都发布了相关发展战略与计划。例如日本《再兴战略2016》将人工智能发展列为十大复兴战略之首,中国政府《“互联网+”人工智能三年行动实施方案》则提出到2018年建成千亿元级别人工智能市场等。
创新工场董事长李开复认为,在人工智能领域,中国有很大的优势。首先,中国教育体系培育出的人才有非常优秀的理工、数学基础。世界人工智能论文作者中,43%是中国人。其次,中国社会可以快速训练勤奋的年轻人。人工智能需要的并非培养一个火箭专家——那是需要数十年积累才能做的事情。一名特别优秀的数学和计算机专业应届毕业生,经过创新工场AI工程院6个月的培训,就可以进入人工智能行业,成为合格的人工智能工程师。再者,中国市场有很多传统企业需要通过人工智能,实现产品升级。此外,中国政府对人工智能的政策约束较少。
(加入创新工场AI工程院,请投递简历至)
3.全球人工智能企业融资额再创新高
自2012年以来,全球人工智能领域收到的投资数量就一直呈现上升趋势,2016年也是如此。今年全球人工智能产业的投资情况,创下了五年以来的历史新高。
图片来源:CB Insight
据CB Insight统计,今年全球人工智能领域融资额有望突破50亿美元,比2015年增长了超过60%。就单季度情形来看,今年第二季度的3个月之内,全球人工智能企业就在155次融资当中募得了超过16.8亿美元,这一数字也创下了历史新高。
国内方面形势也同样乐观。《乌镇指数:全球人工智能发展报告2016》显示,中国人工智能投资在2016年上半年就达到了月6亿美元的规模,其中第2季度更是达到了创纪录的4.70亿美元,显示出中国在人工智能领域的投资明显加快,紧跟在美国、西欧等发达国家之后。
4.华人AI研究贡献占据全球份额近一半
不仅是企业投资,华人在人工智能领域的科学研究水平和影响力也在与日俱增。
美国白宫今年10月发布的人工智能战略报告就指出,自2014年起,深度学习领域中国作者的发文数与含引用文章数均已超过美国,成为世界第一。预计2016年,中国作者的科研文章发表数量,将超过全球文章发表数量的一半。
创新工场人工智能工程院副院长王咏刚,则以影响力较高的全球核心期刊为目标,核算了华人科学家在人工智能领域整体上的科研贡献率。占全球高端人工智能科研人才五分之一的华人,在年间贡献了近三成的顶尖期刊文章,和31.8%的被引用频次。
而就年度成绩来看,华人AI科学家在全球贡献中的占比更是逐年攀升,2015年高端期刊文章总数达到了42.8%,引用总数更是超过一半,达到了55.8%。就此而言,华人已经处于了人工智能研究的领先地位,占据了人工智能科研世界的半壁江山。
5.五大科技巨头组超级AI 联盟
今年9月21日,Alphabet(Google、DeepMind)、IBM、Facebook、亚马逊和微软五家科技巨头宣布组成人工智能联盟“Partnership on AI”,以求在科研领域建立良性的竞争与合作关系。
图片来源:TechCrunch
这一人工智能联盟以“为人民和社会谋福祉”为口号,表示其核心使命是在巨头之间开展行业标准和规范讨论,包括探讨人工智能促进社会中的变革方式。此外,人工智能发展伦理、包容性和隐私等,也是这个联盟的重要研究课题。
DeepMind联合创始人穆斯塔法·苏莱曼希望,这个联盟能够产生强大的聚集效应:“我们希望受到人工智能影响的相关各方,都能参与到这一联盟当中来。”
目前,苹果、Twitter、英特尔和百度等人工智能领域的其他巨头企业,都尚未加入这一联盟。尽管有消息称苹果对该项目“充满热情”,但并未见到苹果采取任何具体行动。
6.特斯拉自动驾驶汽车首次致死车祸
今年5月7日,一辆行驶于美国佛罗里达州的特斯拉汽车在开启“Autopilot自动驾驶”功能时,首次发生了致人死亡的重大事故,导致美国交通当局介入调查,也引发了大众对于未成熟的自动驾驶上路的担忧。
图片来源:ABC News
这场事故由一辆撞上白色大型拖车的特斯拉Model S汽车引发,导致Model S车主,40岁的乔舒亚·布朗身亡。特斯拉在声明中指出,拖车高度与颜色、当时的天气情况、以及道路上行驶的位置等一系列罕见的偶发因素,导致了这场事故的发生。
尽管“Autopilot”系统在去年年底就以公众测试版的名义进行了发布,事故发生前也安全行驶了2亿多公里,但这一尚处于试用阶段的技术是否足以达到上路标准,还是引发了各国监管机构的注意。
而据中国中央电视台9月14日报道,今年1月20日的京港澳高速河北邯郸段上,一辆特斯拉Model S汽车发生了严重追尾事故,导致23岁的驾驶员高雅宁当场死亡。但特斯拉至今未能查明该事故车辆是否开启了“Autopilot”系统。
7.微软在话语识别能力上超越人类
人工智能在垂直领域中又一次战胜人类,这次的主题则是话语识别。尽管人工智能助手已经开始大量使用语音识别技术,但在较为复杂的现实应用面前仍旧不甚理想。
但在今年10月,微软研究院人工智能科研小组的科学家发表了一篇学术报告,宣布其语音识别系统ASR的速记错误率,首次低于人类的专业打字员,错误率仅有5.9%。
微软团队使用了CNTK,一个经历了多年技术积累的开源本地化深度学习系统训练ASR。研究团队使用了行业标准的Switchboard语音测试。同时,微软也使用了CallHome等其他环境下的语音识别/速记测试。而在这些测试中,ASR的语音识别结果也要好于专业速记员。
8.Amazon GO展现智能商业新形态
线上零售业巨头亚马逊在今年12月5日,宣布将于明年年初推出基于人工智能技术的线下商店 Amazon GO,意图彻底变革线下商业模式。
在亚马逊发布的宣传视频中,消费者进入商店时需扫描二维码通过闸机,从货架上取货等动作会被摄像头和传感器捕捉,在后台将商品“加入购物车”。消费者离店时无需排队,系统会自动结算商品,并通过亚马逊账户扣款。
亚马逊表示,这一商店综合应用了计算机视听觉、传感器识别和深度学习算法等人工智能技术,实时追踪店内顾客的行为,以实现实时商品确认和结算。
亚马逊已经在美国西雅图开设了面向内部员工的试验店。预计这一技术将于2017年早些时候开始公开应用。
9.人工智能改善癌症诊断疗法
深度计算已经开始被用于疑难疾病诊断了。今年8月4日,日本NHK电视台报道称,东京大学医学研究所通过应用IBM的人工智能平台“沃森”,仅用时10分钟就诊断出了资深医师也难以判别的特殊白血病。
图片来源:NHK
东京大学自去年7月开始与IBM合作,通过让“沃森”学习超过2,000万篇医学论文和1,500万条以上的药品知识,建立医学诊疗的大数据神经网络,之后再用于临床研究。
本次报道的60余岁的女性,最初被人类医师诊断为急性骨髓性白血病,但经过数月的抗癌治疗后情况却不见好转。而“沃森”在读取了患者的遗传信息之后,给出了“继发性白血病”的更加具体的病情诊断。在调整了治疗方法后,这位女性在数月后成功康复出院。
截至2016年3月,“沃森”与东京大学共为41名患者提供了协助治疗的诊断或相关信息。东京大学医学研究所副所长东条有伸表示:“人类医师花费两周时间完成的工作,‘沃森’只需要10分钟。我们希望以后能够将‘沃森’广泛应用于癌症治疗。”
10.扎克伯格发布AI管家“贾维斯”
自今年1月Facebook CEO马克·扎克伯格宣布开始制造人工智能管家之后,外界对其的关注就没有消停。
先是扎克伯格将这一人工智能命名为“贾维斯”——这与超级英雄钢铁侠在故事中拥有的人工智能管家同名;后有今年10月钢铁侠的扮演者小罗伯特·唐尼同意为“贾维斯”配音,直到今年年底,扎克伯格最终放出了“贾维斯”的原型应用视频。
在视频中,“贾维斯”通过语音识别方式识别用户指令,并通过摄像头、智能家居等外接设备,实现对家庭硬件的自动操控、工作管理等。同时“贾维斯”还具备人机对话的能力,甚至还可以说汉语。
但在面对媒体的演示时,“贾维斯”在语音识别上的表现却差强人意,其中一条指令甚至被迫重复了四次。这意味着现实场景中的语音识别功能仍然未能充分整合进“贾维斯”当中,而推出大众版产品,则要等到更久以后了。
扩展阅读:
Data Science Central 网站主编、有多年数据科学和商业分析模型从业经验的 Bill Vorhies 曾撰文指出,过去一年人工智能和深度学习最重要的发展不在技术,而是商业模式的转变——所有巨头纷纷将其深度学习 IP 开源。 毋庸置疑,“开源浪潮”是 2016 年人工智能领域不可忽视的一大趋势,而其中最受欢迎的项目则是谷歌的深度学习平台 TensorFlow。下文就从 TensorFlow 说起,盘点 2016 年 AI 开源项目,最后统计了 Github 最常用深度学习开源项目 Top 50。
谷歌开源:围绕 TensorFlow 打造深度学习生态圈
1. Google 第二代深度学习引擎 TensorFlow 开源
2015 年 11 月,谷歌开源深度学习平台 TensorFlow。2016 年 4 月,谷歌推出了分布式 TensorFlow。现在,TensorFlow 已经成为业内最受欢迎的深度学习平台之一。
2. 谷歌开源全球最精准语言解析器 SnytaxNet
2016 年 5 月 13 日,Google Research 宣布,世界准确度最高的自然语言解析器 SyntaxNet 开源。谷歌开源再进一步。据介绍,谷歌在该平台上训练的模型的语言理解准确率超过 90%。SyntaxNet 是一个在 TensoFlow 中运行的开源神经网络框架,提供自然语言理解系统基础。谷歌公开了所有用用户自己的数据训练新 SyntaxNet 模型所需要的代码,以及谷歌已经训练好的,可用于分析英语文本的模型 Paesey McParseface。
Paesey McParseface 建立于强大的机器学习算法,可以学会分析句子的语言结构,能解释特定句子中每一个词的功能。此类模型中,Paesey McParseface 是世界上最精确的,谷歌希望它能帮助对自动提取信息、翻译和其他自然语言理解(NLU)中的应用感兴趣的研究者和开发者。
3. 谷歌推出 Deep&Wide Learning,开源深度学习 API
2016 年 6 月 29 日,谷歌推出 Wide & Deep Learning,并将 TensorFlow API 开源,欢迎开发者使用这款最新的工具。同时开源的还有对 Wide & Deep Learning 的实现,作为 TF.Learn 应用程序接口的一部分,让开发者也能自己训练模型。
4. 谷歌开源 TensorFlow 自动文本摘要生成模型
2016 年 8 月 25 日,谷歌开源了 TensorFlow 中用于文本信息提取并自动生成摘要的模型,尤其擅长长文本处理,这对自动处理海量信息十分有用。自动文本摘要最典型的例子便是新闻报道的标题自动生成,为了做好摘要,机器学习模型需要能够理解文档、提取重要信息,这些任务对于计算机来说都是极具挑战的,特别是在文档长度增加的情况下。
5. 谷歌开源图像分类工具 TF-Slim,定义 TensorFlow 复杂模型
2016 年 8 月 31 日,谷歌宣布开源 TensorFlow 高级软件包 TF-Slim,能使用户快速准确地定义复杂模型,尤其是图像分类任务。自发布以来,TF-Slim 已经得到长足发展,无论是网络层、代价函数,还是评估标准,都增加了很多类型,训练和评估模型也有了很多便利的常规操作手段。这些手段使你在并行读取数据或者在多台机器上部署模型等大规模运行时,不必为细节操心。此外,谷歌研究员还制作了 TF-Slim 图像模型库,为很多广泛使用的图像分类模型提供了定义以及训练脚本,这些都是使用标准的数据库写就的。TF-Slim 及其组成部分都已经在谷歌内部得到广泛的使用,很多升级也都整合进了 tf.contrib.slim。
6. 谷歌开源大规模数据库,10 亿+数据,探索 RNN 极限
2016 年 9 月 13 日,谷歌宣布开源大规模语言建模模型库,这项名为“探索 RNN 极限”的研究今年 2 月发表时就引发激论,如今姗姗来迟的开源更加引人瞩目。研究测试取得了极好的成绩,另外开源的数据库含有大约 10 亿英语单词,词汇有 80 万,大部分是新闻数据。这是典型的产业研究,只有在谷歌这样的大公司才做得出来。这次开源也应该会像作者希望的那样,在机器翻译、语音识别等领域起到推进作用。
7. 谷歌开源 TensorFlow 图说生成模型,可真正理解图像
2016 年 9 月 23 日,谷歌宣布开源图说生成系统 Show and Tell 最新版在 TensorFlow 上的模型。该系统采用编码器-解码器神经网络架构,分类准确率达 93.9%,在遇到全新的场景时能够生成准确的新图说。谷歌表示,这说明该系统能够真正理解图像。
8. 谷歌开源超大数据库,含 800 万+视频
2016 年 9 月 28 日,谷歌在官方博客上宣布,将含有 800 万个 Youtube 视频 URL 的视频数据库开源,视频总时长达到了 50 万个小时。一并发布的还有从包含了 4800 个知识图谱分类数据集中提取的视频级别标签。这一数据库在规模和覆盖的种类上都比现有的视频数据库有显著提升。例如,较为著名的 Sports-1M 数据库,就只由 100 万个 Youtube 视频和 500 个运动类目。谷歌官方博客上说,在视频的数量和种类上,Youtube-8M 代表的是几乎指数级的增长。
9. 谷歌发布 Open Images 图片数据集,包含 900 万标注图片
2016 年 10 月 1 日,继前天发布 800 万视频数据集之后,谷歌又发布了图片数据库 Open Images,包含了 900 万标注数据,标签种类超过 6000 种。谷歌在官方博客中写到,这比只拥有 1000 个分类的 ImageNet 更加贴近实际生活。对于想要从零开始训练计算机视觉模型的人来说,这些数据远远足够了。就在 12 月,谷歌还开源了 Open Images 并行下载工具的脚本,5 天速度最高超过 200 M。
10. DeepMind 开源 AI 核心平台 DeepMind Lab(附论文)
2016 年 12 月 5 日,DeepMind 宣布将其 AI 核心平台 DeepMind Lab 开源。DeepMind 实验室把全部代码上传至 Github,供研究人员和开发者进行实验和研究。DeepMind Lab 这一平台将几个不同的 AI 研究领域整合至一个环境下,方便研究人员测试 AI 智能体导航、记忆和 3D 成像等能力。值得一提的是,这些代码也包括 AlphaGO 的代码,谷歌希望以此增加 AI 能力的开放性,让更多开发者参与 AI 研究,观察其他开发者是否能够挑战并打破 DeepMind 现在的纪录。
Facebook 开源:贯彻理念
1. Facebook 开源围棋引擎 DarkForest
6 个月前,Facebook 将其围棋引擎 DarkForest 开源。现在训练代码已经全部发布。Github 链接:。
2. Facebook 开源文本分类工具 fastText,不用深度学习也可以又快又准
2016 年 8 月 19 日,Facebook AI 实验室(FAIR)宣布开源文本分析工具 fastText。fastText 既可以用于文本分类,又能用于学习词汇向量表征。在文本分类的准确率上与一些常用的深度学习工具不相上下,但是在时间上却快很多——模型训练时间从几天减少到几秒。除了文本分类,fastText 也能被用于学习词语的向量表征,Facebook 称 fastText 比常用的 Word2vec 等最先进的词态表征工具表现都要好得多。
3. Facebook 开源计算机视觉系统 deepmask,从像素水平理解图像(附论文及代码)
2016 年 8 月 26 日,Facebook 宣布开源计算机视觉系统 deepmask,称该系统能“从像素水平理解物体”,Facebook 希望开源能加速计算机视觉的发展。不过,Facebook 并没有在自家产品中使用这些工具,像这样落实到具体应用前就开源,跟通常所说的“开源”有些不同。对此,Facebook 人工智能团队 FAIR 的负责人 Yann LeCun 曾表示,正是因为 FAIR 做基础的、不受制于公司短期效益的研究,才能真正推进人工智能技术发展。
4. Facebook 开源 AI 训练和测试环境 CommAI-env
2016 年 9 月 27 日,Facebook 宣布开放 AI 训练和测试环境 CommAI-env,可以用任何编程语言设置智能体。据介绍,CommAI-env 这个平台用于训练和评估 AI 系统,尤其是注重沟通和学习的 AI 系统。与用强化学习从玩游戏到下围棋都能做的 OpenAI Gym 不同,Facebook 的 CommAI-env 侧重基于沟通的训练和测试,这也是为了鼓励开发人员更好地打造能够沟通和学习的人工智能,呼应该公司的十年规划。Facebook 还表示,CommAI-env 会持续更新,并在成熟后举办竞赛推进 AI 的开发。
在 AI 测试环境方面,Facebook 还开源了 CommNet,这是一个让基于神经网络的代理更好交互、实现合作而研发的模型,与 CommAI-env 配套。12 月,Facebook 还开源了 TorchCraft,在深度学习环境 Torch 与星际争霸之间搭起了桥梁,方便研究人员使用控制器,编写能够玩星际争霸游戏的智能代理。
5. Facebook 贾扬清发文介绍 Caffe2go,手机就能运行神经网络
2016 年 11 月 8 日,Caffe 作者、Facebook 研究员贾扬清在官方网站上发文介绍了新的机器学习框架 Caffe2go,并表示在接下来的几个月将其部分开源。Caffe2go 规模更小,训练速度更快,对计算性能要求较低,在手机上就行运行,已经成为 Facebook 机器学习的核心技术。
1. OpenAI 推出代理训练环境 OpenAI Gym
创立于 2015 年底的非盈利机构 OpenAI 的成立打破了谷歌、Facebook 等巨头霸占 AI 领域的格局,但其创始人、特斯拉 CEO 马斯克多次发表人工智能威胁论。马斯克创立 OpenAI 目的何在?2016 年 5 月 4 日,OpenAI 发布了人工智能研究工具集 OpenAI Gym,用于研发和比较强化学习算法,分析 OpenAI Gym 或可找出马斯克的真正动机。
2. 另一种开源:OpenAI 介绍深度学习基础框架
2016 年 8 月 30 日,OpenAI 研究员在博客发文,结合实例介绍了 OpenAI 进行深度学习研究时采用的基础设施配置,并且提供了相关开源代码。文章激起了很多反响,相对于软硬件开源,OpenAI 从另一个侧面,对深度学习模型的实际部署提供了帮助。
3. OpenAI 重磅发布 AGI 测试训练平台 Universe
2016 年 12 月 4 日,在今年 NIPS 大会召开的前一晚,OpenAI 发布了 Universe,用于训练解决通用问题 AI 的基础架构。据悉,这是一个能在几乎所有环境中衡量和训练 AI 通用智能水平的开源平台,目标是让智能体能像人一样使用计算机。目前,Universe 已经有 1000 种训练环境,由微软、英伟达等公司参与建设。有了 Universe,任何程序都能被接入到 OpenAI Gym 的环境中。很快,OpenAI 还推出了 Mini World of Bits(MiniWoB),这个与 OpenAI Universe 配套的环境基准可以测试代理与常见网页浏览器元素的交互能力,比如按钮、文本框、滑块。
微软开源:CNTK 升级版
根据 Github 2016 年度的《Octoverse 观察报告》,微软不仅是拥有开源项目最多的公司,也是贡献人数最多的公司。
在人工智能方面,微软的开源项目有很多,包括 CNTK 计算网络工具包、DMTK 分布式机器学习工具包,Send2vec 语义相似映射器, 以及 CodaLab 研究平台(基于 Web 的开源平台,旨在通过其在线社区帮助解决数据导向的许多常见问题,从而促进机器学习和高性能计算的研究领域的发展)。
2016 年 10 月 27 日,微软开源深度学习认知工具包 CNTK 升级版,其中最瞩目的功能是增加了 Python 绑定,支持增强学习。新版的 CNTK 性能大幅提升,尤其是在多台机器上处理较大数据集的情况下能高速运行,这种类型的大规模部署对于多 GPU 上的深度学习是不可或缺的,也是开发消费产品和专业产品的必需。
微软研究人员表示,在多服务器间运行的能力是一大进步。CNTK 升级版还包含了一些算法,用于将大规模数据处理的计算消耗降到最低。
1. 百度开源深度学习代码 Warp-CTC 详解
2016 年 1 月 15 日,百度公布了代码 Warp-CTC,能够让 AI 软件运行得更高效。说 Warp-CTC 知道的人可能还少,百度语音识别系统 Deep Speech 2 就是用它搭建的。百度位于硅谷的 AI 实验室主管 Adam Coates 在接受 Re-Work 采访时表示,他们在构建深度语音端对端系统的过程中发明了 Warp-CTC 方法,进而使用 CTC 提高模型的可伸缩性。“由于没有相似的工具,我们决定将其分享给人们。它是一款很实用的工具,可以用到现有的 AI 框架中。现在有很多深度学习的开源软件,但是之前用于训练序列数据的端对端网络一直很慢。我们在 Warp-CTC 上的投入是对“我们坚信深度学习与高性能计算技术(HPC)的结合会有巨大潜力”的一种证明。”
2. 百度开源分布式深度学习平台,挑战 TensorFlow(附教程)
2016 年 8 月 31 日,百度宣布开源深度学习平台 PaddlePaddle。实际上,百度深度学习实验室在几年前就投入 PaddlePaddle 的开发,业内对这个云端托管的分布式深度学习平台赞誉有加:代码简洁、设计干净,没有太多抽象……PaddlePaddle 对于序列输入、稀疏输入和大规模数据的模型训练有着良好的支持,支持 GPU 运算,支持数据并行和模型并行,仅需少量代码就能训练深度学习模型,大大降低了用户使用深度学习技术的成本。
3. 百度公开硬件基准 DeepBench,推动深度学习专用芯片研发竞争
2016 年 9 月,百度发表论文,开源 DeepBench 基准测试,AI 研究者和芯片制造商可以用它测试不同的芯片运行软件时的性能,尤其是哪款硬件加速深度学习性能最好。目前 DeepBench 只能测试深度学习的训练模型,能提供在三种 Nvidia GPU 和一种 Intel Xeon Phi 处理器的基准化测试结果,未来还可能测试用于图像和语音识别之类任务的“推理”模型。百度希望 DeepBench 能促进特定任务深度学习加速器的研发,“GPU 显然不是终点,我们希望这能鼓励竞争”。
GitHub 最受欢迎的深度学习项目
TensorFlow
使用数据流图计算可扩展机器学习问题
一个高效的开源深度学习框架
Neural Style
由 Torch 实现的神经网络算法
Deep Dream
一款图像识别工具
一款由 Python 实现的深度学习库,包括卷积神经网络、递归神经网络等。运行在 Theano 和 TensorFlow 之上
Roc AlphaGo
由学生主导的一个独立项目,重新实现了 DeepMind 在 2016 发表于 Nature 论文&#8221;Mastering the game of Go with deep neural networks and tree search(用深度神经网络和树搜索学习围棋)&#8221; (Nature 529, 484-489, 28 Jan 2016)
TensorFlow Models
基于 TensorFlow 开发的模型
Neural Doodle
运用深度神经网络将涂鸦变为优雅的艺术品,从照片生成无缝纹理,转变图片风格,进行基于实例的提升,等等。(语义风格传递的实现)
微软的计算网络工具(Computational Network Toolkit,CNTK)
TensorFlow Examples
面向初学者的 TensorFlow 教程和代码示例
ConvNet JS
基于 Java 的深度学习库。在浏览器中训练卷积神经网络模型(或者普通模型)
Torch7,深度学习库
基于深度学习网络的面部识别
轻巧、便携、灵活的分布式/移动深度学习框架,支持 Python, R, Julia, Scala, Go, Java 等等语言
智能计算的 Numenta 平台(Numenta Platform for Intelligent Computing,Nupic):一个脑启发式的计算智能和机器智能平台,基于皮层学习算法的生物精确神经网络模型
一个 Python 库,用来定义、优化和模拟数学表达式计算,用于高效解决多维数组的计算问题
面向黑客的开源机器智能框架
基于 Torch 开发的多层递归神经网络的字符级别语言模型
Neural Talk
一个 Python+numpy 项目,用多模式递归神经网络描述图像
deeplearning4j
基于 Hadoop 和 Spark 的 Java, Scala & Clojure 深度学习工具
深度学习库,包括高层次的 TensorFlow 接口
TensorFlow Playground
神经网络模型示例
OpenAI Gym
一种用于开发和比较强化学习算法的工具包
用机器智能生成音乐和艺术
用神经网络模型给灰度图上色
基于 node.js 和浏览器的免架构神经网络库
Neural Talk 2
Torch 开发的图像简介生成 GPU 运行代码
Image Analogies
使用神经匹配和融合生成相似图形
TensorFlow Tutorials
Tensorflow 的基础原理到应用
基于 Theano 训练和构建神经网络的轻型函数库
基于 Theano 的机器学习库
LISA-lab Deep Learning Tutorials
深度学习教程笔记和代码
Nervana 开发的一款快速、可扩展、易使用的 Python 深度学习框架
Matlab Deep Learning Toolbox
Matlab/Octave 的深度学习工具箱。包括深度信念网络、自动编码机、卷积神经网络、卷积自动编码机和 vanilla 神经网络等。每种方法都有入门示例
Deep Learning Flappy Bird
使用深度强化学习破解 Flappy Bird 游戏
一款灵活的深度学习神经网络框架
Neural Story Teller
一种根据图片生成故事的递归神经网络模型
深度学习 GPU 训练系统
基于 Keras 和 Theano 生成 jazz 的深度学习模型
Brainstorm
快速、灵活、有趣的神经网络
C语言版本的开源神经网络
Theano Tutorials
基于 Theano 的机器学习入门教程,从线性回归到卷积神经网络
RNN Music Composition
一款生成古典音乐的递归神经网络工具
一种用于构建和训练神经网络模型的 Theano 框架
TensorFlow 的交互式、节点调试和可视化的工具
Scikit Neural Net
深度神经网络入门工具,类似 scikit-learn 的分类器和回归模型。
分布式机器学习平台(Python, CUDA, OpenCL)
Deep Detect
基于C++11 的深度学习接口和服务器,与 Python 绑定并支持 Caffe
TensorFlow DeepQ
基于 Google Tensorflow 的 deep Q learning 演示
Caffe on Spark
基于 Spark 的 Caffe
神经网络库的抽象,著名的 Lasagne
DCGAN TensorFlow
基于 tensorflow 实现的深度卷积生成对抗网络
MatConvNet
MATLAB 卷积神经网络工具箱,用于计算机视觉应用
用于训练深度卷积神经网络模型的 OpenCL 库
Visual Search Server
用 Tensorflow Inception 模型和近似最近邻的视觉搜索
来自: 新智元
Http 缓存机制作为 web 性能优化的重要手段,对从事 Web 开发的小伙伴们来说是必须要掌握的知识,但最近我遇到了几个缓存头设置相关的题目,发现有好几道题答错了,有的甚至在知道了正确答案后依然不明白其原因,可谓相当的郁闷呢!!为了确认下是否只是自己理解不深,我特意请教了其他几位小伙伴,发现情况也或多或少和我类似。
为了不给大家卖关子,下面我贴出2道题,大家可以尝试解答下:
以下为 page.html 内容:
&!DOCTYPE html&&html xmlns="http://www.w3.org/1999/xhtml"&&head&
&meta http-equiv="Content-Type" content="text/ charset=utf-8" /&
&title&page页&/title&&/head&&body&
&img src="images/head.png" /&
&a href="page.html"&重新访问page页&/a&&/body&&/html&
首次访问该页面,页面中 head.png 响应头信息如下:
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: image/png
Last-Modified: Tue, 08 Nov :00 GMT
Accept-Ranges: bytes
Date: Thu, 10 Nov :50 GMT
Content-Length: 3534
问题1:请问当点击“重新访问 page 页”链接重新加载该页面后, head.png 如何二次加载?
问题2:如果将上述信息中的 Cache-Control 设置为 private,那么结果又会如何呢?
以上2道题,如果你能全部答对(哈哈,还请仔细确认下 why,以防歪打正着),那么恭喜你,你已对这些知识理解非常透彻了,我后面讲的内容你可以忽略,否则还请继续陪我往下唠唠吧!
首先回到开篇提到很多小伙伴(包括我)在解答 Http 缓存题目时栽跟头的问题,我觉得出现这种现象的根本原因在于我们吸收的知识还不够体系化,平时我们在学习这些知识时多半将其当作知识点来记,什么这个缓存头作什么、那个缓存头作什么用的,但实际中缓存头往往是多个之间相互配合协同工作的,有一套完整的工作体系。
今天我将按自己的理解,从系统体系化角度来讲讲 Http 缓存头是如何协同工作的(不正确的地方还请指正,但请不要喷我哦):
HTTP 缓存体系
首先我将 Http 缓存体系分为以下三个部分:
1. 缓存存储策略
用来确定 Http 响应内容是否可以被客户端缓存,以及可以被哪些客户端缓存
这个策略的作用只有一个,用于决定 Http 响应内容是否可缓存到客户端
对于 Cache-Control 头里的 Public、Private、no-cache、max-age 、no-store 他们都是用来指明响应内容是否可以被客户端存储的,其中前4个都会缓存文件数据(关于 no-cache 应理解为“不建议使用本地缓存”,其仍然会缓存数据到本地),后者 no-store 则不会在客户端缓存任何响应数据。另关于 no-cache 和 max-age 有点特别,我认为它是一种混合体,下面我会讲到。
通过 Cache-Control:Public 设置我们可以将 Http 响应数据存储到本地,但此时并不意味着后续浏览器会直接从缓存中读取数据并使用,为啥?因为它无法确定本地缓存的数据是否可用(可能已经失效),还必须借助一套鉴别机制来确认才行, 这就是我们下面要讲到的“缓存过期策略”。
2. 缓存过期策略
客户端用来确认存储在本地的缓存数据是否已过期,进而决定是否要发请求到服务端获取数据
这个策略的作用也只有一个,那就是决定客户端是否可直接从本地缓存数据中加载数据并展示(否则就发请求到服务端获取)
刚上面我们已经阐述了数据缓存到了本地后还需要经过判断才能使用,那么浏览器通过什么条件来判断呢? 答案是:Expires,Expires 指名了缓存数据有效的绝对时间,告诉客户端到了这个时间点(比照客户端时间点)后本地缓存就作废了,在这个时间点内客户端可以认为缓存数据有效,可直接从缓存中加载展示。
不过 Http 缓存头设计并没有想象的那么规矩,像上面提到的 Cache-Control(这个头是在Http1.1里加进来的)头里的 no-cache 和 max-age 就是特例,它们既包含缓存存储策略也包含缓存过期策略,以 max-age 为例,他实际上相当于:
Cache-Control:public/private(这里不太确定具体哪个)
Expires:当前客户端时间 + maxAge 。
而 Cache-Control:no-cache 和 Cache-Control:max-age=0 (单位是秒)相当
这里需要注意的是:
Cache-Control 中指定的缓存过期策略优先级高于 Expires,当它们同时存在的时候,后者会被覆盖掉。
缓存数据标记为已过期只是告诉客户端不能再直接从本地读取缓存了,需要再发一次请求到服务器去确认,并不等同于本地缓存数据从此就没用了,有些情况下即使过期了还是会被再次用到,具体下面会讲到。
3. 缓存对比策略
将缓存在客户端的数据标识发往服务端,服务端通过标识来判断客户端 缓存数据是否仍有效,进而决定是否要重发数据。
客户端检测到数据过期或浏览器刷新后,往往会重新发起一个 http 请求到服务器,服务器此时并不急于返回数据,而是看请求头有没有带标识( If-Modified-Since、If-None-Match)过来,如果判断标识仍然有效,则返回304告诉客户端取本地缓存数据来用即可(这里要注意的是你必须要在首次响应时输出相应的头信息(Last-Modified、ETags)到客户端)。至此我们就明白了上面所说的本地缓存数据即使被认为过期,并不等于数据从此就没用了的道理了。
关于 Last-Modified,这个响应头使用要注意,可能会影响到缓存过期策略,具体原因,后面我会通过解答开篇提到的2道题来作说明。
以上就是我所认识的缓存策略,下面我将缓存策略三要素和常用的几个缓存头(项)结合一起,让大家更清晰的认识到它们之间的关系:
通过上图我可以清晰的看到各缓存项分别属于哪个缓存策略范畴,这其中有部分重叠,它表明这些缓存项具有多重缓存策略,所以实际在分析缓存头的时候,除了常规的头外,我们还需要将这些具有双重缓存策略的项分解开来。
最后我们回到最开始提到的2道题目,我们来一起分解下:
第一道题:
HTTP/1.1 200 OK
Cache-Control: no-cache
Content-Type: image/png
Last-Modified: Tue, 08 Nov :00 GMT
Accept-Ranges: bytes
Date: Thu, 10 Nov :50 GMT
Content-Length: 3534
分析上述 Http 响应头发现有以下两项与缓存相关:
Cache-Control: no-cache
Last-Modified: Tue, 08 Nov :00 GMT
我们上面讲到了 Cache-Control: no-cache 相当于 Cache-Control: max-age=0,且他们都是多重策略头,我们需将其分解:
Cache-Control: no-cache 等于 Cache-Control: max-age=0,
接着 Cache-Control: max-age=0 又可分解成:
Cache-Control: public/private (不确定是二者中的哪一个)
Expires: 当前时间
最终我们得到了以下完整的缓存策略三要素:
所以最终结果是:浏览器会再次请求服务端,并携带上 Last-Modified 指定的时间去服务器对比:
a)对比失败:服务器返回200并重发数据,客户端接收到数据后展示,并刷新本地缓存。
b)对比成功:服务器返回304且不重发数据,客户端收到304状态码后从本地读取缓存数据。以下为模拟此种情况下请求后的抓包情况:
这道题本身不难,但若认为 no-cache 不会缓存数据到本地,那么你理解起来就会很矛盾,因为如果文件数据没有被本地缓存,服务器返回304后将会无法展示出图片内容,但实际上它是能正常展示的。这道题很好的证明了 no-cache 也会缓存数据到本地这一说法。
第二道题:
HTTP/1.1 200 OK
Cache-Control: private
Content-Type: image/png
Last-Modified: Tue, 08 Nov :00 GMT
Accept-Ranges: bytes
Date: Thu, 10 Nov :50 GMT
Content-Length: 3534
解题思路和上题一样,首先先找到缓存相关项:
Cache-Control: private
Last-Modified: Tue, 08 Nov :00 GMT
这时我们会发现根本找不到缓存过期策略项,那答案会不会和上面一样? 一时半会也分析不出答案,那只能实际测试下了:
再看看 Chrome 浏览器下抓包:
可以看到,浏览器后续请求都直接取的本地缓存,看来的确存在某种缓存过期策略(根据我上面的缓存过期策略理论,浏览器如果直接从本地加载缓存数据,说明它相信本地缓存数据有效,那一定存在某种缓存过期判断条件)。这个问题百思不得其解,困扰了我好久,直到一次偶然的机会我在 Fiddler 响应信息面板里的 Caching 选项卡中找到了答案:
原来,在没有提供任何浏览器缓存过期策略的情况下,浏览器遵循一个启发式缓存过期策略:
根据响应头中2个时间字段 Date 和 Last-Modified 之间的时间差值,取其值的10%作为缓存时间周期。
贴一下Caching面板里的描述,英语好的同学可以精准翻译下:
HTTP/1.1 Cache-Control Header is present: private
HTTP Last-Modified Header is present: Tue, 08 Nov :00 GMT
No explicit HTTP Cache Lifetime information was provided.
Heuristic expiration policies suggest defaulting to: 10% of the delta between Last-Modified and Date.
That's '05:15:02' so this response will heuristically expire
最终我们得到了以下完整的缓存策略三要素:
浏览器会根据 Date 和 Last-Modified 之间的时间差值缓存一段时间,这段时间内会直接使用本地缓存数据而不会再去请求服务器(强制请求除外),缓存过期后,会再次请求服务端,并携带上 Last-Modified 指定的时间去服务器对比并根据服务端的响应状态决定是否要从本地加载缓存数据。
Http 缓存设置起来并不复杂,但却容易被轻视, 今天这篇文章结合2道题目,通过分析、解剖相关缓存头,从系统化角度对 Http 缓存机制做了一个较完整的剖析:Http 缓存机制实际上是 Http 缓存策略三个要素(纬度)相互作用的集合,所以在分析和设置 Http 报文缓存头时,只要能从中精准的分解出缓存三要素,我们就能非常准确的预判到缓存设置最终能达到的效果。
如果您觉得我们的内容还不错,就请扫描二维码赞赏作者并转发到朋友圈,和小伙伴一起分享吧~
转载自:https://mp.weixin.qq.com/s/qOMO0LIdA47j3RjhbCWUEQ
【CSDN 编者按】今天,2017微信公开课 PRO 版在广州亚运城拉开了序幕。微信作为一个工具,以最高效率、最短时间的方法来帮助用户完成任务,在现场,我们甚至于可以看到“扫一扫”的各种场景“想象力”。而除了张小龙对于小程序的解读、小程序场景案例等之外,我们也格外关注微信在开源方面的卓然成果。今天,微信终端跨平台组件 Mars 正式宣布开源。从移动互联网的兴起到现如今“平台无关”的跨端流行,在 IM 方面,弱网络一直是横亘在应用开发者面前的一大问题,Mars 团队成员基于微信业务需求,进行了大量的优化工作。在这篇文章中,作者回顾了 Mars 的起源及研发历程,希望能够给正在探索网络优化的朋友带来启发。
2012 年中,微信支持包括 Android、iOS、Symbian 等三个平台。但在各个平台上,微信客户端没有任何统一的基础模块。2012 年的微信正处于高速发展时期,各平台的迭代速度不一、使用的编程语言各异,后台架构也处在不断探索的过程中。多种因素使得各个平台基础模块的实现出现了差异,导致出现多次需要服务器做兼容的善后工作。网络作为微信的基础,重要性不言而喻。任何网络实现的 Bug 都可能导致重大事故。例如微信的容灾实现,如果因为版本的实现差异,导致某些版本上无法进行容灾恢复,将会严重的影响用户体验,甚至造成用户的流失。我们急需一套统一的网络基础库,为微信的高速发展保驾护航。
恰好,这个时候塞班渐入日暮,微信对塞班的支持也逐渐减弱。老大从塞班组抽调人力,组成一个三人小 Team 的初始团队,开始着手做通用的基础组件。这个基础组件最初就定位为:跨平台、跨业务的基础组件。现在看,这个组件除了解决了已有问题,还给微信的高速发展带来了很多优势,例如:
基础组件方便了开展专项的网络基础研究与优化。
基础组件为多平台的快速实现提供了有力的支持。
经过四年多的发展,跨平台的基础组件已经包含了网络组件、日志组件在内的多个组件。回头看,这是一条开荒路。
在基础模块的开发中,设计尤为重要。在设计上,微信基础组件以跨平台、跨业务为前提,遵从高可用、高性能、负载均衡的设计原则。
可用是一个即时通讯类 App 的立身之本。高可用又体现在多个层面上:网络的可用性、 App 的可用性、系统的可用性等。
网络的可用性
移动互联网有着丢包率高、带宽受限、延迟波动、第三方影响等特点,使得网络的可用性,尤其是弱网络下的可用性变得尤为关键。Mars 的 STN 组件作为基于 socket 层的网络解决方案,在很多细节设计上会充分考虑弱网络下的可用性。
App 的可用性
App 的可用性包含稳定性、运行性能等多个方面。文章 描述了 xlog 在不影响 App 运行性能的前提下进行的大量设计思考。
系统的可用性
除了考虑正常的使用场景,APP的设计还需要从整个系统的角度进行设计思考。例如在容灾设计上,Mars 不仅使用了服务器容灾方案,也设计了客户端的本地容灾。当部分服务器出灾时,目前微信可以做到,15min 内把95%以上的用户转移到可用服务器上。
保障高可用并不代表可以牺牲性能,对于一个用户使用最频繁的应用,反而更要对使用的资源精打细算。例如在 中,多级超时的设计充分的考虑了可用性与高性能之间的平衡取舍。
如果说高可用高性能只是客户端本身的考虑的话,负载均衡就需要结合服务器端来考虑了,做一个客户端网络永远不能只把眼光放在客户端上。任何有关网络访问的决策都要考虑给服务器所带来的额外压力是多大。为了选用质量较好的 IP,曾经写了完整的客户端测速代码,后来删掉,其中一个原因是因为不想给服务器带来额外的负担。Mars 的代码中,选择 IP 时用了大量的随机函数也是为了规避大量的用户同时访问同一台服务器而做的。
在这四年,我学到最多的就是简单和平衡。 把方案做的尽可能简单,这样才不容易出错。设计方案时大多数时候都不可能满足所有想达到的条件,这个时候就需要去平衡各个因素。在组件中一个很好的例子就是长连接的连接频率(具体实现见longlink_connect_monitor.cc),这个连接频率就是综合耗电量,流量,网络高可用,用户行为等因素进行综合考虑的。
Mars 的发展历程
阶段一:让微信跑起来
跨平台基础组件的需求起源于微信,首要目标当然是先承载起微信业务。为了不局限于微信,满足跨平台、跨业务的设计目标,在设计上,网络组件定位为客户端与服务端之间的无状态网络信令通道,即交互方式主要包含一来一回、主动push两种方式。这使得基础组件无需考虑请求间的关联性、时序性,核心接口得到了极大的简化。同时,简洁的交互也使得业务逻辑的耦合极少。目前基础组件与业务的交互只包括:编解码、auth状态查询两部分。核心接口如下:(具体见stn_logic.h)。
void StartTask(...);
int OnTaskEnd(...);
void OnPush(...);
bool Req2Buf(...);
int Buf2Resp(...);
bool MakeSureAuthed();
在线程模型的选择上,最早使用的是多线程模型。当需要异步做一个工作,就起一个线程。多线程势必少不了锁。但当灰度几次之后发现,想要规避死锁的四个必要条件并没有想象中的那么容易。用户使用场景复杂,客户端的时序、状态的影响因素多,例如网络切换事件、前后台事件、定时器事件、网络事件、任务事件等,导致了不少的死锁现象和对象析构时序错乱导致的内存非法访问问题。
这时,我们开始思考,多线程确实有它的优点:可以并发甚至并行提高运行速度。但是对于网络模块来说,性能瓶颈主要是在网络耗时上,并不在于本地程序执行速度上。那为何不把大部分程序执行改成串行的,这样就不会存在多线程临界区的问题,无锁自然就不会死锁。
因此,我们目前使用了消息队列的方案(具体实现见 comm/messagequeue 目录),把绝大多数非阻塞操作放到消息队列里执行。并且规定,基础组件与调用方之间的交互必须:
尽快完成,不进行任何阻塞操作;
单向调用,避免形成环状的复杂时序。
消息队列的引入很好的改善了死锁问题,但消息队列的线程模型中,我们还是不能避免存在需要阻塞的调用,例如网络操作。在未来的尝试中,我们计划引入协程的方式,将线程模型尽可能的简化。
在其他技术选型上,有时甚至需要细节到 API 的使用,比如考虑平台兼容性问题,舍弃了一些函数的线程安全版本,使用了asctime、localtime、rand 等非线程安全的版本。
阶段二:修炼内功
在多次的灰度验证、数据比对下,微信各平台的网络逻辑顺利的过渡到了统一基础组件。为了有效的验证组件的效果,我们开发了 smc 的统计监控组件,开始关注网络的各项指标,进行网络基础研究与优化,尤其是关注移动网络的特征。
基础网络优化。
常规的网络能力,例如 DNS 防劫持、动态 IP 下发、就近接入、容灾恢复等,在这一阶段得到逐步的建设与完善。除此之外,Mars 的网络模块是基于 socket 层的网络解决方案,在缺失大而全的 HTTP 能力的同时,却可以将优化做到更细致,细致到连接策略、连接超时、多级读写超时、收发策略等每个网络过程中。例如,当遇到弱网络下连通率较低,或者某些连通率不好的的服务器影响使用时,我们使用了复合连接(代码见complexconnect.inl)和 IP 排序(代码见simple_ipport_sort.cc)的方案很好的应对这两个问题。
平台特性优化。虽然 Mars 是跨平台的基础组件,但在很多设计上是需要结合各平台的特性的。例如为了尽量减少频繁的唤醒手机,引入了,并且在智能心跳中考虑了 Android 的 alarm 对齐特性(具体实现见smart_heartbeat.cc)。再如在网络切换时,为了平滑切换的过程,使用了 iOS 中网络的特性,在 iOS 中做了延迟处理等。
移动特性优化。微信的使用场景大部分是在手机端进行使用,在组件的设计过程中,我们也会研究移动设备的特性,并进行结合优化。例如,结合移动设备的无线电资源控制器(RRC)的状态切换,对一些性能要求特别特别敏感的请求,进行提前激活的优化处理等。
阶段三:“抓妖记”
基础组件全量上线微信后,以微信的用户量,当然也会遇到各种各样的“妖”。例如,写网络程序躲不开运营商。印象比较深刻的某地的用户反馈连接 WiFi 时,微信不可用,后来 tcpdump 发现,当包的大小超过一定大小后就发不出去。解决方案:在 WiFi 网络下强制把 MSS 改为1400(代码见 unix_socket.cc)。
做移动客户端更避不开手机厂商。一次遇到了一个百思不得其解的 crash,堆栈如下:
pc 0x43e50
/system/lib/libc.so (???)
/system/vendor/lib/libvendorconn.so (handleDpmIpcReq+154)
/system/vendor/lib/libvendorconn.so (send_ipc_req+276)
/system/vendor/lib/libcneconn.so (connect+438)
看堆栈结合程序 xlog 分析,非阻塞 socket 卡在了 connect 函数里超过了6 min, 被我们自带的 anr 检测(代码见anr.cc)发现然后自杀。最后实在束手无策,联系厂商一起排查,最终查明原因:为了省电,当手机锁屏时连的不是 WiFi 且又没有下行网络数据时,芯片 gate 会关闭,block 住所有网络请求,直到有下行数据或者超过 20min 才会放开。当手机有网络即使是手机网络的情况下,很难没有下行数据,所以基本不会触发组件自带的 anr 检测,但当手机没连接任何网络时,就很容易触发。解决方案:厂商修改代码逻辑,当没有任何网络时不 block 网络请求。
运营商和手机厂商对我们来说已经是一个黑盒,但其实也遇到过更黑的黑盒。当手机长时间不重启,有极小概率不能继续使用微信,重启手机会恢复。但因为一直找不到一个愿意配合我们又满足条件的用户,导致这个问题很长一段时间内都没有任何进展,最终偶然一个机会,在一台测试机器上重现了该问题,tcpdump 发现在三步握手阶段,服务器带回的客户端带过去的 tsval 字段被篡改,导致三步握手直接失败,而且这个篡改发生在离开服务器之后到达客户端之前。
这个问题是微信网络模块中排查时间最长也是花费精力最多的一个问题,不仅因为很长一段时间内无案例可分析,也因为在重现后,联系了大量的同事和外部有关人的帮忙,想排查出罪魁祸首。但因为中间涉及的环节和运营商相关部门过多,无法继续排查下去,最终也没找到根本原因。
解决办法:服务器更改 net.ipv4.tcp_timestamps = 0。
这段时间是痛并快乐着,见识到了各种极差的网络,才切肤感受到移动网络环境的恶劣程度,但看着我们的网络性能数据在稳步提升又有种满足感。截止到今天,已经很少有真正的网络问题需要跟进了。这也是我们能有时间开始把这些代码开源出去的很大的一个原因。
讲述了一大堆 Mars 的发展历程,终于来到主角的介绍了。大概一年前,我们开始有想法把基础组件开源出去,当时大家都在纠结叫什么名字好呢?此时恰逢《火星救援》正在热映,一位同事说干脆叫 Mars 吧,于是就定下来叫了 Mars。看了看代码,发现想要开源出去可能还是需要做一些其他工作的。
首先,代码风格方面,因为最初我们使用文件名、函数名、变量名的规则是内部定义的规则,为了能让其他人读起来更舒心,我们决定把代码风格改为谷歌风格,比如:变量名一律小写, 单词之间用下划线连接;左大括号不换行等等。但是为了更好的区分访问空间,我们又在谷歌代码风格进行了一些变通,比如:私有函数全部是"__"开头;函数参数全部以"_"开头等等。
其次,虽然最初的设计一直是秉承着业务性无关的设计,但在实际开发过程中仍然难免带上了微信的业务性相关代码,比较典型的就是 newdns 。为了 Mars 以后的维护以及保证开源出去代码的同源,在开源出去之前必须把这些业务性有关的代码抽离出来,抽离后的结构如下:
mars-open 也就是要开源出去的代码,独立 git repo。
mars-private 是可能开源出去的代码,依赖 mars-open。
mars-wechat 是微信业务性相关的代码,依赖 mars-open 和 mars-private。
最后,为了接口更易用,对调用接口以及回调接口的参数也进行了反复思考与修改。
在 Mars 之前,是直接给 Android 提供动态库(.so),因为代码逻辑都已经固定,不需要有可定制的部分。给 Apple 系平台提供静态库(.a),因为对外暴露的函数几乎不会改变,直接把相应的头文件放到相应的项目里就行。但对外开源就完全不一样了:日志的加密算法可能别人需要自己实现;长连或者短连的包头有人需要自己定制;对外接口的头文件我们可能会修改……
为了让使用者可定制代码,对于编译 Android 平台我们提供了两种选择:1. 动态库。有些可能需要定制的代码都提供了默认实现。2. 先编译静态库,再编译动态库。编译出来静态库后,实现自己需要定制的代码后,执行 ndk-build 后即可编译出来动态库。 对于 Apple 系平台,把头文件全部收拢为 Mars 维护,直接编译出 Framework。
为了能让开发者快速的入门,我们提供了 Android、iOS、OS X 平台的 demo,其他平台的编译和 demo 会在不久就加上支持。
成型的 Mars 结构图如下:
我们做的一直都不是满足所有需求的组件,只是做了一个更适合我们使用的组件,这里也列了下和同类型的开源代码的对比。
AFNtworking
Objective-C
基于 socket
支持完整的 HTTP
结合移动 App做设计
可以看出:
Mars 中包括一个完整的高性能的日志组件 xlog;
Mars 中 STN 是一个跨平台的 socket 层解决方案,并不支持完整的 HTTP 协议;
Mars 中 STN 模块是更加贴合“移动互联网”、“移动平台”特性的网络解决方案,尤其针对弱网络、平台特性等有很多的相关优化策略。
总的来说,Mars 是一个结合移动 App 所设计的基于 socket 层的解决方案,在网络调优方面有更好的可控性,对于 HTTP 完整协议的支持,已经考虑后续版本会加入。
经常有朋友和我说:发现网络信号差的时候或者其他应用不能用的时候,微信仍然能发出去消息。不知不觉我们好像什么都没做,回头看,原来我们已经做了这么多。我想,并不是任何一行代码都可以经历日活跃5亿用户的考验,感谢微信给我们提供了这么一个平台。现在我们想把这些代码和你们分享,运营方式上 Mars 所开源出去的代码会和微信所用的代码保持同源,所有开源出去的代码也首先会在微信上验证通过后再公开。开源并不是结束,只是开始。我们后续仍然会继续探索在移动互联网下的网络优化。Talk is cheap, show you our code.
关注 Mars , 来 Github 给我们 star 吧!
转载自:http://geek.csdn.net/news/detail/131594
据市场调研公司尼尔森近期的一份报告显示,尽管 Facebook 可能不如 Snapchat 那么酷,但 Facebook 应用仍然是全美最受欢迎的应用。 Facebook 的旗舰客户端仍以 1.46 亿人的月活跃用户遥遥领先排在第一。在过去的一年里,Facebook 在应用中增加了游戏、“市场” (Marketplace)等全新的功能。
另外,Facebook 旗下的聊天工具 Messenger 则在前十名中排名第二,拥有 1.29 亿月活跃用户。Facebook 在 2012 年以 10 亿美元收购的 Instagram 则位列榜单第八,其月活跃用户达到 7400 万。 Instagram 的用户数量较 2015 年增长了约 30%。
此外,在全美 10 大热门应用榜单中,搜索引擎巨头谷歌则垄断了五个席位, 谷歌旗下的应用一共拥有 5.08 亿用户。
谷歌旗下 YouTube 应用的贡献最大,共拥有 1.13 亿用户。谷歌地图、 谷歌搜索客户端、谷歌 Play 软件商店、Gmail 则分别拥有 1.05 亿、1.03 亿、9900 万及 8800 万月活跃用户。
排在榜单最后两位的分别是 APPLE MUSIC 及亚马逊应用。 另外尼尔森也公布了美国智能手机操作系统的市场数据,谷歌的安卓以 53% 的份额,排名第一,苹果的 iOS 份额为 45%。
震惊了!曝谷歌禁止三星S8使用自家语音助手
收购人工智能公司Viv不久,三星表示,“下代旗舰Galaxy S8将内置AI智能语音助手,并将有望配备专属物理按键”。然而近日有消息称,谷歌将禁止三星S8使用自家语音助手。
据外媒报道,三星和谷歌在2014年达成的一项专利协议可能使S8配备数字助手的计划落空,这份为期10年的协议本允许两家公司在它们的设备和服务中使用彼此的专利。而且协议中也包含一项竞业禁止条款,理论上而言可允许谷歌叫停三星的数字助手计划,毕竟谷歌已经有成熟的智能语音助手。
也就是说,如果三星与谷歌最终不能协商一致,那么三星S8将无缘使用自家语音助手功能。
据称,三星Galaxy S8不会亮相2月底的MWC2017展会,而是延迟到明年4月发布。
文|郭朝飞 编辑|马吉英
今冬首雪之后,北京气温骤降,寒风横割人脸。不过,这并没有影响到刘庆峰心中的暖意。
11月23日,科大讯飞在国家会议中心发布了多款新产品,作为科大讯飞董事长,刘庆峰在台上亢奋激昂,语速飞快。一句话刚出口,背后两边的大屏幕上就呈现出了语音识别后的文字,不仅有汉字,还同步翻译为英语、日语、韩语和维吾尔语。他将2016年视为中国人工智能(AI)的历史原点,从全球范围来看,这已是人工智能的第三次浪潮。
其实,在很长的一段时间里,刘庆峰是落寞孤独的,甚至连他的公司科大讯飞是做什么的,很多人都难以回答。10月18日,上海梅赛德斯-奔驰中心,锤子创始人罗永浩帮忙解答了这个疑惑。老罗或许没有想到,他发布的是自己的手机,走红的却是科大讯飞的讯飞输入法。讯飞输入法和科大讯飞股票受到热捧。
科大讯飞不是一家年轻的创业公司,只不过它和其创始人刘庆峰似乎一直在等待风口。
1999年,刘庆峰创立科大讯飞,押宝AI。至今,刘庆峰仍常在各种场合忆苦思甜:4年后才盈亏平衡,2008年上市时才实现盈利。
好在刘庆峰等到了。最近两年,AI成为一个新风口,创业者和资本蜂拥而入。
IDC数据显示,目前全球人工智能市场规模约80亿美元,2020年将达到470亿美元。科大讯飞2015年年报显示,实现营业收入25亿元,同比增长40.87%。刘庆峰希望科大讯飞再向前一步——让机器从能听会说到能理解会思考,用人工智能改变世界。
在他眼里,人工智能+的时代已经到来,医疗、教育、汽车、城市都将因此而改变。在不远的将来,很多领域机器的生产效率将代替人工,社会财富将很有可能在相当一段时间内由少数顶尖人工智能公司集中创造。
风口唤醒了资本和巨头。国内以BAT为代表,尤其在AI领域砸下重金,亦作为战略重点;国外则包括、、等。
刘庆峰选择主动出击,用扩张赢得时间。同时,科大讯飞开始调整商业模式,从To B市场拓展至To C市场。
虽然是技术控,但他并不认为整个人类会被机器替代。
“今天(人工智能)越来越多的集中在人与机器耦合的模式中,未来世界应该是由顶尖专家和顶尖管理者协同管理人和机器的联合体的一个大的未来,这就是我们认为的人机协同机制。我们释放出来想象更大的未来,去做更有创意的事情。”刘庆峰说。
作为先行者,刘庆峰并非没烦恼。
今年10月,科大讯飞发布的2016年第三季度财报显示,营业收入6.79亿元,同比增长6.59%;归属于上市公司股东的净利润2238万元,同比下降72.22%。由于行业前沿特殊性,科大讯飞长久以来还享受着政府补助扶持。科大讯飞2015年年报显示,仅年,其分别获得8198.20万元、1.01亿元以及1.10亿元的政府补助。
等风来,刘庆峰经历了很多痛苦和质疑,这让他形成了强大的内心和足够的耐性。今年10月,他在一次演讲中说,“千万不要因为某一个时期的痛苦或者收入没有到达,获得各界质疑,你就放弃。你只要打开整个产业链,看看到底是技术市场管理还是商业模式哪个环节有问题,没准这个环节补上,你就活过来了。”
未来的世界,将会有越来越多人的工作被智能化机器取代,而股份有限公司这家企业的存在,正是加速了这个时代的到来。
科大讯飞,是在智能与人工智能领域低调潜行十多年的高科技企业,近几年终于借着“人工智能”和“语音识别”的东风迅速被人知晓,并在一定程度上已经成为国内智能语音领域的代名词。2016年,科大讯飞快马加鞭,通过人工智能,在多个领域开花。
重点切入语音识别
提到科大讯飞,“人工智能”和“智能语音”显然已经成为其两大标签。“科大讯飞作为中国智能语音与人工智能产业领导者,在语音合成、语音识别、口语评测、自然语言处理等多项技术上拥有国际领先的成果。”科大讯飞市场部总经理任萍萍在接受《中国企业报》记者采访时说。
得益于人工智能第三次浪潮的到来,科大讯飞在人工智能领域的布局不断深入。目前,科大讯飞已经在声音、输入、交流、电视、教育、汽车、机器人等七个领域推进人工智能的实际应用。
其中,声音作为在人工智能领域布局的重要切入点,科大讯飞今年显然也在智能语音方面倾注了更多的心力。在语音合成方面,科大讯飞在国内外多次语音合成评测中获得冠军。尽管已经在行业领先,科大讯飞似乎并没有停下技术突破的脚步。在今年11月23日的年度发布会上,科大讯飞推出两款最新声音产品,其突出特点是产品已经可以做到个性化定制。
在语音识别方面,不久前,科大讯飞宣布,其语音识别成功率达到97%,离线识别率达到95%。任萍萍表示,截至目前,科大讯飞已占有中文语音技术市场70%以上市场份额,每日为近30亿人次、20万开发伙伴和8.9亿终端用户提供语音及人工智能交互服务,以科大讯飞为中心的人工智能生态已经逐步构建。
基于语音为入口的
根据业内预测,未来三年左右时间内,全球移动智能终端90%以上将配备语音功能,可穿戴设备、智能家居、企业级服务、汽车智能化等将成为智能语音的重要应用场景。正是看到这块巨大的“蛋糕”,科大讯飞也试图打造基于语音为入口的生态链。
在任萍萍看来,未来语音必将成为人机交互、万物互联的基础,这是科大讯飞现在的机会,也是科大讯飞有望触碰到的未来。“未来我们要成为人工智能领域的产业领导者,我们对未来的期待就是让机器能听会说,能理解会思考,用人工智能建设美好世界。”
从近期科大讯飞频繁将基于语音的智能系统加入到教育、汽车等领域来看,科大讯飞打造基于语音为入口的生态链的意图逐渐显现。
教育领域一直是科大讯飞技术的重要应用领域。就在近日,新东方董事长俞敏洪在其个人公众号上透露,新东方和科大讯飞在近期共同投资,成立了一家名叫“东方讯飞”的公司,科大讯飞的智能语音、 AI 技术,加上新东方的教育资源,两家公司将一起探索“教育+科技”新形式。
在车载领域,科大讯飞目前已与30多个汽车厂商建立了长期合作,并已在100多款量产车型中搭载产品。在智能家居方面,科大讯飞今年推出了新款家庭智能盒子超脑魔盒。此外,科大讯飞还在智能手机领域、机器人领域皆有落子。
“我们希望在打造一个人工智能产业生态的同时,也能拥有海量的用户。通过海量的用户每天使用我们的产品,不停地迭代数据,告诉我们行业未来趋势、公司的发展战略和产品战略是什么。”任萍萍畅讲道。
继续在人工智能领域坚守,
从最初的创业团队开始,科大讯飞历经10余年的拼搏发展,其人工智能和智能语音技术已经处于国际领先地位,企业也演变成了行业领导者。17年科技创业路能走下来,除了不断创新的决心,离不开那颗坚守人工智能的心。
任萍萍认为,正是我们在创业之初的梦想、永葆初心的坚守以及创新的文化,推动着我们不断地前行。在科大讯飞历史上的关键阶段,这些文化都发挥着重要作用。
“作为技术创新型公司,对核心技术的研发和坚守是非常重要的,科大讯飞也正是因为有了之前那么多年的坚守,才有了对今天人工智能的深刻理解和深度挖掘。这种坚守已经成为了我们科大讯飞的企业文化,之后还将一直坚守下去。”科大讯飞某高层在接受《中国企业报》记者采访时感叹道。
今年3月,轰动全球的“人机大战”落幕,谷歌人工智能系统AlphaGo以4:1的比分战胜世界顶级围棋手李世石,这一结果令人唏嘘,也引发了人工智能在全球范围内的新一轮高潮。
“人工智能时代到来的比想象中更快,”12月8日,在世界智能制造大会智能制造前沿技术专题论坛上,科大讯飞产业投资有限公司总裁祁东风表示,未来的人工智能不仅体现在工业生产中,而会融入到我们生活的点点滴滴,深刻地改变世界。比如,无人机、摄像机,甚至家里的门铃,都有集成智能技术的应用。他认为,以语音为主、键盘触摸为辅的人机交互时代将是未来人工智能的主要发展方向。
声纹或将代替指纹,应用于识别侦查领域
设置闹铃,你可以选择“胡歌”或者“林志玲”叫你起床!你是不是以为这是两个明星专程录制的声音呢?错了,那是合成的!祁东风说,现在目前的语音合成技术相当成熟,合成声音想模仿谁就模仿谁,真假难辨。他解释说,“每个人说话都有自己的特点,说话声音的大小、口音、鼻音给人的感觉等都各不相同。不同人的声音采集合成,可以灵活运用,甚至你都辨别不出来。”
每个人声音的独一无二的气质形成了“声纹”,而在某种程度上,这可以代替指纹。“指纹必须要和人有直接的肢体接触,但是声纹直接发来一段声音就可以,将来可以应用于识别或侦查领域。另外,祁东风介绍,语音识别还在“高噪音”、“多人对话”等方面的技术取得了突破性的进展。
没有情感,机器人永远取代不了人类
祁东风介绍,人工智能合成声音经历了三个阶段,第一阶段是运算智能,这时候的合成声音,一听就知道是机器人的;第二阶段是感知智能,这个阶段人工智能合成声音像小演员,甚至比人讲得好;第三阶段是认识智能,人工智能合成声音也会理解和思考。“我们目前在认知智能方面处于非常初级的阶段。”
不过,尽管人工智能迎来高速发展期,但是在祁东风看来,机器人永远取代不了人类,人工智能基于快的基础,能为我们生活带来方便和快乐,但是人工智能没有情感。”
不作就不会死,这种事,这9家公司怎么就不懂呢!
1、三星 Note7 迟到的召回道歉
在「国行 Note 电池没问题」但打脸 4 连炸之后,三星中国于 2016 年 9 月 29 日正式向中国消费者道歉。在这份道歉信中,三星提到了「非常重视中国市场,从未且永远不会对中国采用双重标准。」同时对国行的 Note7 进行全面召回。但是三星迟来的歉意、此前傲慢的行径以及内外有别的差别对待,让中国消费者不买账。
2、Evernote 修改隐私策略惹众怒
作为全球最大的笔记类应用 App,印象笔记在经历了用户下降、收入减少和裁员等负面消息之后,本应可以平静地过完这个年,然而就在上周,印象笔记宣布将在 1 月 23 日修改隐私策略,「将允许一些印象笔记员工对应用于账号内容的机器学习技术进行监督。」此事引发轩然大波。然而过了仅仅一天时间,在激烈的用户反对和声讨中,印象笔记 CEO Chris O&#8217;Neil 表示,「这一隐私策略的修改不会生效」并向用户致歉。
3、支付宝圈子「色情露骨风波」
因为上线了新功能「圈子」,支付宝一下子就被推倒了舆论的风口浪尖。在新功能圈子里,不少女性发布了大量露骨、色情的照片,网友称支付}

我要回帖

更多关于 饥饿游戏3 上吊树 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信