机器学习 – 化繁为简
原文链接: https://www.nv5geospatialsoftware.com/Learn/Blogs/Blog-Details/machine-learning-simplified
21004 文章评分:
5.0
机器学习 – 化繁为简
匿名作者 2014年11月18日,星期二
今天的博客来自客座博主,NVIDIA公司的Tom Reed。有人认为显卡仅用于渲染和可视化,但借助笔记本电脑中的高端GPU和一些脚本编程,笔记本电脑便能拥有超级计算机般的处理能力!NV5的定制解决方案团队已利用NVIDIA CUDA框架开发了工具,通过GPU加速关键图像处理任务,如正射校正、大气校正以及PCA和ICA等图像变换。我们还创建了一个名为AMPE(先进大规模并行处理引擎)的库,用于在IDL中启用GPU加速。这些工具作为授权技术存在,如果您有实时图像处理需求(如灾害制图)和大规模数据处理需求(例如商业数据生产),它们将带来极高的性价比。NVIDIA慷慨地为我们提供了K40显卡,我们正在用新硬件重新进行GPU性能基准测试,敬请关注。
本博客讨论机器学习(ML)和深度神经网络(DNN),它们是GPU如何提供额外处理能力的优秀分析密集型案例。
与另外两个热门词汇(云计算与大数据)类似,机器学习正被如此广泛地解读,以至于变得既无意义又包罗万象。我并非要解决这个问题,而是希望戴上我的务实视角,用简单的语言分享为何我认为机器学习(ML)对当前及未来的地理信息系统(GIS)/情报、监视与侦察(ISR)应用场景具有变革性的价值。
为简化讨论,让我们快速聚焦于机器学习的一个子集——深度神经网络(DNN)。ML的这一领域已在现实世界的应用中广泛使用,从网络搜索预测到理解当您对着手机说“我在哪里能找到好吃的热狗”时,您想要的是午餐而非可疑的网络图片。
DNN也广泛用于图像中物体的检测和分类。它对于输入数据的类型非常灵活,这一点我们稍后会讨论,但现在让我们继续关注图像这个主题。许多人可能会想:“我已经有检测和分类图像中物体的绝佳方法了”,这是对的。从这个角度看,DNN,也就是机器学习,并非新鲜或陌生的事物,它只是达到相同目的的不同手段。
那么,为什么要关注DNN/ML呢?它好在哪儿?传统图像处理方法与DNN方法之间的区别,既在于它作为更好的物体检测器,也关乎未来的应用和多功能性。当我们希望我们的图像检测和分类方法能做得更多时,这种多功能性就显得尤为重要。让我们看一个例子。如果我想在互联网上的每张照片或视频中检测橙色的躲避球,我可以采用一种传统方法,该方法使用一系列基于像素的处理算法来过滤掉某些像素并增强其他像素,以帮助找到那些“看起来”像躲避球的东西。这些过滤器需要由非常聪明的软件人员巧妙地构建,基于他们认为定义躲避球的重要特征。这种方法或多或少是静态的。也就是说,如果我想找的是茶壶,软件就必须重新构思和编写。这种方法也容易将橙子的图片误认为橙色躲避球,从而错误地检测那些“看起来”像橙色躲避球的物体。DNN在处理这个问题上则截然不同。

DNN有两个步骤。第一步是学习步骤,通过提供大量包含橙色躲避球的图像和大量不含躲避球的图像,创建一个能正确识别图像中躲避球的模型。然后是第二步,分类步骤,将该模型应用于任何普通图像或视频帧中以寻找橙色躲避球。这两种方法在定义何为躲避球上存在根本区别。
使用DNN时,模型不是静态的,也不基于人类的感知。它是高度抽象的,通过向DNN展示大量包含和不包含躲避球的图片,让DNN推导出它能使用哪些特征来最准确地区分正确检测和错误检测。这个训练过程可能耗时较长且需要大量计算能力,但结果非常有效。这就是为什么一个GPU技术专家会讲这个故事。GPU特别擅长DNN所需的计算任务,而且,创建和处理图像本来就是GPU最初被发明出来的原因,所以这似乎是绝配。
现在回到DNN类似于传统图像处理方法但更灵活的观点。假设我不仅想检测躲避球,还想检测正在飞向人的躲避球。我们可以不断外推这个查询,使其变得越来越复杂,最终得到一个我们真正可以用来回答有意义问题的东西。DNN的美妙之处在于,这种更复杂的查询演变只是同一个训练/分类过程的自然演进。我们只需要找到数据来训练模型。我还可以补充一点,除了输入图像并帮助告知模型其分类效果如何之外,不需要更多的人为干预。
DNN不必将事物分解为人类可理解的特征,这使得那些我们看不到或无法理解、但擅长分类物体或行为的属性变得非常有用。您可以同样轻松地用文本数据、信号数据或一些非结构化数据源的融合来训练DNN。ML天生适合多情报整合和上游数据融合。NVIDIA正在与Exelis合作,研究ML可以在哪些方面提升分析能力,并为未来的挑战提供解决方案。将DNN集成到已经在用GPU执行的任务中,似乎是探索机器学习的一个便捷且高效的入口。
希望这个简化的讨论有助于让机器学习不再那么模糊不清,并更具吸引力。