50

重新认识快手:人工智能的从 0 到 1

 4 years ago
source link: https://www.tuicool.com/articles/eEbyUfv
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

qIF7bmN.gif 在CVPR上看到的快手,和我印象中的不太一样。

CVPR,全称 IEEE 国际 计算机视觉 与模式识别会议,在计算机视觉领域是和 ICCV、ECCV 并称的三大顶尖会议。今年的 CVPR 于当地时间 6 月 16 日在美国加州长滩开幕,吸引了超过 9000 多位参会者、284 家赞助商、和 104 家展商。

这是快手第一次参加 CVPR。在一个大约 40 平米的展区,快手展示了一款基于人脸特征识别的 demo,能在海量的视频库中找到与参会者长相相似的用户。这充满趣味性的 demo 很快引起了参会者的注意,人群熙熙攘攘地聚集在展台周围,想要一睹他们的「双胞胎」到底长什么样。

最令我印象深刻的是一位穿着黑色短袖、短发络腮胡的大叔,由于匹配结果太像,引得围观群众哈哈大笑。

zeA7bem.jpg!web

这种新奇的体验,让我对快手的 人工智能 产生了兴趣。我曾有过刷起快手就「昏天黑地」的日子,也知道「记录世界记录你」、「老铁双击 666」的这些快手流行语,这款短视频应用给我的生活带来了颇多乐趣。只不过,快手的人工智能似乎从未认真地被摆在台面上讨论过,至少比起活跃在闪光灯下的其他中国科技公司们—BAT、TMD、或者是商汤、旷视、依图们。

只要仔细想想,比起大多数中国科技公司,快手更应该依赖人工智能。创立 8 年至今,快手的日活人数已经超过 2 亿,公司业务涉及生产、审核、分发、消费,处理海量数据的需求,以及快手自身业务的特性,没有机器学习的支撑是很难走到今天的。

快手是如何一步一步积累人工智能?带着这样的问题,我采访了快手多个业务部门的老兵们,希望还原人工智能在快手从 0 到 1 的全过程。

第一支深度学习团队

2015 年 12 月,彭博社发表了一篇文章,标题是「为什么 2015 年是人工智能突破的一年」。

这一年,人工智能遍地开花。谷歌开源了 机器学习 平台TensorFlow,一跃成为全球最大的机器学习平台;之前不被人看好的亚马逊智能音箱 Echo,已经占据了整个音箱市场销量的 25%;10 月,一个叫做 AlphaGo 的智能体首次击败了专业的围棋选手。谁也不会想到,这个智能体将在不久的未来掀起巨大的科技浪潮。

1 月至 12 月,全球超过 300 笔投资涉及人工智能领域,几乎每天都有人工智能初创公司获得融资的新闻;人工智能在中国同样受到了资本的追逐。根据德勤的报告,2015 年,中国人工智能的投资总额达到了 450.7 亿元,同比增长 306%。

就在这样的大背景下,2015 年年底,快手向 深度学习 迈出了第一步。创始人兼 CEO 宿华找到了李岩,希望他能组建一个深度学习部门(DL 组),用算法打击盗版和违规内容。当时的快手已经拥有超过 1 亿的安卓和 iOS 用户,用户分布在北上广等一二线城市和诸多三四线城市。

NzMJj2R.jpg!web

宿华

保证内容安全和原创几乎是每一个视频类应用的刚需。过多的违规内容会挤压内容生产者的流量,继而拖垮整个平台。换句话说,这是关乎快手生存与否的底线。

被宿华委以重任的李岩,毕业于中国科学院计算技术研究所,是快手的老员工,工号 75 上下,早期在视频安全方面颇有建树。2015 年 11 月,李岩组建了一支十人不到的团队,目标是秒量级别内下线违法违规的内容,包括色情、暴力等;以及识别出非原创的、盗版的视频内容。

为了招人,李岩试过各种办法,甚至在知乎寻找人才。当时有研发人员不了解快手,有工程师只是因为快手离家近就来面试一下,但面试完之后被快手做的事情所吸引,就毅然选择加入了快手。

在技术积累的过程中,快手对视频内容理解产生了更多的需求:视频里的人在说什么?场景在哪里?想要表达什么内容?深度学习部门也不再局限于解决视频的安全或版权问题,而是希望帮助快手「老铁」们更快地找到他们喜欢的内容。

深度学习部门当时只有图像和音频这两个单模态内容理解团队,但视频理解出身的李岩坚信多模态内容理解对快手这样一家短视频公司极其重要。在 2018 年的一次公开演讲中,他举了个例子,「一个男子表演口技的视频中,如果关闭声音,仅凭画面信息,我们并不知道他是在做什么,可能会觉得是在唱歌或唱戏。这说明如果仅仅是通过视觉的话,你可能无法获得真实的信息。」

「视频是视觉、听觉、文本多种模态综合的信息形式,而用户的行为也是另外一种模态的数据,所以视频本身就是一个多模态的问题,再加上用户行为就更是一种更加复杂的多模态问题。所以多模态的研究对于快手来说,是非常重要的课题。」

2016 年,深度学习部门开始涉猎语音、文字、音乐等多种媒体形式。李岩决定,将团队的名字从深度学习组改为多媒体理解组(Multimedia understanding,简称MMU)。

这一年随后被称作短视频元年,资本纷纷涌入这一风口,市场 65% 资金投入到了短视频内容创作方,垂直细分领域的短视频内容更是达到了 76%。

而在随后的 2017 年年初,完成 3.5 亿美元融资的快手,率先从短视频领域的「厮杀」中脱颖而出,总用户和日活跃用户分别达到 4 亿和 4000 万。到了年底,这两组数据分别增长至 7 亿和 1 亿,日均上传视频量则超 1000 万条。快手团队规模也从 200 多人扩充到 800 多人。

也是从这时候起,MMU 组快速扩张,每个单模态组都引入了业内的顶尖人才来做算法优化和工程落地。起初,不同模态的业务组单独发展,到了 2018 年,各组的算法开始进行融合。

多模态理解的挑战

作为快手的第一支深度学习团队,MMU 组面临着巨大的挑战。

过去几年,单模态内容理解能力在学术界还不够成熟,加上学术界对视频理解没有强烈的研究需求,导致始终没有形成一套针对视频理解的求解方案。在工业界,即使是全球最大的视频平台 YouTube,也因为其视频带有丰富的文本信息—标题、简介、标签,可以一定程度上绕开视频理解。

但快手不同。作为一款移动互联网时代兴起的短视频应用,快手给用户提供轻便新颖的拍视频体验,用户喜欢拍完就传,不爱文字编辑,描述视频的文字信息严重缺失。快手又需要理解内容来做推荐算法,视频理解成了一个绕不开的坎。李岩说,快手是较早对视频内容分析产生强烈刚需的公司。

复杂的应用场景和多元的用户分布给 MMU 带来了另一个维度的挑战。负责视频理解方向的朝旭是 MMU 组的老员工,他给机器之心举了一个例子:快手上有很多景色的视频内容,有些景色很美、有空灵感的画面犹如「仙境」,那么快手的标签里就需要描述「仙境」这类景色;但是在学术界的数据集里面,你是不会看到这种「诡异」的标签。

「这不再是一个具体的分类算法问题,而是说你怎么去定义一个合理的标签体系。」

语音组最直观的问题是方言口音。MMU 语音组的月朗介绍说,快手用户的地域分布结构和中国移动互联网的人群分布结构基本一致:一线城市人口占比只有 7% 左右,另外 93% 的人都生活在非一线城市,特别是许多小镇青年、或者是三四线以下的人们说话,都带有很强的口音,这就需要快手收集特定方言区域的语音和文本数据。

音乐组面临的一个难题是给用户唱歌打分。传统的歌唱打分是将用户所唱的歌曲和原唱音频做对比,匹配度越高分数越高。但在快手,许多用户是来自偏远地区的少数民族,他们所唱的民歌山歌在快手的检索库里根本找不到。

「我们现在要求解的不是 1+1 等于 2 的这个问题,而是你在算 1+1 的时候,你发现连纸和笔都没有,」朝旭说。

经过两年的摸索,MMU 组基于多模态技术,逐渐形成了两大业务体系:信息分发和人机交互。前者利用多模态实现精准地视频内容理解,后者利用多模态来辅助人们更好地记录生活。

为了更好地理解这两个方向,我们各举一例:冷启动项目属于内容分发,指的是在用户在刚打开快手 app 时,除了内容和视频中的人物,算法无法获得任何行为数据,因为用户打开快手的一个页面是「发现」而非「关注」,所以快手在冷启动阶段就要提供个性化的内容推荐。MMU 组在 2018 年参与了优化冷启动的项目。

人机交互上,视频配乐是一个典型的多模态理解场景。MMU 音乐组的水寒告诉机器之心,快手需要首先理解视频,包括人脸识别、年龄性别、动作时间地点场景的识别,然后对音乐的风格情感、节奏、主题、以及适合度做场景理解,这个过程涉及到多部门之间的协作,包括视频理解方面、人脸识别、自然语言处理、视频检索、音乐检索、以及最后的推荐算法。

算法优化带来的红利是显著的。2018 年第 2 季度,快手 app 的月活跃用户数达到 2.4 亿人,日活人数过亿。这一年的 4 月,腾讯为快手追加 4 亿美金融资,使得快手的估值接近 200 亿美金。

但多模态研究给 MMU 团队带来的挑战并未就此减轻。李岩说,多模态研究目前依然存在三大难点:单模态的语义鸿沟会在多模态融合后,因为样本空间变大而进一步增加语义鸿沟;对不同模态之间的数据进行综合建模,会出现一个数据异构鸿沟;多模态的数据集难以构建,存在数据缺失的问题。

MMU 接下来的目标是从低级的感知过渡到高层的语义理解,这也是李岩认为的「目前工业界最难的问题。」MMU 目前正在研发视频分级系统,为了更好地保护未成年人使用快手,这就需要算法对视频内容有更深刻地理解:一个视频表达了什么样的概念?透露的是什么样的情绪?

「我认为视频内容理解是通向未来的人工智能大规模地在现实生活中爆发的关键技术,而快手在这个方面既有战场、也有数据。我们 MMU 应该是未来人工智能行业里面的关键力量,」李岩说。

快手的「Google X」

在 MMU 发展的同时期,快手也在大力发展其他部门,例如负责音视频传输和质量保证的音视频技术团队、负责推荐的社科团队。和 MMU 一样,这些部门由业务驱动,以产品开发和技术落地为主。

在快手对视频理解技术在推荐、内容安全等方面的应用日趋成熟时,宿华希望组建一个专注在前沿算法的实验室,将比如好莱坞的特效内容加入到用户的内容生产中,通过人工智能让用户获得新奇的体验。

于是,在 2016 年,宿华找到了自己在清华大学的老同学、美国斯坦福计算机系博士郑文。在斯坦福大学期间,郑文的研究方向主要集中在计算机图形学和电影特效方面,其导师曾两次获得奥斯卡科技奖。毕业之后,郑文继续在美国从事机器学习和计算机视觉相关的研究。

UBn6vqv.jpg!web

郑文

2016 年 9 月,在宿华的力劝之下,郑文回国加入快手,成立了 Y-Lab 实验室。郑文当时对国内媒体说,「我觉得他想要做的事情挺有趣,跟我的经验也非常吻合,我自己也感兴趣,所以就回来了。」宿华没有设立特定的考核标准,只要做出来东西好玩就行。

Y-Lab 的早期员工、目前增强现实(AR)技术的负责人梦松向机器之心回忆了当年和宿华的一次对话。他说宿华想建立一个类似谷歌实验室(Google X)的科技部门,从事 AI 和 AR 领域的前沿技术研究和探索,为将来进行布局。

Google X 是谷歌最神秘的一个部门,聚集了全世界顶级专家,曾经开发过谷歌最早的神经网络系统、谷歌眼镜和自动驾驶汽车(后来单独孵化出了Waymo)等项目。据国内媒体报道,Y-Lab 中的 Y 代表着 Young,Y 是 X 的下一个字母,所以也代表着超越 X。

「我们现在在做的针对 5 G 的技术研究、图像 3D 捕捉这方面,其初衷是想在 AI 和 AR 上做到世界领先,」梦松说。

随后的两年时间,Y-Lab 开发出了各种有趣、新奇的 demo,覆盖 AR 特效、人脸关键点、手势识别、语义分割、人体关键点检测等多个领域。

aQVbYzb.gif

去年,Y-Lab 的「AR 上的人脸移植特效」就备受网友好评,用户可以选取相册中的照片,把相册中的人脸转移到到 AR 三维模型上,生成出一个长着人脸的 3D 虚拟角色。

同样去年上线的魔法表情「快手时光机」,能预测用户 60 年之后的模样,并且随着年份演示整个变化过程,引发了众多网友的情感共鸣。这款魔表背后,其实涵盖了快手的动态人脸捕捉、基于时序的脸部变形与美妆、头发分割与染色、动态控制变老等技术。

jAVrmyj.gif

快手时光机

为了让 AI 算法能够在不同的手机设备上运行,Y-Lab 自主研发了一款深度学习推理引擎YCNN。负责人脸关键点研发的绣虎告诉机器之心,YCNN 能够在手机端执行底层的神经网络操作(比如卷积运算);建立一套量化流程,配合手机端代码加快推理速度同时不损失精度。团队做算法时也会根据 YCNN 的特点,有意识地设计相匹配的网络结构。

然而,Y-Lab 遇到了许多企业实验室的通病:优秀的前沿算法在转化为产品价值时后继乏力。由于 Y-Lab 本身的定位是前沿探索,对业务产出不高是预料中的事情。但作为企业实验室,Y-Lab 不可能像学术机构那样做「阳春白雪」的研究,需要对业务带来贡献。

2018 年,Y-Lab 为魔法表情部门设计了许多新的底层算法,比如 3D 照片、天空影像、人脸关键点等等。但是,由于 Y-Lab 和下游的特效团队分属两个部门,之间的沟通问题导致整个魔法表情的上线流程不如预期,用户数据也不理想。

究其原因,负责语义分割的晨星透露,算法做好到真正的落在产品上还涉及多个部门。「我们(Y-Lab)只是集中到算法这一个层面,算法做完之后怎么去落地,不是一个部门可以完成的。这样就出现一个问题,算法做出来之后,去和确保落地后的效果是好的,如果不在一个部门,中间就沟通成本会比较高,算法最终出来的效果不可控。」

去年年底,部门进行了一次调整来解决这个问题,将魔法表情部门的特效团队合并到 Y-Lab,同时招募了几位计算机视觉相关的算法大牛,加入了产品经理,增加了产品设计和工程化的能力。

为了增加团队内部的沟通,Y-Lab 除了每周一开会之外,今年还新设了一个单元,叫做「胜利会议」:员工聚集在一起分享这周的进展和成果,大家可以带着零食有说有笑地开会。

据几位老员工透露,部门调整之后,团队的沟通变的更顺畅。合并之后的第一个项目是做染发特效,晨星所在的团队用深度学习做了头发区域的语义分割算法,特效团队基于算法做了染发的特效,上线之后用户数据的表现较好,也因此获得了公司内部的「闪电奖」。

jYJzAfQ.gif

染发特效

作为这次结构调整的一个标志,快手正式将 Y-Lab 改名为 Y-Tech。从 Lab 到Tech,背后是整个实验室定位的改变。

组织结构的调整对团队多少带来了影响。晨星说,过去团队的主要精力主要在研发上,现在也要关注产品落地的业务,负责的东西更多了。不过,他不认为整个部门的基因有改变。「我们还是在跟踪最前沿的技术,做一些意愿性很强且潜力很大的事情。」

为了继续加强整个实验室的前沿探索能力,在此次结构调整中,快手给 Y-Tech 加入了一支生力军——来自西雅图和硅谷的海外实验室。

算法背后的普惠价值

刘霁和王华彦在去年下半年加入快手,在提到为什么加入快手时,两人都不约而同地提到了价值观。

2018 年年初,刘霁在北京国贸大酒店的宴会厅上遇到了宿华,两人在那一年同时入选《麻省理工科技评论》中国科技青年英雄榜。刘霁当时是腾讯AI Lab 的专家研究员、美国罗彻斯特大学的助理教授,因「让机器学习算法更准确更高效,探索人工智能潜力的边界」获得了发明家的称号;宿华则凭借在快手取得的巨大成功获得「创业家」称号。

两人此前未见过面,但和宿华交流之后,刘霁产生了加入快手的兴趣。「我们(指他和宿华)在做事情时,比较讲究逻辑。国内的许多公司还是习惯复制黏贴,但我觉得他做事情是从解决问题本身,从原理上出发,这一点和我的方法论是一致的。」

去年 11 月,刘霁加入快手,担任西雅图 AI 实验室和 FeDA 商业化实验室的负责人。

王华彦是斯坦福大学博士,师从 Coursera 创始人 & 斯坦福大学教授 Daphne Koller。毕业后,他加入了硅谷人工智能独角兽Vicarious的创始团队,一呆就是四年。

jQfyiyv.jpg!web

王华彦在 2019CVPR 快手展台上

为了招募王华彦,郑文特地飞到硅谷和他进行交流。王华彦说,他能感受到提升 AI 算法效率对快手有着非常紧迫的需求。「快手希望在手机上可以用最先进的算法这种需求和我的研究兴趣—比如怎么样把 AI 的算法做到和人一样高效—是一样的。」去年 7 月,王加入了快手,担任硅谷实验室的负责人。

虽同在海外,两个实验室的研究方向和定位不太一样:硅谷实验室的关注点在数据效率和计算效率,针对 Y-Tech 的产品业务。据王华彦透露,硅谷实验室近期将会上线一个项目,能够做到在安卓上的模型版本达到和 iOS 一样的效果,「举一个例子,即使是在快手老铁的千元机也能呈现和苹果手机一样的美颜效果。」

⻄雅图 AI 实验室目前关注端上模型压缩的前沿算法。今年,刘霁教授带领的快⼿研究团队和罗彻斯特大学合作,发表了两篇基于能耗建模的模型压缩的论文,分别在 ICLR 2019 和 CVPR 2019 上发表。两种⽅法都是基于硬件模型的个性化模型压缩--让人工智能也能普惠到大量的低端机用户,第一篇 ICLR 2019 论文主要通过权重级的细粒度剪枝获得稀疏性,第⼆篇 CVPR 2019 论⽂主要通过 Channel 级的粗粒度剪枝获得稀疏性。

和学术界探索未知的可能性不同,刘霁的研究思路围绕快手平等普惠的价值观,即让每个人都有平等记录的权利。「我们和现在的许多学术论文最大的区别是,他们其实是离线做的,不考虑实际硬件的局限。我们现在做的事情都必须要在⼿机端,数据讲究实时性。而且,许多快手用户的⼿机都是千元机,我们很多 AI 的功能都需要在这些低端的配置上运行,这对我们技术提出了更高的要求」刘霁说。

另⼀个刘霁教授负责的部门—FeDA 智能决策实验室。这是与商业化团队建立的西雅图和北京联合实验室,主要专注在使⽤前沿搜索技术,高效精准的连接用户价值和商业价值。这也是在 2018 年 10 月,快⼿正式对外宣布开启「商业化元年」的⼤背景下建⽴的部⻔。多说一句,Fe 指的是快⼿的特殊名词—「老铁经济」(Friend Economy),它同样是化学元素符号中铁原子的缩写。

据刘霁介绍,现在整个西雅图实验室目前⼗人左右,但「一个人支撑一个项目」。最近,FeDA 为了广告推荐部⻔重新设计了基础计算设施,从主流的 CPU 的处理方式改成了 GPU 的解决⽅案,单机效率提升了 600 多倍; 将强化学习应⽤到⼴告竞价,收益提升了 5 个百分点。

emqyiqv.jpg!web

刘霁在 2019CVPR 快手展台上

「极致」的意义

在 2019 年的快手年会上,宿华和另一位创始人程一笑说了 20 次「追求极致」。宿华在年会上强调,「希望每一位同学能够有追求极致的精神」、「不追求极致,我们就赢不了」。

如果联想到近日快手曝光的一封内部信,就不难看出,向来稳重和佛系的宿华为何会在年会上如此情绪激动。

6 月 18 日,快手两位创始人的内部信被曝光,罕见地以言辞激烈的方式告诫公司员工,快手将「变革组织、优化结构,在 2020 年春节之前实现 3 亿 DAU 的指标。」

在这封内部信发布之前,快手依然保持快速增长。2018 年全年,快手日活增长了 6000 万,DAU 达到 1.6 亿。前不久,快手副总裁王强宣布快手日活用户已超过 2 亿。创立八年以来,快手的员工数量已经超过了 8000 人。但快手的竞争者同样在发力。截至 2019 年 1 月初,抖音的日活数量已经超过了快手,突破 2.5 亿,月活数也已经超过 5 亿。

创始人在内部信中说,「看起来不错的数字背后,我们看到了深深的隐患:我们已经不是跑得最快的那支队伍,在长大的过程中,我们的肌肉开始变得无力,反应变慢,我们与用户的连接感知在变弱。」

「是的,我们对现状很不满意,松散的组织、佛系的态度,『慢公司』正在成为我们的标签。这让我们寝食难安。去年年底以来,从我们两人开始,快手管理层进行了深刻的自省和反思。」

据快手内部员工告诉机器之心,快手的各个部门已经开始进入战斗状态,不少员工自发地周六来到公司加班,甚至有些部门都出现了「996」的状态,这在过去的快手是比较少见的。

技术部门并没有因为 3 亿 DAU 这个「大型 KPI」而做出明显的调整,他们能做的就是像宿华说的那样去「追求极致」。

Y-Tech 的梦松举了例子,「我们这边同时在研究许多前沿的新技术,立项要求是做出来要领先竞品至少三个月到半年的时间,这些技术都没有成熟的方案可供参考,甚至业界鲜有人在尝试,但大家都很有意愿和动力朝着这些方向努力。」例如,在混合现实领域,快手在探索适合快手用户的产品形式,致力于把先进的技术在用户的手机平台上实现,用算法带给用户新奇的体验。这是很有挑战性的项目,但即便如此,快手依然要走这条路。

快手圣地亚哥实验室的负责人王祥林告诉机器之心,他所在的音视频团队目前的一些工作,可能大部分内部员工都不知道:快手正在参与制定新一代的视频压缩标准。与世界各大公司、高校科研院所一起,快手争取将自主研发的技术放入国际标准中,掌握下一代视频压缩标准的话语权。

追求极致,听上去似乎是一个抽象的概念,但对快手有重要的战略意义。

在快手,用户行为随时随地都在影响内容推荐,比如点击某个视频、加心、评论、观看视频长度等等,在用户下拉页面的同时,内容也在实时地变化。快手的生产者占比非常高,也就需要快手去处理比竞品多几倍的 UGC 数量。快手是一家重算法的技术驱动公司。即使是百分之一的算法提升,都能转化为巨大的商业价值。追求极致的一小步,对快手来说是一大步。

结语: 人工智能提升幸福感

受访的这些快手老兵,多数都是快手平台的忠实「老铁」。

有了小孩子之后,晨星已经拍了两三百个自己孩子的视频。他说他属于简约派,不太用魔法表情之类,但是他老婆喜欢用,比如用魔法表情把小孩变丑之后然后拍个视频,觉得特别好玩。

「因为我们是懂算法逻辑的,觉得这个事情可能没有那么神奇;然后她们会觉得这个特别神奇,就特别喜欢拍。看到家里面人玩这种魔表,他们表现得很惊奇,我其实还是觉得蛮有成就感的。」

朝旭说,他是极度重度的快手老铁,「我一般情况下刷快手在一个小时左右,这还不包括看后台数据的时间。」和普通老铁不同,朝旭刷快手会看哪些内容是他没有识别到的。「比如,这个标签我是不是没有加,哪些地方我识别的还不是很准。」

由于常年在硅谷,王华彦看快手平添了一丝怀乡之情。「我看过一个视频,是一个农村的场景。老太太走在路上,然后一个邻居就上来要拉老太太去她家里吃饭。在中国农村,你知道人情味特别重,然后老太太就不愿意去,然后那个人就非要拉去,她们俩就像打架一样,在路上就那样拉扯起来了。」

「如果是在中国农村,有这种经历的人会觉得这是个很常见的场景,但是它不会出现在任何一个正式的记载当中。如果没有快手这样的平台,这种中国民俗文化的东西,可能再过 50 年之后就没有了。」

在去年的图灵大会上,宿华曾经说过这么一段话:「AI 应该用来解决什么样的问题,不是数学上的问题,而是说为社会、为人类应该解决什么问题,想了很长时间有了一个答案。在这些年实践的领域中,我想明白了不管我们做什么样的技术,最后都应该用于提升人类的幸福感,或者是做到幸福感的改善。」

这种幸福感,指的就是这些吧。

(备注:文中朝旭、水寒、月朗、绣虎、晨星、梦松均为化名)


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK