zoukankan      html  css  js  c++  java
  • solr搜索分词优化

    solr服务器配置好在搜索时经常会搜出无关内容,把不该分的词给分了,导致客户找不到自己需要的内容,那么我们就从配置词典入手解决这个问题。

    首先需要知道自带的词典含义:

    停止词:停止词是无功能意义的词,比如is   、a   、are  、”的”,“得”,“我” 等,这些词会在句子中多次出现却无意义,所以在分词的时候需要把这些词过滤掉。

    扩展词库:就是不想让哪些词被分开,让他们分成一个词。

    同义词:假设有一个电子商务系统,销售书籍,提供了一个搜索引擎,一天,市场部的人要求客户在搜索书籍时,同义词就是比如输入“电子”,除了展示电子相关的书籍,还需要展现“机器”相关的书籍。

    1. 配置停止词和扩展词库。

    将IKAnalyzer解压文件夹下的stopword.dic和IKAnalyzer.cfg.xml复制到tomcat/webapps/solr/WEB-INF/classes下,再新建一个ext.dic,里面的格式和stopword.dic一致。

    并修改IKAnalyzer.cfg.xml如下面的格式可以配置多个停止词或者扩展词库文件。

    <!-- lang: xml -->
    <properties> 
    <comment>IK Analyzer 扩展配置</comment>
    <!--用户可以在这里配置自己的扩展字典-->
    <entry key="ext_dict">ext.dic;</entry>
    <!--用户可以在这里配置自己的扩展停止词字典-->
    <entry key="ext_stopwords">english_stopword.dic;stopword.dic</entry>

    2.同义词配置

    在solr数据文件conf目录下schema.xml 中加入以下两个字段:

    <!-- lang: xml -->
    <field name="id" type="string" indexed="true" stored="true" required="true" />
    <field name="description" type="text_syn" indexed="true" stored="true" />

    在 schema.xml 中增加 text_syn 类型的定义:

    <!-- lang: xml -->
    <fieldType name="text_syn" class="solr.TextField">
        <analyzer type="query">
        <tokenizer class="solr.WhitespaceTokenizerFactory"/>
        <filter class="solr.LowerCaseFilterFactory"/>
        </analyzer>
       <analyzer type="index">
       <tokenizer class="solr.WhitespaceTokenizerFactory"/>
      <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false" />
    <filter class="solr.LowerCaseFilterFactory"/>
        </analyzer> </fieldType>

    在相同的conf目录下的 synonyms.txt 中增加

    西安,长安,13朝古都,陕西省会

    那么在下次搜索西安时也会带出后面的。

    3. 使用设计

    针对每个商品设置搜索关键词,同步到扩展词库中;

    全局设置不想被分词的词,放到停止词库中;

    全局设置想关联的同义词,放到同义词中;

  • 相关阅读:
    已知国内量化平台
    用 python 生成一个简单的词云图
    相似性度量的相关文章
    三种交易系统
    一个均线交易策略的回测
    Python在金融量开源项目列表
    雾霾天出行,如何精确避开“雷区”?2016 SODA数据侠十强
    通达信5分钟.lc5和.lc1文件格式
    STM32的USART中断死循环,形成死机。
    挑战练习6.4 报告编译版本
  • 原文地址:https://www.cnblogs.com/madyina/p/8537365.html
Copyright © 2011-2022 走看看