CN102193929B - 利用词信息熵的搜索方法及其设备 - Google Patents

利用词信息熵的搜索方法及其设备 Download PDF

Info

Publication number
CN102193929B
CN102193929B CN2010101205640A CN201010120564A CN102193929B CN 102193929 B CN102193929 B CN 102193929B CN 2010101205640 A CN2010101205640 A CN 2010101205640A CN 201010120564 A CN201010120564 A CN 201010120564A CN 102193929 B CN102193929 B CN 102193929B
Authority
CN
China
Prior art keywords
word
searching request
information entropy
word information
classification
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CN2010101205640A
Other languages
English (en)
Other versions
CN102193929A (zh
Inventor
金凯民
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN2010101205640A priority Critical patent/CN102193929B/zh
Priority to US12/932,643 priority patent/US8566303B2/en
Priority to PCT/US2011/000401 priority patent/WO2011112238A1/en
Priority to JP2012557039A priority patent/JP5450842B2/ja
Priority to EP11753707.6A priority patent/EP2545439A4/en
Publication of CN102193929A publication Critical patent/CN102193929A/zh
Priority to HK12100205.7A priority patent/HK1159813A1/xx
Application granted granted Critical
Publication of CN102193929B publication Critical patent/CN102193929B/zh
Priority to US14/024,431 priority patent/US9342627B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/90335Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3344Query execution using natural language analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • G06F16/319Inverted lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3325Reformulation based on results of preceding query
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请公开了一种确定词信息熵及利用词信息熵的搜索方法及其设备,主要内容包括:将各搜索请求按照所属的类目进行分组,形成一个类似于“大文本”的数据组,在此基础上计算词语的词信息熵值,可以准确地度量词语的重要程度,计算出的词信息熵值准确;进一步地,利用计算出的词信息熵值确定出搜索请求中重要的词语,以便于在搜索请求没有完全匹配的搜索结果时,将重要程度较高的词语的匹配结果优先展示给用户,提高搜索结果的准确性。

Description

利用词信息熵的搜索方法及其设备
技术领域
本申请涉及计算机网络领域,尤其涉及一种确定词信息熵的方法及设备,以及利用确定的词信息熵进行搜索的方法及设备。 
背景技术
搜索请求(Query)是搜索引擎场景下特有的短文本,用户通过搜索请求描述想要检索的信息,搜索引擎通过搜索请求中描述的信息检索数据库,返回用户想要的结果。用户发起的一次搜索请求平均由2.4个词语组成(例如:真丝连衣裙、直板手机),一般情况下用户使用自然文本作为搜索请求,而不是使用与、或、非之类的语句,因此搜索引擎根据接收到的搜索请求进行检索时,需要根据搜索请求中的信息量确定用户的意图进行搜索,并将搜索的结果返回给用户。 
词语信息量的度量即为词信息熵,一条信息的信息量大小与该信息的信息量是否准确有直接的关系。例如:如果要搞清楚一件不确定的事,或是对相关信息一无所知的事,就需要了解大量的信息;相反,如果已经对某件事已经有了较多的了解,则不需要太多的信息就能搞清楚。从这个角度出发,可以认为信息量的度量就等于不确定性的多少。因此,利用词信息熵的概念来确定搜索请求中的信息量,进而根据搜索请求中的信息量确定用户的真实意图并进行搜索。 
目前计算词信息熵的方式是利用公式TF/IDF实现的,其中,TF表示一个词语在文档集合中出现的总次数,IDF表示文档集合中出现该词语的文档的个数。针对某一个词语计算出的TF/IDF值越大,表示该词语越重要,反之,则表示该词语越不重要。 
上述通过TF/IDF公式计算词信息熵的方式适用于大文本(如字数较多的文档),对于搜索请求之类的短文本,由于一个搜索请求平均只包含2.4个词语,而一个词语在一个搜索请求中很少会出现多次,因此,采用TF/IDF公式计算词信息熵时,无法区分搜索请求中各词语的重要度。例如:如果一个搜索请求是“新款手机”,则采用TF/IDF公式计算词信息熵时,无法区分常用的修饰词“新款”和表达中心意图的词“手机”的重要度。 
为了实现针对短文本的词信息熵的计算,目前提出了一种基于语料的标题和描述统计词语重要度的方法。其原理是将文档(即大文本)的标题看作是一个搜索请求,利用标题中词语在描述中出现的频度信息为每个词语计算一个词信息熵。此算法避免了单纯在短文本中使用TF/IDF公式计算词信息熵的缺点,但该方法将文档的标题视为搜索请求,而标题中的词语不一定是文档中出现频次最高的词语,因此,可能会导致计算出的各词语的词信息熵与用户发起搜索请求的真实意图有偏差,使得搜索结果准确度较低。 
发明内容
一方面,本申请还提供一种搜索方法,用以解决在搜索请求没有完全匹配的搜索结果时,怎样提高搜索结果准确性的问题。 
一种利用词信息熵的搜索方法,包括: 
根据用户输入的一搜索请求,判断是否存在与所述一搜索请求匹配的搜索结果; 
若不存在与所述一搜索请求匹配的搜索结果,则根据保存的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语进行搜索; 
其中,各词语及各词语对应的词信息熵值是通过以下方式确定的: 
根据用户输入的各搜索请求所属的类目将所述搜索请求划分为多组,在对每组内的搜索请求分词后,根据统计分词后得到的各词语在每组内出现的概率 确定各词语的词信息熵值。 
一种利用词信息熵的搜索设备,包括: 
词信息熵值确定模块,用于根据用户输入的各搜索请求所属的类目将所述搜索请求划分为多组,在对每组内的搜索请求分词后,根据统计分词后得到的各词语在每组内出现的概率确定各词语的词信息熵值; 
判断模块,用于判断是否存在与用户输入的一搜索请求匹配的搜索结果; 
词语选择模块,用于在不存在与所述一搜索请求匹配的搜索结果时,根据所述词信息熵值确定模块中的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语; 
搜索模块,用于根据选择的词语进行搜索。 
本申请实施例具有如下有益效果: 
由于本申请中将搜索请求按照所属的类目进行分组,形成一个类似于“大文本”的数据组,在此基础上计算词语的词信息熵值,可以准确地度量词语的重要程度,计算出的词信息熵值准确;进一步地,利用计算出的词信息熵值确定出搜索请求中重要的词语,以便于在搜索请求没有完全匹配的搜索结果时,将重要程度较高的词语的匹配结果优先展示给用户,提高搜索结果的准确性。 
附图说明
图1为本申请实施例一确定词信息熵的方法示意图; 
图2为本申请实施例二利用利用词信息熵的进行搜索的方法示意图; 
图3(a)和图3(b)为本申请实施例四确定词信息熵的设备结构示意图; 
图4为本申请实施例五利用词信息熵的搜索设备结构示意图。 
具体实施方式
为了实现本申请实施例目的,提出了一种新的确定词信息熵的方案,通过将搜索请求按类目分组实现搜索请求的聚合,形成一个类似于“大文本”的数 据组;将聚合在一起的搜索请求进行分词,根据分词后得到的各词语在不同搜索请求组内的出现概率计算词语的词信息熵,可以有效地度量词语的重要性,以便于在未搜索出与搜索请求直接匹配的搜索结果时,可以以搜索请求中词信息熵最小的词语为关键字进行搜索,使搜索结果在最大程度上符合用户的意图。 
下面结合说明书附图对本申请实施例进行详细说明。 
实施例一: 
本申请实施例一提供了一种确定词信息熵的方法,其示意图如图1所示,包括以下步骤: 
步骤101:接收用户输入的多个搜索请求,并确定各搜索请求所属的类目。 
在本实施例中,用户输入的搜索请求是平均只包含约2~3个词语的短文本。 
本实施例不限定确定搜索请求所属类目的方案,下面给出两种可用的方案: 
第一种方案:使用用户行为数据自动挖掘搜索请求所属类目。 
在网络日志(web log)中从搜索请求到类目的直接点击行为往往受页面布局干扰,且数据较稀疏。因此需要一个间接的方法获得搜索请求所属类目。本申请实施例可以将在搜索对话框内输入搜索请求搜索跳转后的页面所属的类目确定为搜索请求所属的类目。具体地,通过跳转后的目标页面访问路径中的导入网址(reference url,refurl),确定所述搜索请求能够访问的已经确定所属类目的目标页面,由于每一目标页面都有一个类目,则将所述搜索请求能够访问的目标页面所属的类目作为搜索请求所属的类目,从而将该搜索请求映射到确定的类目上。在第一种方案的情况下,由于根据网页中当前的实际导入网址确定搜索请求所属的类目,使得确定结果的真实性较高。 
第二种方案:手动挖掘搜索请求所属的类目。 
通过预先设定的对应关系将搜索请求指向对应的类目,具体地,根据预设的类目和词语的对应关系,将搜索请求中的词语对应的类目作为搜索请求所属 的类目。在第二种方案的情况下,可以根据对应关系直接、快速地确定搜索请求所属的类目,提高类目确定过程的效率。 
需要说明的是,一个搜索请求可以属于一个类目,也可以属于多个类目,具体的分属情况可以根据类目的划分方式不同而不同。例如:如果在商品的类目包含“手机类目”和“电池类目”,则内容是“手机电池”的一个搜索请求可以同时属于“手机类目”和“电池类目”;如果在商品的类目包含“手机类目”但不包含“电池类目”,则内容是“手机电池”的一个搜索请求属于“手机类目”。 
步骤102:根据搜索请求所属的类目,将所述搜索请求划分为多组。 
较优的划分原则可以是:同一组内的搜索请求属于相同的类目。 
在本步骤中,将搜索请求按照所属的类目进行划分,划分后每组内包含的搜索请求可以看作是“大文本”,携带了多个搜索请求的信息量,后续可以在此基础上计算各词语的词信息熵。 
步骤103:将每组内的搜索请求分词,得到搜索请求分词后的词语。 
在本步骤中将搜索请求分词即为将搜索请求的内容按照词义进行划分。例如:内容为“新款手机”的搜索请求分词后可以得到“新款”和“手机”两个词语。 
步骤104:统计分词后得到的各词语在每组出现的概率。 
在本步骤中,将所述同一词语在每个组出现的次数分别除以该词语在所有组出现的次数之和,得到的商值为所述同一词语在该组内出现的概率,具体的计算公式如公式(1)所示: 
P i = x i y - - - ( 1 )
其中:Pi表示一个词语在第i个组内出现的概率;xi表示该词语在第i个组内出现的次数;y表示该词语在所有组出现的次数之和;1≤i≤N,N表示划分后得到的组的数量。 
步骤105:根据各词语在每组内出现的概率确定各词语的词信息熵值。 
本实施例不限于各种利用词语出现的概率计算词信息熵的方案,本步骤中给出一种可用的方案如下: 
通过公式(2)确定词语的词信息熵值: 
Entropy = - Σ i = 1 N ( P i * log 2 P i ) - - - ( 2 )
其中:Entropy表示一个词语的词信息熵值;Pi表示该词语在第i个组内出现的概率;N表示划分后得到的组的数量。 
计算出词语的词信息熵越大,表明该词语在搜索请求中的重要程度越低,反之,则该词语在搜索请求中的重要程度越高。 
在本实施例中,得到的词语的词信息熵值和该词语的对应关系可以存储在硬盘、内存等各种存储设备中,存储的各词语的词信息熵值也可以根据需要实时或周期性地进行更新。在按照实施例一的方案确定词语对应的词信息熵值之后,当有用户再次输入搜索请求时,可以采用以下词信息熵值的更新步骤: 
首先,确定用户再次输入的各搜索请求所属的类目,根据所属的类目将再次输入的所述搜索请求划分为多组。 
然后,将再次输入的搜索请求划分得到的多组与再次输入搜索请求之前得到的多组合并在一起。 
接着,对再次输入的各搜索请求进行分词,重新统计全部词语在合并后的各组内出现的概率。 
最后,根据各词语在每组内出现的概率重新确定各词语的用于搜索的词信息熵值。
例如:在t1时刻,当用户输入L条搜索请求时,根据L条搜索请求所属的类目将所述搜索请求划分为M组;然后对每组内的搜索请求分词,得到分词后的N个词语;接着统计N个分后在每组内出现的概率;最后根据统计的概率确定N个词语中每个词语用于搜索的词信息熵值。 
在t2时刻(t2时刻晚于t1时刻),当用户再次输入l条搜索请求时,根据l条搜索请求所属的类目将其划分为m组;然后将之前得到的M组和当前得到的m组合并(由于之前得到的M组和当前得到的m组中可能有相同内容的分组,因此,合并后得到的组的数量不大于M+m);接着对再次输入的l条搜索请求进行分词,得到分词后的n个词语;随即重新统计全部词语(由于之前得到的N个词语和当前得到的n个词语可能有相同的词语,因此,这里的全部词语的数量不大于N+n)在合并后的各组内出现的概率,根据各词语在每组内出现的概率重新确定各词语的用于搜索的词信息熵值。此时完成一次词信息熵值的更新过程,可以当最近更新的词信息熵值存储至存储设备中。其中:L、M、N、l、m和n是正整数,L与l的值可以相同也可以不相同,M与m的值可以相同也可以不相同,N与n的值可以相同也可以不相同。 
进一步地,考虑到在每次进行词信息熵值更新时需要占用一定的系统资源,为了在保证词信息熵值的准确性同时尽量减少系统资源的占用,不必对用户每次输入的搜索请求进行词信息熵值更新操作,而是在输入的搜索请求数量较大或是长时间未进行更新的情况下才更新词信息熵值。具体的做法包括以下两种: 
第一种做法: 
在确定一次词信息熵值之后(可以是首次确定词信息熵值之后,也可以是一次词信息熵值的更新过程之后),当用户再次输入搜索请求时,收集再次输入的各搜索请求并对其数量进行累加,之后判断累加的搜索请求的数量是否达到设定门限值;若达到设定门限值,表示当前用户输入的搜索请求数量较大,此时进行词信息熵值的更新,能够真实地反映各词语的重要程度,因此,根据累加后的搜索请求进行上述词信息熵值更新操作,在更新操作执行完成之后,将本次更新操作所使用的累加的搜索请求清零,并重新收集和累加用户再次发送的搜索请求;若未达到设定门限值,则继续等待用户再次输入搜索请求,直至累加的搜索请求的数量达到设定门限值后进行上述词信息熵值更新操作。 
在第一种做法下,在搜索请求的数量较多时才进行更新操作,避免了每次用户输入搜索请求就进行更新操作的情况下,导致系统资源占用量大,且在搜索请求较小时也无法真实地反映词语重要程度的问题。 
第二种做法: 
在确定一次词信息熵值之后,当用户再次输入搜索请求时,收集再次输入的各搜索请求,并判断是否已经过了一个设定的时间周期;若还未经过设定的时间周期,则继续等待用户再次输入搜索请求,直至经过一个设定的时间周期后,利用相邻两次时间周期内收集的搜索请求执行所述词信息熵值更新步骤;若已经过一个设定的时间周期,则根据相邻两个时间周期内收集的搜索请求执行所述词信息熵值更新步骤。 
例如:设定的时间周期是24小时,起始时刻是每日0:00分。在上一次0:00分到达后进行了一次词信息熵值更新步骤,则在下一次0:00分到达之前,将会收集用户输入的搜索请求,直至下一次0:00分到达后(也可以在下一次0:00分到达后的一个段时间内),利用相邻两个时间周期内(即24小时内)收集的搜索请求执行所述词信息熵值更新步骤。 
在第二种做法下,相隔一段时间后才进行一次更新操作,也就是当词语的词信息熵值很可能已出现变化时才进行更新操作,减少了重要性较低的中间操作,减少了词信息熵值更新操作占用的系统资源。 
通过本申请实施例一的方案,可以准确地计算出搜索请求中各词语的词信息熵值,确定搜索请求中的每个词语的重要性。本实施例一的方案可以应用在搜索业务或竞价广告等业务中。在应用到搜索业务时,如果相对较长的搜索请求没有完全匹配的搜索结果时,将重要程度较高的词语的匹配结果优先展示给用户;在应用到竞价广告业务时,当p4p竞价系统中没有与搜索请求匹配的竞价词时,可以去掉搜索请求中重要度较低的词语,利用重要度较高的词语作二次匹配。 
实施例二: 
本申请实施例二是在实施例一的基础上,利用确定的各词语的词信息熵值进行搜索的方法,如图2所示,包括以下步骤: 
步骤201:根据用户输入的一搜索请求,判断是否存在与所述一搜索请求匹配的搜索结果。
在本步骤中,如果存在与用户输入的一搜索请求直接匹配的搜索结果,则直接向用户返回相应的搜索结果;否则,执行步骤202。 
步骤202:根据已保存的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语。 
本步骤中,可以按照实施例一的方法将之前已接收到的搜索请求按照所属的类目进行分组,其中,同一组内的搜索请求属于相同的类目,并根据搜索请求分词后得到的词语在每组出现概率,确定词语的词信息熵值,并将得到的词语和词信息熵值的对应关系保存在存储设备中。进一步地,保存在存储设备中的词语和词信息熵值的对应关系还可以按照实施例一的方式进行更新。 
在执行到步骤202时,直接从已保存的词语和词信息熵值的对应关系中查找出词信息熵值小于设定阈值的至少一个词语,并将该查找出的词语作为重要程度高的词语。 
按照实施例一的方式确定词信息熵值的步骤可以在步骤201之前进行,也可以在步骤201之后、步骤202执行之前的任意时刻执行。 
步骤203:根据所述词信息熵值小于设定阈值的至少一个词语进行搜索。 
由于包含多个词语的搜索请求没有完全匹配的搜索结果,因此可以去掉重要程度较低的词语,只将重要程度最高的词语做二次匹配,将重要程度最高的词语的搜索结果优先返回给用户,可以最大程度地满足用户的搜索需要。 
进一步地,如果一个搜索请求中包含至少三个词语,且没有与该搜索请求匹配的搜索结果时,可以按照词信息熵值由小到大的顺序对该搜索请求中的词语进行排序,选择其中词信息熵值小于设定阈值的词语。假设该搜索请求中的词语1和词语2的词信息熵值小于设定阈值,则可以根据词语1进行搜索,也 可以根据词语2进行搜索,还可以根据词语1和词语2进行搜索。 
本申请实施例一、二的方案可以在分布式平台上进行,较优地,为了提高数据处理速度,可以使用hadoop分布式平台。每一个分布式平台可以由多台服务器组成,例如,由100台以上内存为8G的服务器组成。本申请实施例的方案可以以软件形式安装在分布式平台上,也可以直接在分布式平台上集成开发本申请实施例的软件,使用的开发语言可以有多种,包括但不限于java语言开发挖掘脚本。 
由于实施例一的方案可以应用在搜索业务或竞价广告等业务,因此,能够实现实施例一方案的软件可以集成在搜索引擎或用于广告竞价的设备中;或者,将能够实现实施例一、二方案的软件集成在搜索引擎中。 
实施例三: 
下面结合具体的实例对本申请实施例一和实施例二的方案进行详细描述。 
本实施例三的具体实现过程如下: 
第一步:确定输入的搜索请求1、搜索请求2……搜索请求n所属的类目。 
假设输入的搜索请求数量为2个,分别为“新款手机”和“新款连衣裙”,则确定“新款手机”所属的类目为“手机”,“新款连衣裙”所属的类目为“裙子”。 
第二步:将搜索请求1~搜索请求n按类目分组。 
将“新款手机”划分至组1,将“新款连衣裙”划分为组2。 
第三步:确定每组中搜索请求出现的频次信息,即确定D={<Q1,QC1>,<Q2,QC2>……},其中:D表示一个组,Q1表示一个搜索请求,QC1表示D组中与Q1相同的搜索请求的数量。 
如:D手机={<新款手机,1>};D裙子={<新款连衣裙,1>}。 
第四步:将每组内的搜索请求分词,此时每个组内包含的是词语。 
组1中的“新款手机”分词为“新款”、“手机”,组2中的“新款连衣裙”分词为“新款”、“连衣裙”。 
第五步:确定每组中词语出现的频次信息,即确定D={<W1,WC1>,<W2,WC2>……},其中:D表示一个组,W1表示一个词语,WC1表示D组中与W1相同的词语的数量。 
如:D手机={<新款,1>,<手机,1>};D裙子={<新款,1>,<连衣裙,1>}。 
第六步:计算各词语在每个组内的出现频率,即确定D={<W1,WP1>,<W2,WP2>……},其中:D表示一个组,W1表示一个词语,WP1表示D组中W1出现的概率,即WP1在D内出现的次数除以WP1在所有组内出现的总次数。 
如:“新款”在手机组内出现过一次,在裙子组内也出现过一次,因此,“新款”在手机组内的概率为0.5,在裙子组内的概率为0.5。 
D手机={<新款,0.5>,<手机,1>};D裙子={<新款,0.5>,<连衣裙,1>}。 
第七步:计算各词语的词信息熵值。 
Entropy新款=-0.5*log2(0.5)-0.5*log2(0.5)=1 
Entropy手机=-1*log2(1)-0*log2(0)=0 
Entropy连衣裙=-1*log2(1)-0*log2(0)=0 
由于词语“手机”和“连衣裙”只在一个类目中出现,其不确定性很小,词信息熵值为0;而词语“新款”在两个类目中都出现了,不确定性较大,词信息熵值为1。 
第八步:将计算得到的每个词语的词信息熵值和该词语的对应关系保存在存储设备中。 
第九步:当有用户以“新款手机”为搜索请求获得搜索结果时,如果确定当前没有搜索到与“新款手机”完全匹配的搜索结果时,则分别根据存储设备中的词信息熵值和词语的对应关系确定“新款手机”中各词语的词信息熵值。 
第十步:由于词语“手机”的词信息熵值最小,因此,以“手机”为关键字进行搜索,并将搜索结果优先返回给用户,以完成搜索操作。 
实施例四: 
本申请实施例四还提供一种确定词信息熵的设备,如图3(a)和图3(b)所示,所述设备包括类目确定模块101、分组模块102、分词模块103、概率确定模块104和词信息熵值确定模块105,其中:类目确定模块101用于确定用户输入的各搜索请求所属的类目;分组模块102用于根据所属的类目将所述搜索请求划分为多组;分词模块103用于对每组内的搜索请求分词;概率确定模块104用于统计分词后得到的各词语在每组内出现的概率;词信息熵值确定模块105用于根据各词语在每组内出现的概率确定各词语的用于搜索的词信息熵值。 
所述词信息熵值确定模块105具体用于通过以下公式确定词语的词信息熵值: 
Entropy = - &Sigma; i = 1 N ( P i * log 2 P i )
其中:Entropy表示一个词语的词信息熵值;Pi表示该词语在第i个组内出现的概率;N表示划分得到的组的数量。 
所述类目确定模块101可以有两种确定搜索请求所属类目的功能: 
第一种功能:所述类目确定模块101具体用于根据所述搜索请求确定能够访问的已经确定所属类目的目标网页,将所述目标网页所属的类目作为所述搜索请求所属的类目。 
第二种功能:所述类目确定模块101具体用于根据预设的类目和词语的对应关系,将搜索请求中的词语对应的类目作为搜索请求所属的类目。 
所述确定词信息熵的设备还包括合并模块106,各模块之间相互协作进行词信息熵值更新的过程如下: 
所述类目确定模块101还用于确定用户再次输入的各搜索请求所属的类目;所述分组模块102还用于根据所属的类目将再次输入的所述搜索请求划分为多组;合并模块106用于将再次输入的搜索请求划分得到的多组与再次输入搜索请求之前得到的多组合并;所述分词模块103还用于对再次输入的各搜索请求进行分词;所述概率确定模块104还用于重新统计全部词语在合并后的各 组内出现的概率;所述词信息熵值确定模块105还用于根据重新统计的各词语在每组内出现的概率重新确定各词语的用于搜索的词信息熵值。 
进一步地,可以根据用户输入的搜索请求的数量或更新周期来判断是否进行词信息熵值的更新,具体地: 
如图3(a)所示,为根据用户输入的搜索请求的数量来判断是否进行词信息熵值的更新的示意图: 
所述确定词信息熵的设备还包括第一收集模块107和第一触发模块108,其中:第一收集模块107用于收集再次输入的各搜索请求并对再次输入的搜索请求的数量进行累加;第一触发模块108用于在累加后的搜索请求的数量达到设定门限值时,根据累加后的搜索请求触发所述类目确定模块101。 
如图3(b)所示,为根据新周期来判断是否进行词信息熵值更新的示意图: 
所述确定词信息熵的设备还包括第二收集模块109和第二触发模块110,其中:第二收集模块109用于收集再次输入的各搜索请求;第二触发模块110用于在经过设定的时间周期时,根据收集的搜索请求触发所述类目确定模块101。 
本实施例中确定词信息熵的设备实施例一方案与实施例三中第一步~第七步的执行主体,该确定词信息熵的设备可以是安装在分布式平台上上逻辑设备,也可以是能够实现实施例一方案的硬件设备,还可以是软、硬件结合的设备。 
实施例五: 
本发明实施例五提供一种利用词信息熵的搜索设备,如图4所示,所述设备包括词信息熵值确定模块201、判断模块202、词语选择模块203和搜索模块204,其中:词信息熵值确定模块201用于根据用户输入的各搜索请求所属的类目将所述搜索请求划分为多组,在对每组内的搜索请求分词后,根据统计分词后得到的各词语在每组内出现的概率确定各词语的词信息熵值;判断模块202用于判断是否存在与用户输入的一搜索请求匹配的搜索结果;词语选择模 块203用于在不存在与所述一搜索请求匹配的搜索结果时,根据所述词信息熵值确定模块中的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语;搜索模块204用于根据选择的词语进行搜索。 
在本实施例五的搜索设备中,词信息熵值确定模块201可以是本实施例四中的确定词信息熵的设备,也就是说,可以将实施例四中的确定词信息熵的设备集成在本实施例五的搜索设备中。本实施例五的搜索设备可以作为软件集成在搜索引擎中,也可以是一个独立的搜索引擎,还可以是软、硬件相结合的设备。 
通过本申请实施例描述的方法及设备,提高了确定的搜索请求中词语的词信息熵的准确性,进而可以根据准确性较高的词信息熵确定搜索请求中重要度较高的词语;在搜索请求没有搜索到完全匹配的搜索结果时,利用搜索请求中重要度较高的词语进行匹配,得到准确度较高的搜索结果;在p4p竞价系统中没有与搜索请求匹配的竞价词时,利用重要度较高的词语进行二次匹配,直至匹配出合适的竞价词。 
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。 
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一 个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。 
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。 
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。 
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。 
显然,本领域的技术人员可以对本申请进行各种改动和变形而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变形属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变形在内。 

Claims (15)

1.一种利用词信息熵的搜索方法,其特征在于包括:
根据用户输入的一搜索请求,判断是否存在与所述一搜索请求匹配的搜索结果;
若不存在与所述一搜索请求匹配的搜索结果,则根据保存的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语进行搜索;
其中,各词语及各词语对应的词信息熵值是通过以下方式确定的:
根据用户输入的各搜索请求所属的类目将所述搜索请求划分为多组,在对每组内的搜索请求分词后,根据统计分词后得到的各词语在每组内出现的概率确定各词语的词信息熵值。
2.如权利要求1所述的方法,其特征在于,确定搜索请求所属的类目的方式为:
根据所述搜索请求确定能够访问的已经确定所属类目的目标网页,将所述目标网页所属的类目作为所述搜索请求所属的类目。
3.如权利要求1所述的方法,其特征在于,确定搜索请求所属的类目的方式为:
根据预设的类目和词语的对应关系,将搜索请求中的词语对应的类目作为搜索请求所属的类目。
4.如权利要求1~3任一所述的方法,其特征在于,在确定词语的词信息熵值之后,还包括如下词信息熵值更新步骤:
确定用户再次输入的各搜索请求所属的类目;
根据所属的类目将再次输入的所述搜索请求划分为多组;
将再次输入的各搜索请求划分得到的多组与之前得到的多组合并;
对再次输入的各搜索请求进行分词;
重新统计全部词语在合并后的各组内出现的概率; 
根据各词语在每组内出现的概率重新确定各词语的用于搜索的词信息熵值。
5.如权利要求4所述的方法,其特征在于,在确定词语的词信息熵值之后,词信息熵值更新之前,所述方法还包括以下步骤:
收集用户再次输入的各搜索请求并对再次输入的搜索请求进行累加;
在累加后的搜索请求的数量达到设定门限值时,根据累加后的搜索请求执行所述词信息熵值更新步骤。
6.如权利要求4所述的方法,其特征在于,在确定词语的词信息熵值之后,词信息熵值更新之前,所述方法还包括以下步骤:
收集用户再次输入的各搜索请求;
在经过设定的时间周期时,根据收集的搜索请求执行所述词信息熵值更新步骤。
7.如权利要求4所述的方法,其特征在于,所述词语的词信息熵值通过以下公式确定:
Figure FDA00002500325500021
其中:Entropy表示一个词语的词信息熵值;Pi表示该词语在第i个组内出现的概率;N表示划分得到的组的数量。
8.一种利用词信息熵的搜索设备,其特征在于包括:
词信息熵值确定模块,用于根据用户输入的各搜索请求所属的类目将所述搜索请求划分为多组,在对每组内的搜索请求分词后,根据统计分词后得到的各词语在每组内出现的概率确定各词语的词信息熵值;
判断模块,用于判断是否存在与用户输入的一搜索请求匹配的搜索结果;
词语选择模块,用于在不存在与所述一搜索请求匹配的搜索结果时,根据所述词信息熵值确定模块中的各词语及各词语对应的词信息熵值,在所述一搜索请求分词后得到的词语中选择词信息熵值小于设定阈值的至少一个词语;
搜索模块,用于根据选择的词语进行搜索。
9.如权利要求8所述的利用词信息熵的搜索设备,其特征在于,所述词信息熵值确定模块具体包括:
类目确定模块,用于确定用户输入的各搜索请求所属的类目;
分组模块,用于根据所属的类目将所述搜索请求划分为多组;
分词模块,用于对每组内的搜索请求分词;
概率确定模块,用于统计分词后得到的各词语在每组内出现的概率;
词信息熵值确定模块,用于根据所述概率确定各词语的用于搜索的词信息熵值。
10.如权利要求9所述的搜索设备,其特征在于,
所述类目确定模块,具体用于根据所述搜索请求确定能够访问的已经确定所属类目的目标网页,将所述目标网页所属的类目作为所述搜索请求所属的类目。
11.如权利要求9所述的搜索设备,其特征在于,
所述类目确定模块,具体用于根据预设的类目和词语的对应关系,将搜索请求中的词语对应的类目作为搜索请求所属的类目。
12.如权利要求9~11任一所述的搜索设备,其特征在于,
所述类目确定模块,还用于确定用户再次输入的各搜索请求所属的类目;
所述分组模块,还用于根据所属的类目将再次输入的所述搜索请求划分为多组;
所述确定词信息熵的设备还包括合并模块,用于将再次输入的搜索请求划分得到的多组与之前得到的多组合并;
所述分词模块,还用于对再次输入的各搜索请求进行分词;
所述概率确定模块,还用于重新统计全部词语在合并后的各组内出现的概率;
所述词信息熵值确定模块,还用于根据重新统计的各词语在合并后的各组内出现的概率重新确定各词语的用于搜索的词信息熵值。 
13.如权利要求12所述的搜索设备,其特征在于,所述词信息熵值确定模块还包括:
第一收集模块,用于收集再次输入的各搜索请求并对再次输入的搜索请求的数量进行累加;
第一触发模块,用于在累加后的搜索请求的数量达到设定门限值时,根据累加后的搜索请求触发所述类目确定模块。
14.如权利要求12所述的搜索设备,其特征在于,所述词信息熵值确定模块还包括:
第二收集模块,用于收集再次输入的各搜索请求;
第二触发模块,用于在经过设定的时间周期时,根据收集的搜索请求触发所述类目确定模块。
15.如权利要求12所述的搜索设备,其特征在于,所述词信息熵值确定模块,具体用于通过以下公式确定词语的词信息熵值:
Figure FDA00002500325500041
其中:Entropy表示一个词语的词信息熵值;Pi表示该词语在第i个组内出现的概率;N表示划分得到的组的数量。 
CN2010101205640A 2010-03-08 2010-03-08 利用词信息熵的搜索方法及其设备 Expired - Fee Related CN102193929B (zh)

Priority Applications (7)

Application Number Priority Date Filing Date Title
CN2010101205640A CN102193929B (zh) 2010-03-08 2010-03-08 利用词信息熵的搜索方法及其设备
US12/932,643 US8566303B2 (en) 2010-03-08 2011-03-01 Determining word information entropies
JP2012557039A JP5450842B2 (ja) 2010-03-08 2011-03-02 単語情報エントロピの決定
EP11753707.6A EP2545439A4 (en) 2010-03-08 2011-03-02 Determining word information entropies
PCT/US2011/000401 WO2011112238A1 (en) 2010-03-08 2011-03-02 Determining word information entropies
HK12100205.7A HK1159813A1 (en) 2010-03-08 2012-01-09 Method and apparatus for searching by using word information entropies
US14/024,431 US9342627B2 (en) 2010-03-08 2013-09-11 Determining word information entropies

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010101205640A CN102193929B (zh) 2010-03-08 2010-03-08 利用词信息熵的搜索方法及其设备

Publications (2)

Publication Number Publication Date
CN102193929A CN102193929A (zh) 2011-09-21
CN102193929B true CN102193929B (zh) 2013-03-13

Family

ID=44532194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010101205640A Expired - Fee Related CN102193929B (zh) 2010-03-08 2010-03-08 利用词信息熵的搜索方法及其设备

Country Status (6)

Country Link
US (2) US8566303B2 (zh)
EP (1) EP2545439A4 (zh)
JP (1) JP5450842B2 (zh)
CN (1) CN102193929B (zh)
HK (1) HK1159813A1 (zh)
WO (1) WO2011112238A1 (zh)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8938466B2 (en) * 2010-01-15 2015-01-20 Lexisnexis, A Division Of Reed Elsevier Inc. Systems and methods for ranking documents
US9110986B2 (en) * 2011-01-31 2015-08-18 Vexigo, Ltd. System and method for using a combination of semantic and statistical processing of input strings or other data content
CN103106192B (zh) * 2013-02-02 2016-02-03 深圳先进技术研究院 文学作品作者识别方法及装置
CN103116572B (zh) * 2013-02-02 2015-10-21 深圳先进技术研究院 文学作品出品时期识别方法及装置
CN103678274A (zh) * 2013-04-15 2014-03-26 南京邮电大学 一种基于改进互信息和熵的文本分类特征提取方法
US20140350919A1 (en) * 2013-05-27 2014-11-27 Tencent Technology (Shenzhen) Company Limited Method and apparatus for word counting
CN104009970A (zh) * 2013-09-17 2014-08-27 宁波公众信息产业有限公司 一种网络信息采集方法
US10042936B1 (en) * 2014-07-11 2018-08-07 Google Llc Frequency-based content analysis
CN104199832B (zh) * 2014-08-01 2017-08-22 西安理工大学 基于信息熵的金融网络异常交易社区发现方法
CN105224695B (zh) * 2015-11-12 2018-04-20 中南大学 一种基于信息熵的文本特征量化方法和装置及文本分类方法和装置
CN106649868B (zh) * 2016-12-30 2019-03-26 首都师范大学 问答匹配方法及装置
US10607604B2 (en) * 2017-10-27 2020-03-31 International Business Machines Corporation Method for re-aligning corpus and improving the consistency
CN108256070B (zh) * 2018-01-17 2022-07-15 北京百度网讯科技有限公司 用于生成信息的方法和装置
CN108664470B (zh) * 2018-05-04 2022-06-17 武汉斗鱼网络科技有限公司 视频标题信息量的度量方法、可读存储介质及电子设备
CN110750986B (zh) * 2018-07-04 2023-10-10 普天信息技术有限公司 基于最小信息熵的神经网络分词系统及训练方法
JP6948425B2 (ja) * 2020-03-19 2021-10-13 ヤフー株式会社 判定装置、判定方法及び判定プログラム
CN112765975B (zh) * 2020-12-25 2023-08-04 北京百度网讯科技有限公司 分词岐义处理方法、装置、设备以及介质
JP7045515B1 (ja) 2021-07-19 2022-03-31 ヤフー株式会社 情報処理装置、情報処理方法および情報処理プログラム
CN115858478B (zh) * 2023-02-24 2023-05-12 山东中联翰元教育科技有限公司 一种可互动的智慧教学平台的数据快速压缩方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2825814B1 (fr) * 2001-06-07 2003-09-19 Commissariat Energie Atomique Procede de creation automatique d'une base de donnees images interrogeable par son contenu semantique
US6836777B2 (en) * 2001-11-15 2004-12-28 Ncr Corporation System and method for constructing generic analytical database applications
US6941297B2 (en) * 2002-07-31 2005-09-06 International Business Machines Corporation Automatic query refinement
CN1629833A (zh) * 2003-12-17 2005-06-22 国际商业机器公司 实现问与答功能和计算机辅助写作的方法及装置
US20080077570A1 (en) * 2004-10-25 2008-03-27 Infovell, Inc. Full Text Query and Search Systems and Method of Use
JP2006343925A (ja) * 2005-06-08 2006-12-21 Fuji Xerox Co Ltd 関連語辞書作成装置、および関連語辞書作成方法、並びにコンピュータ・プログラム
US20070250501A1 (en) * 2005-09-27 2007-10-25 Grubb Michael L Search result delivery engine
CN101535945A (zh) * 2006-04-25 2009-09-16 英孚威尔公司 全文查询和搜索系统及其使用方法
CN101122909B (zh) * 2006-08-10 2010-06-16 株式会社日立制作所 文本信息检索装置以及文本信息检索方法
US7392250B1 (en) * 2007-10-22 2008-06-24 International Business Machines Corporation Discovering interestingness in faceted search
US7860885B2 (en) * 2007-12-05 2010-12-28 Palo Alto Research Center Incorporated Inbound content filtering via automated inference detection
US7877389B2 (en) * 2007-12-14 2011-01-25 Yahoo, Inc. Segmentation of search topics in query logs
JP5351182B2 (ja) * 2008-02-25 2013-11-27 アティジオ リミテッド ライアビリティ カンパニー 関心領域についての関連情報の決定
CN101510221B (zh) * 2009-02-17 2012-05-30 北京大学 一种用于信息检索的查询语句分析方法与系统
US9928296B2 (en) * 2010-12-16 2018-03-27 Microsoft Technology Licensing, Llc Search lexicon expansion

Also Published As

Publication number Publication date
JP5450842B2 (ja) 2014-03-26
US8566303B2 (en) 2013-10-22
WO2011112238A1 (en) 2011-09-15
US9342627B2 (en) 2016-05-17
US20110219004A1 (en) 2011-09-08
HK1159813A1 (en) 2012-08-03
CN102193929A (zh) 2011-09-21
EP2545439A1 (en) 2013-01-16
US20140074884A1 (en) 2014-03-13
JP2013522720A (ja) 2013-06-13
EP2545439A4 (en) 2017-03-08

Similar Documents

Publication Publication Date Title
CN102193929B (zh) 利用词信息熵的搜索方法及其设备
CN102760138B (zh) 用户网络行为的分类方法和装置及对应的搜索方法和装置
CN102402619B (zh) 一种搜索方法和装置
CN102402605B (zh) 用于搜索引擎索引的混合分布模型
KR100962925B1 (ko) 파일 시스템에 대한 검색 순위부여 방법 및 관련된 검색엔진
CN108304444B (zh) 信息查询方法及装置
CN102855309B (zh) 一种基于用户行为关联分析的信息推荐方法及装置
CN102236677A (zh) 一种基于问答系统的信息匹配方法及系统
CN105701216A (zh) 一种信息推送方法及装置
CN105389349A (zh) 词典更新方法及装置
CN103207881A (zh) 查询方法和装置
CN109189931B (zh) 一种目标语句的筛选方法及装置
CN104808892A (zh) 一种应用图标排序方法、装置、系统及相关设备
CN110162522A (zh) 一种分布式数据搜索系统及方法
CN111383005B (zh) 数字货币流向追踪方法及装置
CN106294564A (zh) 一种视频推荐方法及装置
TW201301064A (zh) 搜尋方法及設備
CN103136262A (zh) 信息检索方法及装置
CN108614843B (zh) 网站内容的评估方法及装置
CN111191111A (zh) 内容推荐方法、装置及存储介质
Tseng et al. Mining temporal mobile sequential patterns in location-based service environments
CN103699534A (zh) 系统目录中数据对象的显示方法及装置
CN110427574B (zh) 路线相似度确定方法、装置、设备和介质
CN102724290B (zh) 一种获取目标客户群的方法、设备及系统
CN107133321B (zh) 页面的搜索特性的分析方法和分析装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1159813

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1159813

Country of ref document: HK

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130313

CF01 Termination of patent right due to non-payment of annual fee