作者 | 神经小姐姐
本文经授权转载自超神经HyperAI(ID:HyperAI)
4 月 4 日,四川凉山的森林大火罹难者又增加了一位,这场无情的灾难中,遇难的救火人员总数达到了 31 位。这是一个令人沉痛的数字。
森林火灾没有办法完全避免,我们也经常在报道中,听闻火灾带来的巨大损失。那么对于森林大火的,有没有能够抵挡的方式呢?
在救灾工作中,及时掌握全面而准确的信息,以实现资源的合理分配,是至关重要的。而现在,基于 AI 的技术,正在发挥着一些作用,它能够帮助我们与时间赛跑,挽回更多生命和损失。
也许在下一次面对大火的时候, AI 能够帮助我们抵挡住野火的肆虐。
在火灾中发挥作用的 AI 技术
场景介绍:对于无法消除的森林火灾问题,AI 技术结合卫星图像,能够在救灾过程过程中作出及时合理的见解,帮助人们将损失降到最低。
关键词:火灾救援、卫星影像、卷积神经网络
在去年损失惨重的加州大火中,就有一家叫 CrowdAI 的公司通过卫星数据,综合图像视觉技术参与了救援。
CrowdAI 使用 Spacenet 和 Deepglobe 的卫星图像,以及 DigitalGlobe 和 Planet Labs 的数据,训练卷积神经网络。
只需一秒钟的时间,就能预测和评估受灾程度,再将评估结果报告给救援指挥中心,帮助科学调配救援资源,制定更科学的救援方案。
对卫星图像实现建筑物的识别
借助于 CrowdAI 自定义的深度学习模型,除了标注常规的房屋建筑,还扩大到了独立结构,比如车棚、公用设施棚和谷仓等。
在那一次的火灾中,从卫星图像中识别出结构后,根据受灾前后的图像对比, AI 模型用红点标识出损坏所在的位置。
对受损建筑等用红点标记
拓展到整个地区,通过标记点的数量定出受灾的严重程度,就能用不同的颜色区别出受灾的程度。
最后在 Google Earth 或 ArcGIS 上标记出来,就能为救灾和重建工作做出指导。
不同区域的受灾程度
对于不断追求评估速度的目标,CrowdAI 的创始人兼首席执行官 Devaki Raj 说到,「当灾难发生时,我们必须要快速的给出预测,这就是我们需要这种速度的原因。」
很多救援人员和级政府官员,通过这些快速生成的数据,更合理的协调了救援工作,这提升了解决紧要问题的效率。
为了尽可能准确的完成受灾情况的评估,之前的方法需要很大量的数据训练,但 CrowdAI 的机器学习负责人Jigar Doshi 提到,「因为机器视觉技术已经很成熟了,我们不需要训练很大的模型(对受灾情况),就能进行有效的评估。」
卫星数据在 AI 引导下的人文关怀
CrowdAI 利用卫星图像,通过计算机视觉等技术,提供数据服务,稍有不同的是,他们把精力主要投入在了自然灾害方面。
CrowdAI 还与 Facebook AI 进行过合作,研究飓风和火灾造成损失的评估工作。
他们的研究成果《From Satellite Imagery to Disaster Insights》也被 NeurIPS 会议所接受。(https://aiforsocialgood.github.io/2018/pdfs/track1/23_aisg_neurips2018.pdf)
在论文中,他们的研究获到了很好的成绩:在 2017 年德克萨斯州附近被飓风哈维损坏的道路识别时,达到了 88.8% 的准确率,而在 Santa Rosa 火灾中识别损坏建筑物时准确率达到了 81.1%。
通过对比灾难前后的图片数据,并且与人工提取作对比,计算出灾害影响指数( DII )
而在灾难预测的方面, CrowdAI 也在探索能够预测到的灾害模型,据称,他们在尝试通过整合风力、降水和社交媒体等数据,积极开发能超越卫星图像的深度学习工具。
对抗火灾,AI 在前进
除了 CrowdAI ,也有其他的公司和机构正在做着相似的努力。
大自然保护协会,正在利用小型卫星的图像和 AI 技术,引进森林的消防工具。通过数量众多的小型卫星,拍摄而成的高清图片,对森林状况进行实时的监控,通过 AI 的数据分析,能够及时的作出预防和报警。
还有一家叫做 Salo Science 的公司,正在通过 AI 技术,研究对森林火灾风险评定的工作。他们在开发的 AI 产品,同样是基于卫星图像和数据,通过对树木等情况,综合地形、地势、可积燃物等因素的分析,给消防人员提供森林的区域地形图以及风险指示数据。帮助他们在危险来临时,作出更好的选择。
Salo Science 所分析的加州野火和木材采伐造成森林损失的数据
此外,对于消防机器人的研究,也一直在进步。在前段时间的报道中,萧山消防机器人就在一场大火中大显身手,通过冲进火场、侦查探路、与消防人员协同作战,最终成功灭火。但消防机器人还不够智能,不能应对复杂的地形,目前也不能单独进行救灾。
也许,在不久的将来,这些结合了 AI 或者机器人的应用,能够降服可怕的火灾。
谷歌和麦肯锡全球研究所做过一份报告,主旨是关于 AI 造福人类的案例,报告中提到,「 AI 能更准确地提供救援工作和应急准备,相比于人类救援要更快速,而且适用范围更广。」
期待 AI 能够制服火灾的那一天!
好学,高效的Python,薪资竟也这么高:
【End】
热 文 推 荐
☞下过富士康工厂、做过华为外包,这位程序员是如何花 6 年逆袭成为技术大佬的?
☞身为程序员的父母,你年薪多少才能让“码二代” 不输在起跑线上
☞搜狗员工吐槽“统计加班时长裁人”,CEO 王小川破口大骂:“赶快滚”
☞EOS现状: 72%应用涉赌被列为高危, 说好的诗和远方, 你竟沦落成了这样?
☞ICPC 2019国际大学生程序设计竞赛,中国高校未能夺冠
System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"
你点的每个“在看”,我都认真当成了喜欢


前言
平时用docker很多,今天深入了解下docker原理层面的实现,包括docker核心概念,文件系统,资源隔离,网络通信等
参考文章:
Docker底层原理(图解+秒懂+史上最全) - 疯狂创客圈 - 博客园
docker - Libnetwork CNM框架与实现 - 187J3X1 - SegmentFault 思否
docker网络配置:bridge模式、host模式、container模式、none模式 - 熊仔其人 - 博客园
一、docker的核心概念
docker的核心组件包括客户端,守护进程,容器、镜像、镜像仓库
docker是Client/Server架构的系统,由运行在宿主机的守护进程控制主机上的容器,接收客户端的请求
由主机上或远程的客户端与守护进程交互,提供执行命令对资源操作
镜像是一个轻量级的,可运行的软件包
容器是镜像运行的实例
镜像仓库是用于保存镜像的中心
二、docker与虚拟机
虚拟机在宿主机操作系统上创建虚拟层、虚拟操作系统、在安装应用,docker在宿主机创建docker引擎,创建应用共享宿主机内核
虚拟机分钟级启动,单机支持几十个,docker秒级启动,单机支持上千个
虚拟机提供了系统级别的隔离性,docker利用linux提供的namspaces和cgroups进行隔离
三、docker的分层镜像
docker分层镜像是基于Advanced UnionFS(or AUFS,联合文件系统)的,利用mount将不同的文件夹挂载按顺序挂载到一个目录下,上层的文件会覆盖下层的同名文件,且只有最上层是可读写,往下都是只读的
docker镜像是分层的,在构建时每次RUN都会加一层,相同的base镜像是共享的,节省存储空间,容器运行时会增加容器层,只有容器层是可写的,镜像是只读的,利用的是copyOnWrite技术
四、docker的环境隔离
docker利用linux的namespaces(命名空间)实现PID、IPC、网络、挂载点等系统资源的隔离,利用CGroups(控制组)实现CPU、内存、带宽等物理资源的隔离
五、namespace相关操作
可以在/proc/[pid]/ns
查看进程的各个namespace
clone()
创建新进程同时创建namespace
setns()
为当前进程设置namespace
unshare()
跳出原先的namespace进行操作
六、docker的网络模式
- bridge模式,默认启动docker0网桥,启动一个容器时分配一对虚拟网卡,并设置docker0为默认网关,利用iptables定义NAT配置
- host模式,与主机共享network namespace
- container模式,与某个容器共享network namespace
- none模式,不提供联网
七、容器网络模型(Container Network Model)
由Sandbox、Endpoint、Network组成
每个容器包含一个Sandbox保存网卡Interface、路由表等,一个Sandbox可以包含多个Endpoint,这些Endpoint可以来自不同Network,Sandbox的典型实现是Network namespace
Endpoint由Network创建并归属于Network,当Endpoint加入Sandbox,代表该Sandbox加入了Network,Endpoint的典型实现是veth-pair
Network可以创建多个Endpoint,将Endpoint加入到Sandbox,实现多个Sandbox的互通,典型实现是Linux bridge
八、CGroups
Linux将物理资源划分为/sys/fs/cgroup下的不同子系统,如cpu、内存、网络带宽等,cgroup能为一组进程分配资源,并且cgroup是有层级关系的,子节点会从父节点继承资源限制,并且该限制百分比是基于系统总资源而言的
评论记录:
回复评论: