专栏首页Reinvent Data Science蓝灯鱼 AI 专利检索在 Milvus 的实践

蓝灯鱼 AI 专利检索在 Milvus 的实践

文章作者:

崔洪丽,蓝灯鱼产品经理

李云梅, Zilliz 数据工程师

| 背景

蓝灯鱼智能科技 (www.lanternfish.cn) 是一家立足于知识产权领域的人工智能公司。专利检索工具是蓝灯鱼的一款代表性产品。专利文书的语言特点包括新颖性、特征性、法律规范性,是申请专利的重要依据。产品将通过 AI 的方式来理解这些文字中的逻辑、含义关系,并检索出来。

Milvus (milvu.io) 是一款开源的向量搜索引擎。其开源半年以来,全球已经有上百家企业或组织用户。Milvus 充分利用现代处理器的并行计算能力,可以在单台通用服务器上完成对十亿级数据的毫秒级搜索,助力用户高效完成对非结构化数据的检索。

Milvus

Milvus 支持使用多种 AI 模型向量化非结构化数据,并为向量数据提供搜索分析服务。它可处理的业务包括图像处理、机器视觉、自然语言处理、语音识别、推荐系统以及新药发现。具体实现方式是:

  1. 通过深度学习模型将非结构化数据转化为特征向量,并导入 Milvus 库。
  2. 对特征向量进行存储并建立索引。
  3. 接收到用户的向量搜索请求后,返回与输入向量相似的结果。

| 项目建设

在蓝灯鱼专利检索产品的建设过程中,主要分为四个过程,分别是数据提取、模型训练、向量查询、结构化数据展现。

  • 数据提取:在 1.2 亿专利数据中,提取专利文献的标题、摘要、权利说明书、说明书内容进行数据的清洗和标准化。一篇专利包含的内容有标题、摘要和说明书,说明书有上万字的内容。在将整篇专利的内容转化成向量之前,我们首先需要按照一定的语义规则,从标题、摘要和说明书的内容中提取出一段 500 字以内的文本内容。
  • 模型训练与向量提取:采用 tf2.0、Transformer 结构的 Bert 的语言模型;通过微调、对专利数据进行二次学习和迭代训练,形成新的应用模型。然后使用我们训练好的模型将上述经过数据提取得到的专利文本内容转化成向量。
  • 向量查询:如何能快速在 1.2 亿的数据量中查询近似向量呢?本项目在向量查询的这个技术点上,评测了市面上开源的向量检索工具。通过比较各工具的稳定性、易用性、查询性能等多个方面,最终选中 Milvus 作为本项目的向量查询工具。在本项目中,我们会将通过上述模型提取出向量并将其导入 Milvus。
  • 结构化数据:利用 ElasticSearch、Mysql 将上一个步骤得到的向量对应的结构化数据查询出来,通过后端的微服务和使用 Vue 实现的前端,将结果展现给用户。

| 产品需求特点

在实际应用中,用户只需要用几十字到三百字之间的术语来表达一段话的完整意思。蓝灯鱼 AI 模型负责将这段话转化成向量,Milvus 负责查询出与给定向量近似的 1000 条向量。之后,蓝灯鱼根据 Milvus 返回的近似分数和 id,在关系数据库中把结构化数据的信息全部取出并展现给用户。在其中主要技术特点有:

  • 高效性:在 1.2 亿的数据中,需要快速找到最近似的千条数据。这对程序处理的各个环节(尤其是向量近似查询)都提出了较高的性能要求。
  • 近似性:在自然语言语义理解中,机器需要像人一样去理解用户输入的一段话。理解其中的蕴涵关系,把近似语义表达的概念检索出来。

例如,输入一段专利的摘要: “一种利用石墨烯连续过滤吸附处理污水的工艺,其特征在于:它包括以下步骤:

a. 设置含填料及石墨烯材料的过滤吸附混合物层,所述过滤吸附混合物层用铁填料、锰填料和多层石墨烯以 2:1:2 的比例混合,或者采用铝填料、氧化锰填料、氧化铁填料、石墨烯改性材料以 1:0.5:1.5:1 的比例混合;

b. 输入污水,污水经过过滤吸附混合物层;

c. 过滤吸附混合物层的石墨烯材料过滤、吸附污水中的污染物,石墨烯材料结合金属填料和/或金属氧化物填料进行微电解反应;

d. 出水;所述石墨烯材料为多层石墨烯、石墨烯改性材料中的一种或者两种的混合物;所述污水的 pH 值为4~6。”

机器需要理解这段话中以下几个要点:

  1. 该技术是处理污水领域的技术。
  2. 使用石墨烯连续吸附的技术方式。
  3. 还包括了铝填料、氧化锰填料、氧化铁填料等材料。
  4. 做了微电解反应。
  5. 石墨烯材料是多层材料。
  6. 污水的 pH 值为 4~6。

| 项目展示

下图是用户使用蓝灯鱼 AI 专利检索工具的结果展示。从例子中可以看到,检索结果会把本领域相关的专利即太阳能海水淡化装置检索出来。同时可以看到,我们给定的语句指出了太阳能海水淡化装置使用了集热蒸发器和海水冷凝器等特点,检索结果能够把本领域内技术特点相近的专利检索出来且排在前面。

通过上述的专利检索,用户可以迅速查到与要申请的专利近似的相关信息,判断这个专利是否会被驳回,以提高申请成功率。另外,通过语义近似检索也可以了解拥有相同技术的的竞争对手。

| 结语

蓝灯鱼专利检索的难点主要有:

  • 训练出的模型是否能真正理解自然语言所表达的含义。
  • 在海量的向量库中快速查到与给定向量的近似向量。

蓝灯鱼希望通过开源界的优秀工具服务于垂直行业,把科技力量应用于行业内各个领域。同时希望 Bert、Milvus 等开源项目能够持续创新地发展。

扫描二维码体验蓝灯鱼专利检索小程序:

本文分享自微信公众号 - ZILLIZ(Zilliztech),作者:崔洪丽 & 李云梅

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2020-07-22

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Chat with Milvus #3 回顾 - ANN-Benchmarks 测试结果

    http://mpvideo.qpic.cn/0bf2leaaaaaa3qalyodiobpfawodabmqaaaa.f10002.mp4?dis_k=175...

    ZILLIZ
  • Milvus开源向量搜索引擎,轻松搭建以图搜图系统

    当您听到“以图搜图”时,是否首先想到了百度、Google 等搜索引擎的以图搜图功能呢?事实上,您完全可以搭建一个属于自己的以图搜图系统:自己建立图片库;自己选择...

    ZILLIZ
  • 视频|5分钟轻松上手Milvus Admin

    Milvus 作为一个开源的基础软件,让用户可以轻松地上手使用也是至关重要的。作为 Milvus 产品化重要的一环,Milvus Admin 就是这样一款面向企...

    ZILLIZ
  • iOS开发常用之测试调试、动态更新

    GuangdongQi
  • 能直接复制图片中文字,功能远超普通OCR软件,MIT学生开发了一款强大Chrome插件

    有时你遇到一篇古老的文献,PDF文档还是扫描版。又或者是遇到一幅网页版海报,上面的文字你完全看不懂。

    量子位
  • Android基于CMake进行OpenCV开发配置

    新建项目,勾选【Include C++ support】,后续一直按【next】按钮取默认设置即可。

    IT晴天
  • spock测试桩mock和stub的区别及使用场景

    如果我们需要测试A方法,但是E方法目前还没办法调用,或者还没开发完成。这种场景下,就可以使用stub测试桩。stub测试桩可以给E方法模拟一个或多个假的返回值,...

    yawn
  • 手把手教你MySQL“误操作”回魂术

    误操作数据库的事情,估计不少开发人员都可能会遇到。毕竟常在河边走,哪有不湿鞋的呢?

    业余草
  • 一个傻傻的尼姆游戏及其Python实现

    尼姆游戏是个著名的游戏,有很多变种玩法。两个玩家轮流从一堆物品中拿走一部分。在每一步中,玩家可以自由选择拿走多少物品,但是必须至少拿走一个并且最多只能拿走一半物...

    Python小屋屋主
  • 测试 View Controllers

    测试简单的事情很简单,同样,测试复杂的事会很复杂。就像我们在其他文章中指出的那样,让事情保持简单小巧总是好的。除此之外,它还有利于我们测试。这是件双赢的事。让我...

    用户5290428

扫码关注云+社区

领取腾讯云代金券