zoukankan      html  css  js  c++  java
  • 搜索引擎的查询意图识别(关联分析)

    原文链接:http://blog.csdn.net/zhoubl668/article/details/7857756

    by 张帆(自然语言处理组@搜狗)

    通用搜索VS垂直搜索:

            通用搜索特点:
                    抓取互联网上一切有价值的页面,同意建立索引,以关键字匹配为基本检索方式,以网页title和summary为展现方式
                    google, 百度,搜狗,搜搜,有道
            垂直搜索特点:
                    以一特定类别为主题,只抓取与主题相关信息,根据主题特点有针对性的建立相应的索引检索方式,筛选方式,以及展现方式
                    机票搜索,地图搜索,购物搜索(一淘)……
                    
    解决方法:通用搜索引擎 + 垂直搜索引擎
            意图识别
            
    意图搜索的难点:

            输入不规范
                    输入方法多样化
                    非常不规范
                    有堆砌关键词
                    自然语言查询
                    甚至非标准自然语言
            多意图
                    如:仙剑奇侠传
                            游戏?--> 游戏软件?……
                            电视剧?--> 电视剧下载?相关新闻?……
                            电影?--> 电影下载?查看影评?剧情介绍?……
                            音乐?--> 歌曲下载?在线听歌?歌词下载?……
                            小说?--> 小说下载?在线观看?……
            意图强度
                    如:荷塘月色
                    荷塘月色歌曲 --> 歌曲下载:50%
                    荷塘月色小区 --> 房产需求:20%
                    荷塘月色菜 --> 菜谱需求:10%
            结果可靠性
                    供我们获取搜索结果的这些垂直站点往往是一些中小型的网站,我们需要保证搜索结果的准确性和相关性
                    如:遥控汽车
                    预期结果:返回所有遥控汽车的相关结果
                    实际返回:
                            遥控汽车--> 没有遥控汽车相关结果
                            遥控--> 返回遥控器,遥控飞机等于原意图无关的结果
                            汽车--> 返回汽车模型,汽车配件等于原意图无关的结果
                            (比如京东就是这么拆搜索词的)
            时效性
                    如:iPhone5 7月1日上市销售
                    6月30日的查询意图:新闻90%,百科10%
                    7月1日的查询意图:新闻70%,购买25%,百科5%
                    8月1日的查询意图:购买50%,资讯40%,其他10%
                    5年以后的查询意图:百科100%
            
    词表穷举法:

            最简单直接的方法,通过词表的直接匹配来获取查询意图,也可加入适用于较为简单且查询较为集中的类别,比如电视台节目查询,节假日查询,餐馆查询等
                    如:北京的天气怎么样啊
                    (停用词替换) --> [北京][天气][怎么样]
                    (查询词归一) --> {城市][关键词][疑问词]
                    (顺序无关) --> {[城市], [关键词], [疑问词]}
                    给出白名单:

    规则解析法:

            适用于一些查询虽然不集中但非常符合规则的类别,通过规则解析查询来做意图识别和关键信息提取的,比如汇率查询,计算器,度量衡等
                    如:236.2美金能换多少RMB?
                    [236.2][美金][今天]能换多少[人民币]?
                    [数字][货币单位][日期]能换多少[货币单位]?
                    ★通过知识图表,来替换/对应/归一
                    解析:
                            数量:236.2
                            源货币:美元(不再是“美金”)
                            目的货币:人民币
                    ★配合自己建立的一些语言模型,可以比较好的解决召回率比较低的问题
                            模型训练的比较好的话,相对召回也很不错
                            但是比如购物啊什么的,是无法做这种信息模型的
            
    统计模型分类法:(最常用)

            查询词分类:基于查询词本身的分类,也就是建立基于字面意思的统计分类模型
            查询词扩展分类:基于查询词的扩展信息的分类,也就是基于真实社会知识的分离,通常是搜索结果扩展
                    比如“家常菜”居然是个电视剧!
            查询词分类:
            查询词-->查询纠错、规则化、知识词表-->Uni-gram, Bi-gram, CRF, 语料分类模型-->搜索结果验证、垂直搜索结果验证-->查询扩展分类结果
            查询扩展分类:
            查询词-->搜索结果1,2,3,4-->标题分类、摘要分类、网站分类-->结果分类1,2,3,4-->查询扩展分类结果
                    (针对每个搜索结果,验证一下查询意图强度和类别)
                    
            需要配合持续更新的语料,就可以通过流程自动更新
            比较可行的方法如:
            先到软件下载站
            把排行榜的TOP 100拖下来(这些都有软件下载的查询需求)
            搜索一遍,然后每个取前50个搜过结果
            作为一个5000大小的语料,可以训练
            可以持续、自动更新

    搜索意图识别未来:

            无类别概念的意图识别
                    基于垂直搜索的分类模型,而非基于类别的分类模型,帮助用户获取想要的内容而不限定类别
                    比如将 类别和网站本身 建立联系,直接在网站内部的数据库中搜索
            个性化意图上下文分析
                    根据用户特征建立个性化的信息,获取用户的短期兴趣和长期兴趣,准对性的优化意图识别
            精准意图理解
                    更加精准的意图理解,所有价值信息的解析,目前的展现多为整体展现,可以再进一步来生成个性展现
            语言应用的意图理解
                    针对语言类应用的特点优化,比如语言纠错,个性信息的辅助意图识别等


    附加:

            搜索提示:搜索 智能 ,搜索引擎提示 智能手机、智能手表

                                有多少可能性:关联分析、rank序列、文档建模

            ................................

  • 相关阅读:
    odoo开发笔记 -- 新建模块扩展原模块增加菜单示例
    div内部div居中
    Css中!important的用法
    SQLServer日期格式转换
    jquery中innerheight outerHeight()与height()的区别
    简单明了区分escape、encodeURI和encodeURIComponent
    PDF预览之PDFObject.js总结
    PDFObject.js,在页面显示PDF文件
    System.IO.Directory.GetCurrentDirectory与System.Windows.Forms.Application.StartupPath的用法
    angular 模块 @NgModule的使用及理解
  • 原文地址:https://www.cnblogs.com/wishchin/p/9200177.html
Copyright © 2011-2022 走看看