订阅移动开发RSS CSDN首页> 移动开发

彩云天气: 328万元大奖背后的故事

发表于2014-12-29 10:40| 次阅读| 来源CSDN| 0 条评论| 作者Zion

摘要:目前,大部分天气类应用都可以查询到未来一天甚至一个月内的天气情况,而彩云天气却反其道而行,他们利用深度学习算法,可以精确预测未来一个小时以内的天气变化。并凭此获得了高德LBS应用大赛328万元的大奖。
对于大多数人来说,天气预报和空气质量监测应用已经成为装机必备的软件。而天气预报误报、错报的情况人们也已经司空见惯,次数多了,也就不足为奇。尽管公众对于天气预报准确性的容忍度较高,但在北京集智俱乐部里的一群热爱人工智能的技术极客看来,天气预报的准确度还有很多可以提升的空间。于是,在袁行远的组织下,集智的极客们开发了一款名叫彩云天气的应用。

现在的大多数天气类应用,都是显示未来几天的天气情况,而彩云天气则通过对中央气象台的雷达数据进行图像分析,准确预测精确到分钟的天气走势,用户还可以通过降雨量地图看到整个城市最近的降雨动态。彩云天气界面简单,顶部是通过手机定位后的地理位置,中部是时间、天气和温度,以及“36分钟后小雨渐停”之类的预测,再往下拉就是降雨量地图,动态显示过去两个小时内的降雨情况。

凭借这样一款产品,彩云天气团队在不久前获得了“2014高德LBS应用大赛”328万元的大奖。近日,CSDN采访了彩云天气团队,请他们聊聊彩云天气开发背后的故事,以及技术极客们对于计算机科学及深度学习方面的思考。

CSDN:在美国有一款非常成功的短时天气预报产品Dark Sky,彩云天气的诞生是否受到了这款产品的启发?

袁行远:开发高精度降雨预报是我原创的想法,刚开始做的时候不知道有darksky的存在。因为我一直都比较喜欢气象,比如雨季的时候我会通过分析雷达图去给朋友们判断回龙观什么时候下雨;因此我觉得这件事是有价值的。在过去,气象台对不同地点进行天气预报时(比如奥运会的各个场馆),需要找预报员来值班,成本通常比较高,而我如果让机器通过雷达数据去分析不同地点的天气情况,则会极大的降低成本,把先进的科技带给普通人。另一方面,我认为做彩云天气最有意思的部分在于,我不知道它最终能不能实现。比如说做个电商类或社交类的App,不管它的商业模式是否成功,但起码在技术上,这个应用是可以按照我的想法实现的。但这个产品的情况刚好相反,我当时说想预报每分钟是否有降雨,大部分人都说不可能,我自己也不知道技术上是否能实现。这个精神也是我想分享给其他开发者的,那就是去做一件你不知道是不是能做成的东西,直面挑战,而不是坚守已成套路的东西。(传说中的hard模式……)

大约做了一个月后,我看到了Dark Sky,Dark Sky让我认清了两件事:1. 这个东西是能做出来的;2. 这个东西是有人用的。虽然如此,在我第一次知道Dark Sky后,还是有点沮丧,甚至想放弃,因为别人已经做出来了。但转念一想,国内用户还是无法享受Dark Sky的服务,因此知道darksky的存在更坚定了我继续下去的决心。

CSDN:你是否介意被称为中国的Dark Sky

袁行远:不介意。彩云天气的英文是Colorful Clouds,Dark Sky翻译过来是“黑暗的天空”。我们故意跟它形成一种“对仗”关系,也是一种致敬。其实最初我们的名字叫局部地区,后来感觉太土了,才改为彩云天气。这个名字也出自《滕王阁序》中,“云销雨霁,彩彻区明”的诗句。

CSDN:请介绍一下你的个人背景。

袁行远:我生于四川,毕业于山东科技大学数学系,毕业后在青岛的一家本地生活搜索公司普加网工作,主要负责搜索引擎和数据挖掘相关的工作,带了十几个人的团队。后来觉得青岛的互联网氛围没有北京好,于是从青岛来到北京,就职于淘宝北京分公司。我在淘宝的工作主要是关于商品搜索推荐的,当然也干了一些脏活累活,比如分布式计算平台之类。2013年2月我从淘宝辞职,打算先玩一玩,于是先后去了广州、深圳、上海、苏州等地,由于我喜欢科技,所以也去了大亚湾核电站、明斯克航母之类的地方。这两年一直在北京LEAD阳光志愿者俱乐部,周末会去北京周边的打工子弟学校做兴趣课辅导,辞职以后为LEAD阳光开发了一个协同教案编写与分享网站“阳光百科”。Gapyear期间也学习了一些计算神经科学相关的理论,参加了集智俱乐部的一个脑与深度学习读书会,现在彩云天气团队的成员有一部分曾经是读书会的核心成员。

CSDN:中央气象台有专门的数据公布,几乎所有天气类App都是用同一个数据源,如此一来,你们如何保证彩云天气预测结果的准确性?

袁行远:的确,大多数天气类应用使用的数据都是气象局的预报结果,但也有一些爱好者会去看一种被称为“气象雷达基本反射率”的数据。它也是向公众公开的,但由于没有公开经纬度和半径,所以处理起来比较困难。而我们从卫星地图上寻找雷达,然后通过与雷达图对照得到坐标,使得用机器处理雷达图这种更高精度的数据源成为了可能。不过我们在2014年9月已经和中国气象局达成合作,目前已经开始和气象局合作进行分钟预报技术研发,数据源和预报结果的准确性应该都会有进一步的提高。

CSDN:这看起来技术门槛很高啊。

袁行远:是的,光是找数据源就能挡住90%的人。这就好像写文章前要先找到纸和笔,于是很多人就说,只要搞定那张雷达图,剩下的事分分钟能搞定,但这只是纸和笔。很多人找到纸和笔之后才发现还要写文章,文章怎么写?这里面的技术难度跟找到纸和笔比起来不是一个量级的。刚才只说了定位,定位后还要降噪和预估雨带的移动。我们会给用户在快要下雨时发出一个提醒,比如告诉用户“30分钟后会下雨”,然后我们会掐一个40分钟的时间,如果在这段时间内下雨了,就说明预测对了。昨天我们发了1500多条提醒,96%都是正确的。

其实数据只相当于原材料,预报的结果才是做出来的菜。下图是一个例子,显示6月的某一天雅虎天气和中央气象局预报的结果。当时有一阵突然起来的暴雨,但一会就停了,可以清楚看出他们都只针对整个城市进行预报,没有考虑到暴雨的突然性。


CSDN:如此看来,彩云天气的价值远远大过B2C的范围。

袁行远:可以这么说。今年7月,中央气象局新媒体中心开始跟我们接触,希望我们双方可以合作。这个合作已经达成,现在公众可以在中央气象局旗下的天气网看到我们合作的计算结果,或者打开中央气象局的官方App,里面分钟级别的高精度天气预报就是我们和气象局联合推出的。我们的目标是希望能在保证高精度的同时,将预报时间延长到2到3小时,另外实现冰雹、降雪等极端环境的预测。未来,我们还希望可以给行业用户提供气象相关的预警等天气数据服务。

CSDN:彩云天气用到了卷积神经网络,在你看来,深度学习最有意思的地方在于什么?

袁行远:我认为是机器自己的学习能力。你丢给它两张图,不告诉它什么是风速,什么是风向,什么是地形,什么是气压,它只是通过对自然界降雨情况的统计,就会告诉你下雨的概率。就好像我们做一道数学题,需要先学数学,再写公式,经过推算才能得出结果。但有一天,你只把题目和结果告诉计算机,等它看过一堆题目以后,你再给它一个它完全没见过的题目,它也能知道答案是什么。我们使用卷积神经网络,假如北京地区突然冒出一朵云,我们可以马上捕捉到这个现象。这就是具体的应用,但深度学习本身并不神奇。

CSDN:为什么说它并不神奇?

袁行远:深度学习其实学的是模式,利用模式来推知未来的现象并不是新想法。但神经网络算法的发展是一个量变到质变的过程。多层的神经网络其实大家一直在用,只是最近随着互联网的进步,计算能力和数据量都提升了,所以突然深度学习就得到质变。我觉得现在的计算机界有一种趋势:计算机科学等于计算机算法;计算机算法等于机器学习;机器学习等于深度学习。全部等下来,就造成了一谈到计算机科学,大家就想到深度学习。

从本源上来讲,图灵当年发明的纸带模型其实就是在模拟人的书写,在一张纸上能表示出来的东西,你都可以通过在一张纸上打点进行表示,如果纸带足够长,它就能表示足够多的信息。他一开始根本不需要造计算机,他的目标只是模拟计算的过程,图灵把他抽象成一个非常纯粹的东西,然后提出了所有可以计算和可以写出来的东西,都可以通过这个方法让机器来完成。只不过这里面有一个显著的缺点,就是操作纸带的程序必须是写好的,即要有一个规则。比如计算机里面有CPU,CPU里面有个指令集,指令集是固定的。现在神经网络发展的趋势就是要让这个固定的东西变得不固定,比如我们上周五读书会上讨论的“神经元图灵机”,用神经网络来训练指令集,这可能是以后深度学习发展的方向。

CSDN:不久前,你们刚刚赢得了“2014高德LBS应用大赛”328万元的大奖,最初与高德合作的契机是什么?

袁行远:一直以来,我都很喜欢高德。我对高德的动态路线躲避拥堵功能印象尤为深刻。这个功能非常贴心,因为普通路线规划只会告诉你一条最短的路径,不会随着行驶过程中的路况实时变化。有一次我在广州,打开高德导航,它提示说前方有隧道,司机师傅惊讶了,说“我都不知道前面有隧道”。还有一次我在四环上走,高德提示了一条路在地图上找不到,我拐过去一看,原来是条森林防火道,结果走出去一下子就到了。类似的例子非常多。所以当Google用不了的时候,我第一个想到的就是用高德来显示彩云的降雨量地图并提供定位功能。与Google相比,高德SDK可以节省近70%的流量,这是一个非常大的优势。而且彩云天气app本身有很多云层的动态效果,要求每分钟更新数据,这就需要我们的应用性能高于同类产品,而高德定位sdk的安装包比同类产品轻量得多,加载速度很快,这就能够提升彩云天气的用户体验。彩云天气目前在全球其他地方也有部分服务和用户,而高德定位sdk是之前国内唯一一家提供全球定位服务的sdk,这又与彩云天气的业务拓展不谋而合。

CSDN:与高德的接触中,还有哪些令你印象深刻的事?

袁行远:很早的时候,有一次我们发现了高德的一个Bug,就是下拉刷新后,地图有偏差。那时我们还没有正式合作,于是我写了一封邮件给高德说明这个问题。没想到他们的反应非常快,承诺在下一版中解决这一Bug,而在此之前可以帮我们改一下代码,让我们的App正常运行。其实高德当时完全可以不解决,因为我们不是它的主要客户,但他们还是把这个问题解决了。在我们正式合作以后,彩云天气1.3版本出现了一个问题,联系高德,高德的商务直接给我一个主管的QQ,让我直接跟他对话负责技术的刘叶维当时正在休假,但还是马上写邮件,请同事尽快解决这个问题。这两次给我留下了非常深刻的印象,即使是同一家公司的两个部门都不一定有高德的响应速度快,与高德合作,感觉就像大家在同一家公司办公一样。

0
0