How NASA Finds Critical Data through a Knowledge Graph 材料学习

材料原文:https://neo4j.com/blog/nasa-critical-data-knowledge-graph/#from-document-to-graph

觉得文章有收获,欢迎关注公众号鼓励一下作者呀~
在学习的过程中,也搜集了一些量化、技术的视频及书籍资源,欢迎大家关注公众号获取
百度网盘资源百度网盘资源

学习笔记

  • NASA Challenges
    • 在全国范围内存储着数亿个文档、报告、项目数据、经验教训、科学研究、医学分析、地理空间数据和IT日志等;
    • 数据在种类、速度、数量、价值和准确性方面都在增长;
    • 工程数据源可访问性;
    • 可视化程度受限
      在这里插入图片描述
  • 这篇关于知识图谱在NASA中的应用报告,主要关注“经验教训”数据的组织,让使用者能够更加高效地搜索到信息,提供数据图的可视化等。

翻译

What is knowledge architecture?

  知识架构结合了知识管理、信息学和数据科学等不同学科,我们使用这些学科从“经验教训”数据库中提取知识。 在我完成本演示文稿时,希望您能看到知识体系结构为何如此重要的原因,能够有一个框架将其带给您的组织(经理,投资者和资助者),并向他们展示如何在组织内实现该知识架构。
  早在1999年,彼得·德鲁克(Peter Drucker)就说:“管理在21世纪需要做出的最重要的贡献就是提高知识工作者中知识工作的生产力。”自那时以来,社交媒体迅猛发展,物联网(IoT) 起飞了,我们不断有越来越多的可用数据。 这使得提高知识工作者的生产力比以往任何时候都更加重要。 我们该怎么做?

Challenges

  首先,让我们讨论一下您的组织可能必须克服的一些挑战。在NASA,我们有大约18至20个不同的地点,共有80,000名员工,并且自1950年代末/ 1960年代初以来一直在收集数据。这些数据包括亿万个文档、报告、项目数据、经验教训、科学研究、医学分析以及更多存储在全国数据库中的数据(这些数据是如何构建知识图谱的,以什么样的形式提供知识图谱服务?) 而且,数据量在种类、速度、数量、价值和准确性方面都在不断增长。
  但是,由于部门之间以及我们个人小组、产品和项目中的隔离,我们面临的最大挑战是信息的可访问性。 我们必须尝试打破这些隔离,这正是图数据库提供的功能。(也是知识图谱所能够解决的事情,图数据库是知识图谱非常重要的数据存储设施)

How to Get from Data to Knowledge

  为了将数据转换为知识,知识管理、信息学和数据科学的融合是必要的。 知识管理用于策略,信息学提供创建应用程序存储能力的渠道,以将数据从存储位置传输到最终用户,数据科学提供算法和方法论,使您可以将数据转换为最终用户可操作的知识 。当将这三种方法结合在一起时,最终得到的就是所谓的数据驱动的可视化。 重要的是不要尝试使数据适合可视化; 而是让您的数据驱动您如何可视化信息。以下是我刚看过的内容的简要摘要幻灯片:
在这里插入图片描述

Why Knowledge Architecture?

  大约五年前,我刚开始在NASA工作,负责检查组织内的知识管理。 我要做的第一件事是采访人员并参加会议,在分类学家和IT开发人员之间的一次会议中,我们正在讨论如何通过分类法改善搜索——两者之前曾进行过多次讨论。分类学家想要看到元数据,但是开发人员拒绝了。因此分类学家解释说,访问元数据有助于从分类目的上检查分类法,而开发人员则解释说他们已经覆盖了元数据存储。尽管他们都同意元数据的定义,但他们实际上是在谈论两件事。 分类学家谈论的是文件的元数据,即标题,标题的创建者,创建时的标题,而开发人员则在谈论数据库本身的元数据

The Power of Transforming Data into Knowledge

  知识架构实际上是组织中的一群个体,可以充当战略、信息学、架构和数据科学的知识管理联络个体。 所有这些使组织可以在各个隔离之间采用统一的沟通方式并共享信息,从而使公司可以向前发展。为什么这很重要? Google前首席执行官埃里克·施密特(Eric Schmidt)表示:“我们有机会让世界各地的所有人访问世界各地的所有信息。 这是前所未有的。 为什么无处不在的信息如此深刻? 这是一个巨大的均衡器。 信息就是力量。” 我将稍微修改一些语义,信息不是力量,而是知识才是力量。 您可能拥有世界上所有的信息,但是如果您不能将其转换为可操作的知识,那么您实际上一无所有。正如伏尔泰所说:“强大的力量伴随着巨大的责任。”您必须利用这种力量将信息传递给最终用户可操作的知识,并为他们提供可以实际使用的东西,以便他们反馈。 如果您构建的应用程序对最终用户没有用,那么这些应用程序将会消失。
  我将分享一个故事,说明为什么我为工程师构建了此应用程序。 我们的年轻工程师要教的第一件事是进入 “经验教训”数据库 ,以获取有关过去不同项目的信息。 这包括在这些项目中发生的事情,从任何错误或成功中学到的教训以及已采取的措施。 目的是从过去学习,防止将来再犯同样的错误,并减少项目时间。这些工程师中有一个要搜索23个关键术语,因此他进入了我们标准的搜索应用程序(当时是著名的PageRank系统),在所有2000万份文档中查找这些不同的关键术语。 但是,“吸取的教训”数据库仅占这2000万份文档中的不到1%。 这意味着他必须浏览大量信息才能找到自己想要的东西,而这效率极低。他来找我设计解决方案,我让IT部门对“经验教训数据库”进行了索引,以便工程师可以对他的关键术语进行操作。 几天后,IT人员返回了一个Excel电子表格,该电子表格带有23个选项卡(每个关键字一个),其中包含成千上万种不同文档的列表,工程师必须仔细阅读这些文档,以查看是否有任何信息对他有价值。我们知道必须有更好的方法。我首先查看了“经验教训”数据库。 (在本演示中,我使用的是公共数据库,即经验教训信息系统(LLISDB),因为我们无法共享敏感数据。)该数据库与我们现场的数据库非常相似,但是您只能按日期和主题进行筛选,该搜索已导出到CSV文件并导入到Neo4j。 尽管这很有用,但很耗时,因为它需要连续搜索。 我们需要让最终用户更好的方式来访问此信息。
在这里插入图片描述
在这里插入图片描述

Converting Documents to a Knowledge Graphs

  那我该怎么办? 我开始研究如何获取文档并将其转换为图形。我目前正在第二次或第三次迭代中,并使用MongoDB来掌握经验教训,并使用Neo4j通过该连接器自动创建图形。但是,当我最初进行此类工作时,我直接从CSV文件中获取元数据并将其转换为文档数据库。 通过这种可视化,数据以一种使您的大脑更容易掌握模式的方式呈现。下图代表了我们的本体,我正在展示该本体以证明模式很快变得显而易见:
在这里插入图片描述
现在让我们回溯一点。 我们有一个“经验教训数据库”,它是知识管理策略的一部分。 这是我们收集、存储和共享信息的策略,这是我们讲述和访问信息的能力的一部分。我把所有的文本都去掉了,并通过主题建模算法——latent Dirichlet allocation(LDA)-将其返回大约27个主题。 现在,我还有另外一块元数据可以添加到教训中:主题。最重要的是,由于与这些类型的教训相关的元数据很多,因此我能够根据主题的自定义类别将其相关联。 现在,我不仅可以学习有关其主题的教训,而且还可以了解主题之间的相关性,因此我可以轻松地了解一个主题与另一个主题之间的关系:
在这里插入图片描述
完成此操作后,我可以展示不同的主题及其相关性,然后将它们放回数据库并添加到列中。 这也使您可以查看趋势,这非常重要,因为我们在NASA上犯的错误可能是生死攸关的问题。以下是一些主题趋势图。 看一下主题14,它讨论了材料、热量、过量、污染和温度——所有这些都涉及航天飞机下方的导热砖:
在这里插入图片描述
我们从1990年左右开始增加教训,然后不断增加和减少,直到2003年左右,当时由于这些瓷砖而造成了航天飞机灾难。 如果我们事先获得了这些信息并更好地了解了趋势,那么我们也许能够防止灾难的发生。 因此,这是将数据科学应用于非结构化数据的真正强大结果之一。

The Next Step: Interactive Graph Visualizations

  您还可以将主题可视化,这是我们使用R package latent Dirichlet allocation visualization (LDAvis)实现的:
在这里插入图片描述
这是一种交互式数据可视化,显示了所有不同的生成主题以及这些主题中的术语。 这对于分析人员确实很有帮助,但对最终用户却不是很有帮助。我们仍然必须开发一个模型,使我们可以向最终用户展示数据。 下面是我们开发的简单图模型:
在这里插入图片描述
这是一个引用特定存储库的简单图形数据模型,我们将重点放在此数据库上,因为我们在NASA有许多不同的组,每个组都有自己的一组相关数据。 我们的课程(紫色节点)由提交者(红色节点)在特定中心(绿色节点)编写。 它属于某个类别(黄色节点),包含在一个主题(橙色节点)中,该主题与另一个主题相关联,并包含多个术语(蓝色节点)。我想让我们的工程师真正简单地做事情,以便他们可以快速执行搜索并提取所需的信息。 如果您想了解有关我如何设置并尝试重现它的更多信息,可以在GitHub上查看我的文章。这是将数据集导入Neo4j后的数据集的样子:
在这里插入图片描述
我要感谢Nicole White,她通过她的视频和有关如何将CSV文件导入Neo4j的说明教给了我很多知识。 利用她的大量工作,我能够从CSV文件导入该数据集,并在此处创建了这个快速的小型数据库。上面的数据集包含一个燃料阀主题,该主题的绿色教程与类别相关。 您可以看到JSC在这个特定领域有很多教程。 从管理的角度来看,这向我们展示了一些模式,这些模式可能表明可能需要更全面地探讨这些问题。但这仅仅是我们可以做的事情的开始。 我们还可以查看各个主题中的课程:
在这里插入图片描述
这些主题与某些类别相关,每个类别都有某些教程。 作为工程师,我必须能够从系统或子系统的一部分跳到另一部分,这使我们能够看到子系统之间的连接。作为项目经理,即使我有不同的团队成员,我也必须了解我的整个系统。 我可能有一个人在电池子系统上工作,另一个人在油箱子系统上工作,另一个人在照明子系统上工作,但他们都生活在自己的世界中,通常彼此之间沟通。 管理者必须能够浏览这些信息并将其汇总在一起。为此,我必须开发一个对最终用户有用的应用程序。 大约三年前,当我第一次开始使用Neo4j时,我开始阅读有关不同图形可视化应用程序的许多不同书籍。 对于这个项目,我选择了Linkurious。

What’s Next for NASA?

  我们正在努力将其纳入MongoDB,以便我们为用户提供将教程直接输入数据库的功能。 我们还将进行文本分析,以查找重复使用或相似的文本,从而使我们可以捕获实际上相似但相距甚远的文档,而我们可能没有捕获它们。 我们甚至可以查看这些教程中的整个段落或句子以及情绪状态。我们决定从情感分析开始,将评论分为“好”和“不好”。您会很高兴地知道大多数评论都是好的,但这可能是由于宇航员的政治正确性。 他们不想说任何不好的话,因为他们想回到太空。但是,我们可以查看所有这些文本,并尝试从所说的一切中找到含义,知识图管理可以帮助您做到这一点。 在IT部门工作了这么多年之后,我意识到您需要将知识管理,信息学和数据科学相结合才能做出良好的业务决策。 沟通不畅或沟通不足会导致很多问题,而知识体系可以避免这些问题。

How Can Your Company Benefit from a Knowledge Graph Architecture?

  如果您拥有知识图架构的所有好处,那么在公司可以做什么?
在这里插入图片描述

  • 授权更快,更明智的决策;
  • 利用过去的经验教训来最大程度地减少浪费,返工,重新发明和冗余;
  • 减少新员工的学习成本;
  • 增强和扩展现有的内容和文档管理系统。

当您开始查看所拥有的文档类型以及如何将这些文档转换为最终用户可使用的知识时,便可以改善决策。当然,您也可以利用过去的经验教训,避免一遍又一遍地犯同样的错误。获得的第一点教训是,我们一直在研究如何重做“经验教训”数据库。我们的问题之一是,遇到问题时我们不会读取数据库,因此我们需要找到一种更好的方法来做到这一点。但是,知识管理的一部分是能够将这些知识转化为最终用户的专有技术,并将该知识传递给下一代。这样的事情使我们能够更快,更轻松地将信息提供给他们,从而使我们能够扩大现有内容和文档管理系统的范围。我们需要在信息系统中增加元数据,以便能够在此基础上进行更多分析。元数据越多越好。

As an AI language model, I cannot provide you with any specific programming language or library. However, I can provide you with a general algorithm that you can implement in any language or library. Algorithm: 1. Import the necessary libraries for image processing and corner detection. 2. Load the image. 3. Convert the image to grayscale. 4. Apply a Gaussian blur to smoothen the image and remove any noise. 5. Apply a corner detection algorithm (e.g., Harris corner detector) to the image. 6. Extract the coordinates of the corners detected. 7. Draw circles around the corners in the original image. 8. Return the list of corner coordinates and the new image with corners drawn. Pseudo-code: ``` import cv2 def find_corners(image): # Convert the image to grayscale. gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) # Apply a Gaussian blur to the image. blurred = cv2.GaussianBlur(gray, (5, 5), 0) # Apply a corner detection algorithm. corners = cv2.cornerHarris(blurred, 2, 3, 0.04) # Normalize the corner response. cv2.normalize(corners, corners, 0, 255, cv2.NORM_MINMAX) # Extract the coordinates of the corners. corner_coords = [] threshold = 0.1 * corners.max() for i in range(corners.shape[0]): for j in range(corners.shape[1]): if corners[i,j] > threshold: corner_coords.append((j, i)) # Draw circles around the corners in the original image. for coord in corner_coords: cv2.circle(image, coord, 5, (0, 0, 255), 2) # Return the list of corner coordinates and the new image with corners drawn. return corner_coords, image ``` Note: This is just a rough algorithm and may need to be adapted to your specific use case.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值