为物种保护海洋数据和人工智能 1 摘要 问题和我们的动机是海洋中物种多样性的丧失,这通常也被称为“隐形死亡”。通过我们的方法,我们追求的目标就是使这种死亡可见,从而可以预防。 为了使海洋中的事件可见,我们需要根据海洋识别模式。 深度,然后识别与这些模式的偏差。我们正在与挪威罗弗敦-维斯特拉伦研究所一起分析海洋数据,以帮助检测异常情况。这应该有助于更好地了解海洋生态系统。这应有助于确定人类干预自然界的后果,例如鱼类种群减少。 海洋数据和人工智能促进物种保护I10月20222 介绍 对生态系统的准确观测使详细的海洋学研究成为可能,从而可以在人工智能(AI)的帮助下识别大量数据中的异常情况 。 罗弗敦-韦斯特纳伦(LoVe)海洋天文台位于挪威北部霍夫登韦斯特纳伦以西。它位于生态,地质,海洋和经济“热点”。海底电缆和七个传感器节点网络覆盖了从大陆到深海的横截面。它包括一个陆基站和七个传感器平台,覆盖从海平面到200米深度的梯度。该系统不断提供有关挪威北部海洋环境的宝贵在线数据,自2013年以来一直处于活动状态。 该系统既是国家研究基础设施,基础和应用研究,也是测试基础设施,行业合作伙伴可以在其中测试新的水下传感器和技术。罗弗敦-维斯特阿伦海洋 多年来,天文台已经收集了超过100TB的传感器数据(温度,电流,回声图)。 这个团队 托马斯•兰姆 是凯捷的软件工程师。他创建了最初的基础设施和GitHub集成。 马吉德Alaitwni 是一名软件开发人员。他的本科论文的重点是海洋测量数据中异常检测的交互式可视化 。他创建了可视化。 盖尔·皮德森 是LoVeOcean海洋天文台的研究员,并支持挪威方面的项目。 汤姆哈顿 是一名数据科学家,他的硕士论文探讨了在高维海洋测量数据中使用无监督人工智能模型进行异常检测。他继续开发人工智能模型。 苏菲巴德 是专门研究海洋生态系统的分子生物学家,也是软件开发人员。她协助基础设施建设。 parMustapha穆斯塔法 是凯捷的软件开发人员。他做了规划工作,并帮助设计了最初的人工智能模型。 丹尼尔·弗里德曼 是凯捷的软件开发人员。他是容器化和Docker方面的专家,为该项目提供内容支持。 尼尔斯·康Handegaard 是LoVe海洋天文台的研究员。他的研究重点是将新方法和数据处理技术应用于海洋生态学和渔业海洋学领域。 灵族Sultanow是凯捷的企业架构总监。他主要关注现代软件架构、数字化和企业架构管理。他在初始阶段与 ThomasRamm一起开发代码,现在是该项目的主管并监督研究工作。 3 海洋数据和人工智能促进物种保护I2022年10月 OceAIn是作为团队名称创建的,用于参加凯捷2021年全球数据科学挑战赛 (GDSC)。OceAIn的目标是开发一个人工智能模型,利用海洋传感器收集的时间序列数据,对生态系统中的季节性相关模式有新的见解。这应该有助于建立更好的模型并了解我们星球的气候。 AI模型处理从大陆到深海的横截面数据。它们由四个不同的传感器收集,这些传感器使用科学回声测深仪测量(1)特定区域的定向脉动声音,(2 )所谓的水听器, 即记录环境中声音的水下麦克风,(3)使用多普勒效应检测洋流速度和方向的声学多普勒(ADCP),最后(4)提供实时物理,生物和化学观察的点传感器。 识别重复的季节性模式和异常情况使科学家能够更好地监测海洋环境。这涉及对异常及其影响因素的广泛探索和绘图 从大局出发的结论,例如鱼类种群的差异、不同的当前模式或气候变化的影响。 虽然大量原始数据难以手动处理,并且在此过程中结果非常容易出错,但AI模型允许过滤这些数据以查找相关事件。此外,人工智能能够连续分析传入的数据,从而为研究人员提供数据流。 Architekturdes系统尽管AI模型是OceAIn的核心,但还有其他组件构成了该平台。我们的下一个目标是让它们根据云原生架构概念协同工作,这将创建一个面向未来且灵活的数据管道。研究所提供的原始 数据将收集在一个 下一步进行步骤和清洁和改造。这些步骤将在Docker容器中进行,每种类型的数据 (水听器、生物质检测等)每一步都有自己的容器。容器的协作在中定义 ApacheAirflow,它基于“配置即代码”原则工作。气流允许使用DAG(有向无环图)定义基础设施。还值得一提的是,Docker容器实际上是由Kubernetes管理的,而Kubernetes又由Airflow定义。最后,转换后的数据以CSV文件的形式持久化。它们由AI处理以检测异常,这些异常通过交互式Web界面以图像文件的形式与数据一起显示。 模型 F1的分数 精度 回忆 宏AVGF1 总是正确的 1.00 0.30 0.47 0.23 总是错误的 0.00 0.00 0.00 0.41 均匀随机 0.54 0.40 0.46 0.58 分层 0.17 0.21 0.19 0.44 表1。基线模型的结果 人工智能模型的实现OceAIn包括一个AI模型,可以检测海洋数据中的异常 。AI模型的传感器数据在信息类型和持续时间方面变化很大。此外,某些 类型的异常只有在从一开始就将数据点视为相互连接时才可检测到。 最初的想法是专注于可以处理不同类型数据的单个模型,然后组合单独的模型。由于数据的多样性,这种方法显示出一些缺点,例如聚合单个模型的复杂性增加。 最终占上风的想法是使用深度学习神经网络来分析所有数据的异常情况 。起初,应该使用无监督模型,但这种方法被证明是不可行的。 使用无监督AI模型的优势在于,这些模型的训练不依赖于标记训练数据的存在(异常与正常)。 然而,这些模型极易受到数据噪声和损坏的影响[1]。基础海洋测量数据也受制于这些特征,而这些特征因其整体性质和伴随的高数据维度而进一步加剧。 研究人员对标记数据的贡献使监督AI模型的使用成为可能。基本上,有监督的AI模型优于无监督的AI模型。 异常检测中的对应物,因为它们特别能够检测特定于应用程序的异常[2] 。 为了稍后检查无监督模型的性能,首先创建了四个基线模型,其结果 每个隐藏层中的一维卷积,其中过滤器的数量由超参数确定。第二种架构使用所谓的LSTM层,第三种架构是完全连接的自动编码器。 重建干净的数据 完整的数据 密集的 lstm conv lstm conv 密集W32 HL40040密集W32HL40040v2密集W8HL40040204 lstmW32HL10040204lstmW32HL10040204v2 密集的W16HL10040204密集W32HL10040204密集W32HL2000100010040204密集W32HL40040密集W32HL40040v3 lstmW32HL10040204lstmW32HL10040204v2lstmW32HL40lstmW32HL40010010lstmW32HL643216lstmW8HL10040204 convW16HL100010010convW16HL10004001004convW16HL10040204convW32HL10040204convW64HL10040204 表2。所有重建模型的结果 可以在1中看到。这些是评估机器学习模型的常用工具,是分类问题的朴素解决方案。 通过将真实模型的结果与基线模型的结果进行比较,可以得出有关真实模型正确性的结论。在这里使用的基线模型中,一个总是对false进行分类,一个总是对true进行分类,一个将数据集分为true和false,最后一个根据它们的标签对数据进行分层。 在模型开发过程中,创建了两种类型的模型。这些是基于重建的模型和预测模型。对于前者,创建了三种不同的微架构。第一次使用 预测模型也分为三类。这些也是LSTM和完全连接的隐藏层,以及使用卷积和最大池化的架构。模型的命名遵循固定模式。首先,指定模型与哪种架构方案相对应。然后给出一个“W”和一个数字,表示窗口大小。因此,“W32”描述了窗口大小为32的神经网络。接下来是进一步的数字 ,指示隐藏层的大小。或者,末尾还有一个版本号,它指示在第一个实例中提供了有希望的结果的模型,这就是它们多次运行的原因。由于所描述的模型 上面本身没有检测到异常,还有另一个 负责这一点的组件。这些模型的结果发人深省。几乎没有任何模型可以超过0.5的F1分数,这意味着它们并不比随机划分值的基线模型更好。事实上,只有一个模型,“lstmW32HL128128128”可以(至少)超过这个限制。所有测试模型都可以在表2和表3中看到,而表4显示了不同类型模型的平均结果。 无监督模型的结果相对较差有几个原因。数据本身相当不适合无监督模型 。差距、噪声和数据损坏会大大降低无监督模型的结果。 表3。结果的预测模型 重建干净的数据 完整的数据 密集的 lstm conv 密集W32HL256*5v2 lstmW32HL128128128 convW32HL128128128convW32HL128128128v2convW32HL323232 lstmW32HL128convW32HL321281283232 表4。所有的模型类型的平均结果 模型 分位数 F1的分数 重建的干净数据 0.73 0.43 0.34 0.73 0.41 重建lstm清洁dat 0.85 0.41 0.41 0.67 0.4 重建conv完整的数据 0.85 0.46 0.38 0.68 0.5 重建的完整的数据 0.85 0.28 0.32 0.39 0.46 重建lstm完整的数据 0.85 0.4 0.33 0.62 0.46 预测conv干净数据 0.85 0.47 0.32 0.9 0.35 密集的干净数据预测 0.73 0.48 0.32 0.95 0.33 预测lstm干净数据 0.73 0.48 0.32 0.98 0.3 预测lstm完整的数据 0.73 0.47 0.31 0.94 0.31 预测conv完整的数据 0.85 0.47 0.32 0.95 0.33 此外,数据集是高度维度的,大量传感器同时收集信息。数据集越复杂 ,训练AI模型以产生正确结果的难度就越大。据推测,我们的模型会 如果数据不那么复杂,则会产生更好的结果。另一个问题是我们拥有的计算能力有限。模型的压缩率很高,因为添加更多层需要花费更多的计算时间,这是不可行的。最后,应该提到的是,尚未进行广泛的超参数优化。这可能意味着模型本身实际上比假设的要好。 #检测所有样品的异常情况。 异常=test_mae_loss>阈值 print(“异常样本数:”,np.sum(异常)) print(“异常样本索引:”,np.where(anomalies)) plt.plot(x_test[0]) plt。情节(x_test_pred[0],α=0.7)plt.show() anomalous_data_indices=[] 对于范围(TIME_STEPS-1,len(X_test)-TIME_STEPS+1)中的data_idx:如果np.all(异常[data_idx-TIME_STEPS+1:data_idx]): anomalous_data_indices.append(data_idx)anomalous_data_indices 清单1.异常情况检测模块的代码片段 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 由于所有这些原因,可以得出结论,无监督模型不适合海洋数据中的异常检测,因为它是由LoVe生成的。因此,OceAIn应使用以监督方式学习的模型。此模型稍后将 根据研究人员在操作过程中生成的数据不断进行再训练。 该模型的代码片段如清单1所示。在这里,检测到明显偏离预期正态的数据集。这是通过首先遍历所有数据集来完成的,而所有被检测为偏差的数据点都存储在数组异常̇datȧin