首页 > 范文大全 > 正文

揭开企业搜索的技术面纱

开篇:润墨网以专业的文秘视角,为您筛选了一篇揭开企业搜索的技术面纱范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

搜索技术在企业中的应用越来越多,也越来越广泛,要想更好地应用这些技术,CIO们就必须要关注和了解它们。因为,并不是所有的搜索技术都能够满足在企业内部构建一个管理过去和未来信息流系统的要求。即使拥有了很好的企业搜索技术,CIO还要特别关注企业搜索平台所具有的灵活性、多样性以及适用性。

今天的企业拥有越来越多的、各式各样的电子文件和数据信息,如何让这些信息成为企业业务发展甚至是战略决策的好帮手,是CIO们正在思考的问题。而企业搜索技术就提供了一种有效的方式,来帮助企业处理这些日益增长的数据信息。然而,并非所有的搜索技术都适合在企业中应用,或者说,并不是所有的搜索技术都能成为企业搜索中的核心技术。传统的基于关键字的搜索技术可能只能够帮助用户找到一些文件,而企业还需要更先进的搜索技术,以整合整个跨企业平台的信息内容。

随着企业信息化的逐步普及,企业的工作流程已经发生了重大的转变,当然,在这种转变中也包括了记录这些流程的文档。文件管理联盟ARMA对企业现存的业务记录方式做过统计,超过90%的业务文件采用了电子记录的形式。

同时,伴随着从纸质到电子记录方式的转变,企业文件的数量也随之猛增。以前,大部分的企业记录都采用了正式的“文件”形式,并保存在正式但分散的库存中(如文件管理系统);而现在,非正式的电子文件变成了“标准”,并且,无论在数量上还是种类上,这种形式的企业记录都在迅速增加。

在这样一个信息爆炸的数字时代,企业该如何分配和利用好这些文件信息呢?事实上,现在不同规模的很多企业都已经开始考虑如何部署企业搜索技术来帮助自己解决这些问题。

的确,企业搜索技术的不断发展,让其成为了对企业业务中剧增的电子文件和数据信息拥有很好掌控能力的一种手段,也可能是惟一的一种手段。可以说,企业搜索技术的革命正在发生,企业搜索的时代也即将到来。当然,这一现实也决定了企业需要更高的搜索技术――现在,很多正在被应用的企业搜索技术虽然可以实现简单的文件查找,但是却很难成为整合整个企业信息流的核心搜索技术。

由于企业业务的需求以及法规遵从方面的要求迫使企业的决策者们希望拥有一种快速的、基于短期需求的决策过程,这使得很多CIO们不得不被动地选择了部署搜索技术。但事实上,这样的决策过程对于企业的长期需求来说丝毫无益,甚至是有害的。而一种更好的、策略性的方式是把“搜索”这个概念深入到企业中、深入到决策者中,把企业搜索当做是企业中一个最基本的组件,并选择一项适合企业长期发展的企业搜索技术。

如果企业在面对搜索技术时,采用一种试探性的被动模式,虽然能够暂时解决企业今天出现的问题,但是很可能会导致日后需要经常不断地更新现有的系统,因为企业面临的问题的复杂性会日益增加。因此,企业应该学会仔细评估这些搜索技术,并找出与自己现存的搜索技术之间的差别,来选择那些能够在未来五年或者更长时间之内满足企业需求的搜索策略。而这样的评估工作,CIO可以从了解各种搜索技术的差异开始。

三大搜索技术

对于大部分个人用户来说, 搜索引擎只是用来搜索自己所需内容的工具,他们不会也不需要去关注那些具体的技术实现细节。但对于企业用户则不然,不同的搜索引擎一般都是采用不同类型的底层技术实现的,这些技术各有优缺点,当用户需要基于企业架构选择搜索技术时,就必须要了解这其中的各项技术,这样才能够更好地应用企业搜索技术,并让搜索引擎在企业的IT架构上发挥出更大的作用。下面我们就介绍三种目前最主流的搜索技术。

基于集合的搜索

体验过最早期、最初级的搜索引擎的人都知道,所有的搜索都是在某种集合表示的基础上进行的操作。对于企业搜索,开始人们也会很自然地认为,所有需要搜索的文档都包含了一些具有代表性的词汇,真正意义上的查询就是发生在由这些词汇所构成的集合上。用户所需要的那些文档所组成的集合我们称之为“集合A”;在企业内部的所有文档所构成的集合我们称之为“集合B”。那么,所希望的搜索结果正是这两个集合的交集。

大部分人所理解的企业搜索就是这种基于集合的搜索,很直观,也很容易理解。但是,这种基于集合的搜索方式在企业级的搜索应用中存在着很多问题。比如,企业现在要做这样的一个查询――希望找到一份销售合同(sales agreement),那么就需要找到所有包含“sales”这个词汇的文档和所有包含“agreement”这个词汇的文档。

而其实这时用户希望返回的是同时包含这两个词汇的文档。为了完成这个任务,搜索引擎就需要对这两个集合做“逻辑与”的操作。但这同时就会引发另一个问题,可能会返回类似于同时包含“sales pitch”和“mutual agreement”的文档,而并不是用户所希望的包含“sales agreement”的文档。

当然,自从基于集合的搜索技术出现以来,信息检索方面的专家们就开始不断地改进这项技术,希望能够尽量减少这种错误的发生,其中一项很重要的改进就是引入了“词距(proximity)”的概念。比如,在搜索语句中,“sales”和“agreement”这两个词汇之间只包含了5个其他词汇,那么我们就有理由认为,用户很可能是希望返回“sales agreement”,这样就不仅仅是机械地把所有“sales集合”与“agreement集合”做交集。这种方式确实是一种比较有效的搜索方式,尤其是在其他技术还没有出现之前,这种引入了“词距”的搜索技术更加关注检索词,而并非简单的字符串匹配。

向量空间搜索技术

在上个世纪60年代,Gerald Salton等研究人员开始致力于让搜索引擎更加智能化,这时,向量空间搜索技术的出现让现代搜索技术得到了一次飞跃式的发展。包括现在市场上的很多企业搜索产品,如Verity和微软的SharePoint都是基于Salton所提出的向量空间模型。

向量空间搜索引擎所运用的技术源自于矩阵代数,其是基于字符在文件中出现的频率来比较文件的。在向量空间搜索技术中,一个重要的元素是“项空间(term space)”的概念,简单地说,项空间是由文件中出现的每个独立的词共同组成;第二个重要的元素就是“项数(term counts)”,项数是指文件中每个字符出现的次数。

通常可以将项空间作为坐标空间,项数作为项空间中的坐标,这样就可以为每个文件生成一个向量。只要在项空间中画出该文件的向量,就可以计算出向量的大小,这个大小是原点(坐标中的(0,0,0)点)到当前文件点之间的距离,这样就可以利用向量的长度通过计算夹角的余旋来比较不同的文件了。比如,相同文件的夹角余旋为1,文件中含有类似项的夹角余旋是正小数,而文件中含有截然不同项的夹角余旋就是0。

向量空间搜索技术的特点是会表现出很高的召回率和相对较低的精准率。而这种基于向量空间模型的搜索技术,对于那些对搜索能力不是有特别高要求的企业来说是可以接受的。事实上,这种技术相对于以前的搜索技术已经有了很大的改进。

而为了避免向量空间搜索技术的缺陷,贝尔实验室开发了“隐形语义分析(Latent Semantic Analysis,LSA)”技术。该技术绕开了对自然语言的理解,通过对大量样本的统计分析找出不同词汇(包括词组和短语)之间的相关性。这样搜索结果就可以进一步地接近用户真正想要查找的内容,同时也能够保证搜索的效率。LSA的核心思想是通过把高维向量映射到低维隐形语义空间,然后表示出词与词、句与句以及文档与文档之间的语义关系,这种语义关系跟用户自己阅读时所联系起来的语义关系非常接近。

显然,LSA是对向量空间搜索技术的很大改进。在基于LSA的搜索技术中有一个很好的应用就是Semetric搜索引擎,它以插件的形式提供给SharePoint,弥补了SharePoint基于向量空间搜索的不足,并提高了精准率。不过,LSA技术对于召回率并没有明显的改进,这就使得许多研究者继续致力于能够同时改进精准率和召回率的搜索技术,而这种技术就是基于概率的搜索技术。

概率搜索模型

介绍两种基于概率的搜索模型――贝叶斯概率搜索和概率隐形语义分析,基于这两种技术的搜索产品已经在企业中得到了比较广泛的应用。

贝叶斯搜索

一家名叫Autonomy的零售商就已经采用了贝叶斯搜索作为其企业搜索方式。贝叶斯搜索技术主要是依靠统计推理,在搜索过程中,假如我们知道某一特定的类文档中某词的出现频率,并假定待分类的新文档中也包含这一词的集合,那么我们就能够正确地预测这个新文档是否属于这个特定的类。

贝叶斯搜索技术对于那些具有异构性且稳定的文档具有很高的精准率。但是,由于其文档库持续更新,因此不太适合应用在高度动态的环境下,因为在这种环境中,文档的增加和修改都会很频繁。贝叶斯搜索的统计模型比较适用于指定内容下、高异构性的文档库,对于动态的文档就不太适合了。

事实上,这种搜索技术在企业中已经开始被采用,且应用越来越广泛。不过,贝叶斯搜索是一种需要大量计算资源支持的技术,否则其性能就会明显降低。虽然在特定环境下,比如对于化学和药物的搜索,由于其限制性反而能够被优化。但是,这种技术就不太适合应用在法律等部门了。

概率隐形语义分析

相比贝叶斯搜索,概率隐形语义分析(PLSA)对于企业来说可能更适用。PLSA能够把搜索关键词跟文档内部带有特定含义的一组词进行关联,并且通过测量文档空间中词的并发概率来减少空间的维度。

因为PLSA是对并发维度进行搜索,而不是对词汇维度进行搜索,所以其能够返回精确的搜索结果,即使是特定词汇不出现在搜索语句中。比如,搜索语句可能忽略掉了“president”这个词,但是搜索结果可能会返回关于权力平衡和政府宪法的文档,而这些文档显然都跟“president”这个词是有关联的。

另外,PLSA也能够将“迷惑性”最小化――迷惑性是指除训练文档(最初用来确定词与词之间、词与文档之间关系的训练数据集)之外的带有迷惑性结果的搜索。贝叶斯搜索和LSA都很容易造成这种迷惑性,而PLSA则可以去预测原先未被发现的那些文档中所包含的意义,这使得这种技术更加适合于动态文档集合,比较典型的应用就是在与法律相关的部门。

事实上,PLSA相比向量空间搜索技术和LSA,更容易实现基于“概念(Concept)”的搜索。这也是这种搜索策略更适合于应用在企业的原因之一,因为在企业的环境下,概念搜索和概念类聚比传统的关键词搜索要重要得多。

链接

搜索引擎的性能评估

在研究各种搜索技术时,我们首先需要关注一下搜索引擎的性能度量,也就是什么样的标准可以用于衡量搜索结果的好坏。现在虽然存在着许多评价搜索性能的指标,包括从简单直观的到复杂抽象的,不过有两种最基本的也是最简单的评价搜索引擎的方法――精准率(precision)和召回率(recall)。这两个指标都是数学“集合”中的概念,而“集合”的概念对于评估搜索的结果非常重要。

对于搜索的结果而言,还包含了两个重要的“集合”概念,一个是“相关文档(relevant documents)”集合,另一个是“检索文档(retrieved documents)”集合。相关文档集合是指所有跟查询真正相关的文档所构成的集合;而检索文档集合是指搜索返回的所有文档的集合,不管是不是与需求真正相关。

“精准率”是用来表示在检索到的所有文件中(包括所有相关的和无关的搜索结果),有多少文件是用户真正想要的。如果一个查询拥有百分之百的精准率,那就说明搜索到的所有结果都是用户希望得到的,否则说明这个搜索结果并非完全精确。举例来说,搜索结果返回了100条记录,其中只有10条是用户想要的,其他90条都是无关记录,那么精准率就是10%。

“召回率”是用来表示搜索引擎发现所有相关文档的能力,也就是说搜索引擎能够返回多少相关文档。举例来说,假如共有100个相关文档是用户真正感兴趣的,但是搜索的结果只返回了20条相关文档,那么召回率就是20%。一般来说,召回率越高,搜索引擎的效率就越高。

不过,在很多情况下,“精准率”与“召回率”是此消彼长的关系。如果想要达到完整的召回率,搜索引擎只需要返回文档库存中的所有文件,因为所有文件必然包括用户想要的那些文件,然而这种方式的结果就是使得精准率变得非常低,尤其是当所有文件的数目很大时。反过来说,如果想要获得更高的精准率,搜索引擎只需对任何搜索都返回0个文档,这样就不会有无关文档返回了。

目前,大部分的搜索技术对于这两项指标都是呈现互补的关系。当然,还有很多更严格的搜索参数会过滤掉大部分的不相关结果,这样就提高了精准率,但是,这种方式也排除了许多相关文档,这也就降低了召回率。因此,搜索技术的进步就是在力争同时实现较高的精准率和召回率。

企业搜索的三个关键词

灵活性、多样性与适用性

基于PLSA的搜索技术为企

业搜索提供了一个技术平台,但仅仅是搜索技术还不足以支撑整个企业搜索应用,平台的灵活性、多样性以及适用性是实现企业搜索的关键。

企业在选择搜索技术时,首先应该清楚地知道自己应用企业搜索技术想要实现什么样的目标。其实,目前很多企业对于企业搜索的实际需求很简单:希望能够具备搜索指定文档(包括其中的信息)的能力――当然这只是企业搜索技术中的一项应用。

前面提到,现代企业中信息的数量和种类在日益增多。那么,管理和分类这些海量电子信息与过去用纸质的方式来定义工作流程有什么样的区别呢?答案很简单,在信息数量急剧增加的情况下,原来手动的分类方式几乎是不可能实现的。因此,企业就需要一种更加自动化的搜索方式,当然这种方式必须是一种跟手工分类一样可靠的分类模式。

另外,今天,企业需要的是一种能够使得信息被精确定位的搜索方式,以此来为决策者提供有用的信息,并且在提供关键信息的同时,还可以通过信息的类聚来得出最终的结论。

所有这些都已经超越了我们原本对于搜索引擎的理解范畴。虽然说传统的搜索技术暂时还不会消失,但是企业要想更好地管理这些日益增加的电子信息,就必须要应用那些更先进的搜索技术,并选择合适的平台。而灵活性、多样性与适用性是衡量企业搜索平台的三项重要指标。

首先,搜索的灵活性对于企业应用来说至关重要。文献检索原本是组织或企业使用搜索技术的一项重要应用,然而随着企业业务的发展,对于企业搜索的需求已经远远不只搜索文件这么简单。企业需要面对归类、聚集以及各式各样的新问题,这主要是由于企业中的员工、客户以及其他外部资源需要进行有效的沟通。

在这样的沟通中就产生了各种文件和信息,企业必须要想办法有效灵活地去获得和利用这些信息,以帮助企业发展业务。企业所应用的搜索技术就是要完成所有这些信息的搜索工作。比如,有的时候,用户可能并不是要找到某一份文件,而是需要找到创建该文件的专家;又或者是,当用户需要跟一位客户进行交流时,就需要事先收集和分析与其相关的信息,包括财务方面的、历史的、个人相关的以及事件相关的信息。

在现代企业快节奏的工作状态下,企业没有时间也不可能以手工的方式来获得这些信息。因此,企业需要的是一种灵活的搜索技术,而不是一连串分散的搜索。也就是说,这种搜索技术应当足够灵活,以把文档、实时数据、数据库中的数据、事件说明以及账单纪录等信息合并成统一的视图,并根据需要解决的问题进行灵活调整。另外,搜索技术的这种灵活性还表现在其可以应对每天灵活多变的企业业务环境。

当然,并不是所有的企业都有能力去选择适当的搜索技术来解决这些新问题,一个好的、具有多样性的企业搜索技术就应该具备解决在企业搜索中可能面临难题的能力。将PLSA应用到分类文档就可以确定文档并确定相关专家,利用电子邮件与客户建立关联并进行事件分类和任务执行,这些都是企业搜索产品应该可以完成的。这就是我们所说的企业搜索的多样性问题,多样性消除了企业在整合不同信息管理方式时可能带来的一些难题。

最后,不同的企业隶属于不同的行业,也就有着自己不同的需求,比如医学、药理学、化学或者建筑等都会有着自己特殊的行业需要。因此,不同的搜索技术都会有它们所适合的领域,企业可以根据自己的行业特性来选择自己适用的企业搜索技术。

点评

在考察各种搜索技术时,企业需要先问自己这样一个问题:企业要利用搜索技术做哪些事情?如果答案是只做一些简单的搜索,比如仅需要找到某个产品的信息,那么大部分搜索技术对于企业来说就没有什么差别,也都可以胜任企业搜索的应用。但如果企业需要搜索技术为其做更多的事情,那么CIO就要好好地研究和比较一下不同的搜索技术了。

尤其,如果用户想要在企业中创建一个非常宽泛的“信息引力”系统,也就是能够管理所有或者大部分在未来几年内的信息流系统,那么企业就只能根据自己的实际情况选择最为合适的技术,并且一定要关注到其灵活性、多样性,以及其所适用的行业,因为现在还很少有搜索技术能够胜任所有的工作。