千里走单骑——为雨林而赢得的 Kaggle 奖牌

作者 英伟达中国

有时候,你需要看见树木才能看见森林。

戴术斌此前曾以 1000 公里山地自行车骑行的方式庆祝过圣诞节,并在旅行中近距离观察了中国最大的雨林。

这一次,这位长沙的数据科学家在庆祝自己赢得了一张 3 万美元的支票,这是他在一次主题为利用卫星图像保护更大的亚马逊雨林的数据科学竞赛中获得的奖金。

由数据科学竞赛 Kaggle 平台组织的挑战赛,通过区分森林损失的人为因素和自然因素来追踪亚马逊雨林的人类足迹。按照竞赛网站的说法,这将使雨林的保护更有效、更及时。

戴面对近千名竞争对手,但他拥有其他人缺乏的优势 — 雨林中的实地经验和我们的 GPU 装备。标记卫星图像来指明他们拍摄的森林是否因为耕种、非法采伐或其他一些活动而被清除。

由于戴曾近距离观察过森林采伐,他可以通过查看卫星数据而准确地再现地面上发生的事情。他利用这种洞察力设计了一个 GPU 加速的深度学习模型来自动标记图像。

戴术斌骑自行车到中国最大的呀诺达雨林时穿过一条小溪。(图片由戴提供)

森林损失的代价

世界上最大的亚马逊雨林能够稳定气候、产生氧气和水,并容纳了全球大约 30% 的物种,在维持生命的方面发挥不可估量的作用。

但是它正逐步遭到破坏。据权威的 mongaby 环境科学网站报道,过去 40 年里,因气候变化、放牧、农业产业化和砍伐等原因,亚马逊仅在巴西境内就损失了大约五分之一的森林,面积超过了加州和新墨西哥州的总和。

在 Kaggle 竞赛中,设计和使用卫星以收集地球图像的组织 Planet,以及巴西同行 SCCON 要求参赛者在高分辨率卫星图像中标记大气条件和土地使用情况。

利用扫描卫星图像来监测雨林状态的设想并不新鲜。但是依据 Planet,多数方法依靠的是较低分辨率的图像,限制了他们观察森林退化、小规模森林采伐以及区分森林损失的人为因素和自然因素的有效性。

亚马逊雨林比其他陆地生态系统拥有更多的动植物物种,包括树蛙。(Benedict Adam 的拍摄作品,遵循知识共享许可协议。)

一个人与他的自行车

在 Kaggle 竞赛中取名为“bestfitting”的戴,参与平台仅一年时间,就在所有 66,453 名 Kaggle 竞争对手中排名第四。在过去的七场比赛中,他都取得了前 1% 的排名,但这是他第一次获得冠军。

戴的日常工作是在自己创立的公司里管理一支由 200 名计算机科学家组成的团队,为中国的银行提供咨询和软件开发服务。周末,他骑着山地自行车,长距离穿越中国的草原、山脉和森林。

但改变一切的是中国南方沿海的海南岛热带雨林之行。

“我的初次印象是它那么美丽。但是当我看到许多森林遭到破坏时,就变得悲伤。”他说。“即使在保护区,找到一棵大型树木都不容易。”

这促使戴去了解更多有关雨林破坏的情况。Kaggle 比赛开始后,他很快就参与进来,尽管他已陷入另一场艰难的 Kaggle 竞赛。

“当我在 Kaggle 竞赛中面临困难时,我想起了雨林中的一些时刻。我们常常早上 6 点钟开始。晚上 11 点钟结束。有时甚至到凌晨 1 点。我非常疲倦。”戴说。“但多亏了这一切,我学会了面对挑战时保持冷静,在看上去无望的时候继续前行,并一直心怀感激。”

亚马逊雨林的部分森林,已被开垦为农业用地。(Benedict Adam 的拍摄作品,遵循知识共享许可协议。)

GPU 24/7

戴借助 CUDA 并行计算平台和 GeForce GTX TITAN X GPU 以及由 cuDNN 加速的 PyTorch 深度学习框架,利用 4 万幅图像组成的数据集的一半数据来训练神经网络。

他的任务是训练网络为图像添加 17 个标签中的一个或几个,以指明它们是否出现森林被破坏的迹象或它们所显示的大气条件。戴在竞赛网站上深入论述了他的解决方案。您也可以在 Kaggle 博客上阅读他的采访报道

戴术斌还使用 TITAN X GPU 进行推理,这是部署算法的过程。

他说:“我的 GPU 几乎每天保持 24 小时运行,其稳定性超出了我的预期。”

此后,他又添置了更多的 NVIDIA GPU,计划将其应用于更多深度学习项目,以期改善环境和推动医学进步。

如需了解保护雨林的另一种深度学习方法,请参阅《树的公司:AI 绘制雨林的生物财富地图》。

*本故事的主要图片拍摄自亚马逊雨林,由 CIAT 的 Neil Palmer 通过维基共享资源提供。