简介
ibm db2® information integrator for content 提供了一种 information mining(信息挖掘)服务,可以将非结构化文档中隐含的信息转化为有价值的元数据.本文概述了如何优化 information mining 服务以取得更佳的性能.全文根据利用 information mining 可以执行的几大基本任务来组织,这几大任务是: 从文本文档自动提取元数据( 文本分析). 将元数据存储到仓库(repository)中 ( 持久性). 从仓库中检索数据( 高级搜索).文档过滤的性能问题超出了本文的范围.通常来讲,具有复杂二进制格式的文档(例如 microsoft word 或 pdf)更难以处理,并且对这种文档的预处理比起对基于文本的简单格式要花费更多的时间.
阅读并理解本文要求至少对信息挖掘技术与概念有基本的了解.之前在 db2 开发者园地有一篇文章“ eip information mining in a nutshell”便非常适合作为学习信息挖掘技术的起点.
文本分析与挖掘通常,执行以下功能所花费的时间是随着所处理文档的大小而线性增长的:
语言识别(language identification). 摘要(summarization). 信息提取(information extraction). 归类(categorization). 将一个文档加入到文档集中以便进行群集.这种处理时间上的线性增长的原因在于这些功能都需要遍历文档,并在不同的详细程度上分析文档的语言元素.语言识别是一个特例,因为它只限于对文档的前 1024 个字节进行处理 1.而其他的文档处理功能则总是处理整个文档,而不管文档的大小如何.
调优选项
在大部分情况下,对于小到中型的文档来说上述分析功能能够很快地完成,因而分析时间不是问题,然而,如果要在一个交互环境中处理大型的图书类(book-type)文档(分为多个章节的文档),那么分析时间将成为一个重要因素.其中一个这样的例子就是对数百页的手册或报告的实时归类或摘要.在大多数情况下,显而易见的解决方案是让一个非交互式的应用程序在一个独立的步骤中执行所有必需的分析功能,不管是在文档导入期间执行分析,还是将分析作为一个常规的批量任务并将结果存储到数据库(即所谓的元数据存储器)中,二者都可以.于是,访问与某个文档相关的元数据便等同于从元数据存储器简单地查找信息.
如果由于某种原因使得批量分析技术不可行(例如,摘要工作需要在线执行),那么一种有价值的替代做法是将对文档的处理限制为只针对文档的某一部分.关键问题是如何识别出仍然包含足够重要内容的那一部分.对内容进行深入处理以期找到合适的子集不是办法,因为这样做同样会面临我们力图避免的性能问题.
... 下一页