企业网站设计 北京设计网页公司 网站建设
在网络安全领域应用机器学习的困难和对策
困难1 确定一个真正需要用到人工智能的任务
人当人工智能上升为国家战略,深度学习成为新兴技术。对于公司决策层而言当前应思考在结合目前公司发展在当前阶段是否真正需要用到人工智能技术。
首先,需要对人工智能技术有足够清晰和深入的了解。在当前阶段,人工智能的实现是由数据驱动的。优秀的人工智能是建立在海量行业数据的支撑下。
其次,人工智能开发和应用阶段都是计算密集型的。虽然所需的软、硬件计算环境与传统的软件开发有着很大的区别,但其带来的好处也是相对可观。以机器学习为代表的人工智能具备高效、自动化、可拓展的特点,极大程度上可代替人工处理日常事务。
开启一项人工智能项目, 大的难题是如何确定一个真正需要用到人工智能技术且可具备顺利研发并落地条件的任务。
对策
决策者需要在了解人工智能工作机制和其优缺点的基础上去思考并确定是否要在特定任务中运用人工智能技术。而在时机、成本、团队、可行性、预期效果等方面则需要重点考虑。
时机。思考在解决某特定任务时运用传统技术是否遇到瓶颈和缺陷,进而不得不需要研发下一代技术。对此任务,除了人工智能方案是否有其他更行之有效且简便的方法可以解决。如果没有其他可行方案,是否已经为采用人工智能技术方案而做好了采集相关数据的工作,或随时可以进行数据采集。只有充分思考这些问题后才能基本确定是否运用人工智能技术的作为解决问题的方案。人工智能不是万能药,却是一种有效但更为复杂的灵丹。
成本。永远别低估人工智能系统的成本投入。无论是开发还是维护人工智能系统都需要大量的持续投入,包括算力资源投入、人力资源投入以及数据收集、整理、存储成本投入等。很多组织没有足够的资金承担这样大规模投放,所以导致项目中途夭折,前期心血付之东流;因此在项目开始前期,需慎重思考是否有足够的能力承担应有的成本投入。
团队。人工智能系统的软件工程团队包括问题领域的专家(主题专家)、数据科学家、数据架构师等专业人才。这些团队成员带来了算法选择、模型构建、模型定制和数据管道管理等方面的技能,而这些技能构成了人工智能系统的核心。他们共同把控着人工智能系统的性能、可伸缩性、带宽、资源管理和版本控制等方面的高要求。
可行性。可行性的评估需要决策者对特定任务的本质有足够深刻的理解。某项任务能否通过人工智能技术实现自动化,基本上取决于这项任务的本质、能采集到的数据,以及这两者之间的关系。深度学习知名人物吴恩达曾经提过一个经验的规律:“如果一个普通人做某项任务的过程中,只需要思考不超过一秒钟时间就可以想通,那么这项任务很有可能可以用 AI技术自动化,现在或者就在不远的将来”,那么对于网络安全领域,如果一个专业水平在平均值以上的安全技术人员在某项任务中经过短暂的思考时间就能想通,那么这项任务大概率也可以通过AI技术实现自动化。
预期效果。对于预期效果的预判,前提是你对自己定义的任务和问题主题理解足够清晰。思考并确定人工智能系统可接受的性能和效率下限,以便工程师迅速接受指令并明确地向此目标优化系统。当然优化后的系统也会不可避免的出现误报和漏报状况,为此需要尽早确定该任务对误报和漏报的敏感度、风险成本的承担范围和处置机制。人工智能系统同样存在被绕过的风险,对抗性在网络安全领域无处不在,为避免对抗样本发生,怎样保护人工智能系统免受攻击也是一个需要提前思考的问题。
困难2 数据泛滥,难以获取高质量的训练数据集
网络安全领域往往不缺乏数据。每天都有无数攻击事件发生,安全厂商的后台数据库每天都能收录无数的攻击数据。但是单单依靠数据的数量不足以支撑开发一个人工智能系统,况且这些数据中不可避免存在着显著的冗余。数据的质量才是真正人工智能的基石。当前人工智能还处于弱人工智能的发展阶段,人工智能来自于从海量数据中学习规则、模式、特征和经验。在机器学习实现的人工智能工程中, 大的性能改进一般来自于更高质量的数据,而不是更复杂的算法。对于所有人工智能系统来说,其训练数据集的质量包括三个层面:
一是数据的多样性,这要求所收集的数据包含所研究范围的各种类型数据;
二是数据的可靠性,即数据被准确标识为是何种类型何种属性的数据;
三是数据的数量,即在数据采集清理加工去重后,可靠的数据的数量。数量太少则无法训练出可靠的模型,尤其是采用深度学习等参数众多的复杂模型的时候。
数据的收集、清理、标注、保护、监视和维护统称为人工智能项目的数据管理,这将贯穿着从项目立项到项目落地、维护、迭代的整个生命周期,且需消耗巨大的时间和精力,这需要占整个项目8成以上的时间。有别于其他领域,网络安全领域的人工智能系统项目的数据管理,其成本和难度更大,主要是因为以下原因:
1. 变化的环境。变化的环境一方面体现在业务的多样性,导致的是白样本的多样性;另一方面体现在对抗环境下,导致的是恶意样本的对样性;
2. 私有、公开数据少,且公开数据有效性不好。因为不同场景不同用户的数据有差异,公开的数据的场景和你所面对的环境和场景可能差异巨大而不可用。算法工具通常是开源的,但是好的数据集通常是专有的。安全领域更是如此。安全厂商倾向于“隐藏”与安全相关的数据,因此通常无法获得具有代表性的准确标记数据(尤其是涉及流量数据)。拥有庞大优质的特定领域数据集可以成为竞争优势的重要来源。
3. 数据加工清洗标注专业性高。标注人脸识别、猫狗分类、垃圾邮件等任务的数据,但凡受过基础教育的人就能胜任,而网络安全则属于专业性高的行业,标注网络安全检测相关数据集需要专业的安全工程师才能胜任。
4. 黑样本种类稀缺,难以集全。这对于后续系统的可靠性造成很大的影响。IBM的肿瘤专家顾问系统Watson for Oncology由于提出的治疗方案及其相关建议不安全,被迫终止。经过研究人员研究发现,正是由于该软件只针对少数假设癌症患者—而非实际患者数据训练而成,采用的黑样本种类稀少,因此在可靠性方面存在严重的问题。在网络安全领域,如果数据的黑样本不够全面将导致类似的可靠性问题。
5. 数据的非结构性。网络安全领域所要处理的数据无论是网络流量、恶意代码还是恶意文件,大多都是非结构化的数据,对此数据的加工处理比结构化数据要复杂困难。
6. 数据清洗,自动化困难,工具少。
对策
下一页
*本文作者:安全狗safedog,转载请注明来自FreeBuf.COM
|