专利分析是对专利说明书、专利公报中大量零碎的专利信息进行分析、加工、组合, 并利用统计学方法和技巧使这些信息转化为具有总揽全局及预测功能的竞争情报, 从而为企业的技术、产品及服务开发中的决策提供参考[ 1]。目前国内外均已开发了一些专利分析工具, 主要包含两种: 在线专利分析系统, 例如中国科学院专利在线分析系统[ 2]等; 单机专利分析软件, 例如TDA[ 3]等。与单机专利分析软件相比, 专利在线分析系统能够为专利分析人员和专业技术人员提供开放的和实时的专利分析功能, 具有较强的灵活性。
传统的专利在线分析系统大都基于关系型数据库来实现, 要保证专利分析过程中的实时性要求, 需要对数据库进行较好的查询优化并根据功能建立相应的数据库索引, 整个过程实现起来比较繁琐, 需要开发人员具有较强的数据库管理专业知识。本文介绍了一种基于全文搜索服务器Solr的专利在线分析系统。
Solr是一个基于Apache Lucene的、应用广泛的开源搜索平台。它提供了强大的全文检索、高亮显示、分面搜索、动态聚类以及分布式检索和索引复制等功能[ 4]。在已进行的研究中, Solr特有的分面搜索技术被用于多个系统的构建。例如: 文献[5]利用Solr对海量数据进行统计分析; 文献[6]利用Solr完成了针对现有OPAC系统的改进, 提供了一种快速高效的分面浏览解决方案; 文献[7]构建了一个基于Solr的中文农业期刊文摘检索系统。
本系统的架构如图1所示:
.该架构主要由三层组成:
(1) Solr索引服务器层。该层主要是一个运行有Solr的HTTP服务器。在Solr安装成功后, 可以通过Solr的管理控制台对该索引服务器进行管理, 例如查看当前索引信息、更新或者删除索引等。
(2) 索引操作层。在该层中, 利用SolrJ作为Solr客户端, 对索引服务器完成索引的增加、查询、删除等操作。
(3) 业务逻辑层。主要功能包括用户登录、专利检索、主题分析、主题管理以及数据导出等, 管理员除了进行用户管理等操作以外, 还能够对索引服务器进行管理, 包括查看索引服务器的状态、更新索引以及对索引内容与关系型数据库中存储的专利信息进行一致性检验等。
系统需要实现专利检索、主题管理和专利分析等功能, 而这些功能都要对索引进行操作, 以下介绍本系统使用的两种自定义索引字段。
(1) 第一种主要是为了在索引操作中实现对不同类型索引的区分, 设置了索引类型值 (type) 和主题类型值 (entity) 两个字段。
索引类型值 (type) : 系统中的索引有两种: 检索索引, 用于专利检索等功能; 主题索引, 用于主题管理和专利分析等功能。本系统使用索引类型值实现对这两种索引的区分, 其中检索索引用“search”表示, 主题索引用“entity”表示。
主题类型值 (entitiy) : 本系统使用主题类型值来区分索引对应的主题。主题类型值是一个具有唯一编号的值。
(2) 第二种主要服务于专利检索和专利分析等功能。专利检索中用到的索引字段主要包括: 专利标题 (patentTi) 、申请号 (patentAn) 、公开号 (patentPn) 、摘要 (patentAb) 和主权项 (patentCl) 等。
在专利分析中, 首先需要明确专利分析指标, 然后才能确定与分析指标对应的索引字段。本系统所使用的专利分析指标和对应的索引字段如表1所示:
通过专利分析指标确定的索引字段包括: 申请年 (patentAd) 、专利类别 (patentType) 、专利权人 (patentFpa) 、发明人 (patentIn) 、IPC (patentIcm) 、IPC部 (patentIcm1) 、IPC大类 (patentIcm2) 、IPC小类 (patentIcm3) 、省市代码 (patentProvince) 、授权与否 (patentAuth) 和最终法律状态 (patentLstype) 等。
系统功能模块如图2所示:
.主要由专利检索、主题管理和专利分析三个功能模块组成。专利检索模块包含简单检索和高级检索两种功能; 主题管理模块包含主题添加、删除、合并、浏览以及主题专利导出等功能; 专利分析模块包含概况分析、专利权人分析、发明人分析、省市代码分析、IPC分析、法律状态分析以及多种可视化图形展示和分析数据下载等功能。
专利检索模块包括简单检索和高级检索两种方式, 专利检索流程如图3所示:
.在简单检索中, 用户输入查询词以后, 系统会对索引类型值为search的索引进行全字段查询, 以查询“激光器”为例, Solr查询语句为:
+激光器 +type: search。
在高级检索中, 系统会首先构造一个检索式, 然后将检索式转换成对应的Solr查询语句。检索式由多个子检索式组成, 每个子检索式都包含了布尔选项、检索范围和检索词等三类信息, 例如: 当检索专利标题出现“激光器”或者“光纤”, 并且是授权状态的专利, 最终构造的完整检索式为: {ti: 激光器}{OR ti: 光纤}{AND sq: 授权}, 系统把该检索式转换后, Solr查询语句为:
+ ( (patentTi: 激光器) (patentTi: 光纤) ) + (patentAuth: 授权) +type: search。
主题管理是在专利检索结果的基础上进行, 主要功能是将检索结果加到新的主题中以及对主题进行删除、合并和导出等操作。
(1) 添加主题.
添加主题的算法如图4所示:
.当添加主题时, 系统首先生成一个不重复的随机数作为主题类型值, 并使用该主题类型值作为主题在数据库和索引中的唯一标识符, 然后在数据库中存储该主题的基本信息, 最后生成新的索引。
(2) 删除主题.
当删除主题时, 首先根据数据库中存储的主题类型值删除相应的索引, 然后删除数据库中相关信息。
(3) 合并主题.
合并主题的算法如图5所示。
.当合并主题时, 系统首先生成一个不重复的随机数作为主题类型值, 使用该主题类型值作为主题在数据库和索引中的唯一标识符, 然后将需要合并的主题中的所有专利加入到新索引中, 在数据库中存储该主题的基本信息, 最后根据已合并主题的主题类型值删除这些主题在索引和数据库中的数据。
(4) 浏览主题.
当浏览主题时, 系统根据主题类型值查询索引, 并将查询结果呈现给用户。
(5) 主题专利导出.
当导出主题专利时, 系统根据主题类型值和需要导出的专利申请号查询索引, 并将查询结果以Excel的形式导出。
专利分析是针对某个主题中的所有专利, 结合预设的多种分析指标, 对分面的查询结果进行多角度的展示。专利分析模块中的主要功能包括对主题中的专利进行多种指标的分析、分析结果的可视化图形展示以及分析结果的数据导出等。
专利分析流程如图6所示。
.当用户点击某个专题的分析指标的时候, 系统会根据分析指标设置分面字段, 然后查询索引, 获得分面结果, 最后通过JFreeChart生成可视化图形, 用户可以选择不同图形从多角度查看分析结果, 也可以将分析结果以Excel形式导出。
系统共包含6个大类共计26个专利分析指标, 详细指标列表见表1。系统针对每种指标, 实现了按照不同可视化图形查看分析结果, 目前包括折线图、柱形图、堆积柱形图以及堆积面积图等8种图形, 方便用户通过不同图形, 从不同角度查看分析结果。对某个主题的专利年度类别指标进行分析, 通过这8种可视化图形查看的展示结果如图7所示。在性能方面, 笔者组织了10人同时对一个包含4万余条专利的主题进行在线分析, 经过统计测试, 平均响应时间低于2秒。
.Solr作为一种企业级的全文搜索服务器, 在系统响应时间、性能优化以及稳定性等方面已经比较成熟。在本系统的实际应用中, 基本能够满足专利分析人员和专业技术人员实时在线分析各种主题专利。未来将继续增加分析指标, 从对专利基本情况的分析扩展到更深层次的分析, 同时专利分析结果的可视化展示方面也需要作进一步的研究。
[1] |
|
[2] |
|
[3] |
|
[4] |
|
[5] |
|
[6] |
|
[7] |
|