背景说明

公司有涉及汽车相关业务,需要基于输入的车型信息,去匹配系统已有的车型数据。
如输入“昂克赛拉 2016款 1.5L 自动”,
系统已有数据:“马自达3 昂克赛拉 2016款 两厢 1.5L AT 运动型”、“马自达3 昂克赛拉 2016款 两厢 2.0L AT 运动型”、“马自达3 昂克赛拉 2016款 两厢 2.0L AT 旗舰型”、“马自达3 昂克赛拉 2016款 两厢 1.5L MT 运动型”…
按匹配度展示给用户

实现

由于内容中包含中文、英文、数字,采用中文分词器(ik)来进行分词处理

优化前效果(使用ik-smart分词)

示例一:

问题:专有名词“昂克赛拉”被解析为四个词,不识别这个专有词

示例二:

问题:专有名词AT,没有解析处理。 被当做停用词处理掉了

示例三:

问题:汽车名词中,“手动”和“MT”表达的是同一个含义。本示例中的“手动”和示例二 MT这个词,没有解析为相同的词,降低了匹配度。

优化后效果

使用自定义的analyzer (ik_car_analyzer)

此时,可以看到,“昂克赛拉”被解析为一个词,AT没有被当做停用词且其同义词被解析出来了

调整点

  • 更新词库,添加汽车专用名词、品牌等信息。
    修改ik分词器下的词库文件,添加所有的汽车品牌、系列名称 (./plugins/ik/config/main.dic)
  • 构建同义词。如AT=自动,MT=手动。参考资料如下:
    • https://blog.csdn.net/yusewuhen/article/details/50685685
    • https://blog.csdn.net/tianzhaixing2013/article/details/51506496
  • 修正停用词。如AT,被忽略了
    修改ik分词器插件下的停止词文件 (./plugins/ik/config/stopword.dic)
{"settings": {"analysis": {"analyzer": {"ik_car_analyzer": {"type":      "custom","tokenizer": "ik_smart","char_filter": [],"filter": ["lowercase","ik_car_filter"      // 自定义过滤器]}},"filter": {"ik_car_filter": {"type": "synonym",   // 定义同义词"synonyms_path": "../plugins/ik/config/synonym.dic"}}}}
}

elasticsearch ik分词--实现专有名词分词 同义词解析相关推荐

  1. elasticsearch IK分词器的安装、使用与扩展

    ES 的默认分词器(standard)不支持中文分词,满足不了平时的需求,所以需要用能够支持中文分词的 IK 分词器.而且 IK 分词器也是支持英文分词的. 本文介绍下IK分词器的安装.基本使用方法: ...

  2. elasticsearch ik分词实现 中文、拼音、同义词搜索

    EasticSearch版本:1.5.2 1.配置分词器:配置IK,参照 <ElasticSearch 安装和使用IK分词器> 2.拼音分词器配置:使用已经编译好的:elasticsear ...

  3. 狂神聊 ElasticSearch(IK分词器+Rest+集成SpringBoot+实战爬虫项目+完整代码及资料)

    Bilibili 搜索关注:狂神说 Java(和狂神一起学习,共同进步) 公众号:狂神说(文章日更) 狂神聊 ElasticSearch 版本:ElasticSearch 7.6.1(全网最新了) 6 ...

  4. 使用Springboot整合ElasticSearch以及通过接口热更新分词和同义词

    什么是ElasticSearch Elasticsearch(ES) 是一个基于Lucene构建的开源.分布式.RESTful接口全文搜索引擎.ElasticSearch还是一个分布式文档数据库,其中 ...

  5. elastic ik分词搜索_php环境下使用elasticSearch+ik分词器进行全文搜索

    php中文网最新课程 每日17点准时技术干货分享 首先需要说明的一点是,如果需要启用ik分词器,那么分词器的版本必须与es版本一致,即6.3.0的分词器需要同样6.3.0版本的es支持. 安装java ...

  6. ik分词器 mysql php_php环境下使用elasticSearch+ik分词器进行全文搜索

    首先需要说明的一点是,如果需要启用ik分词器,那么分词器的版本必须与es版本一致,即6.3.0的分词器需要同样6.3.0版本的es支持. 安装java win-64bit的安装包需要去java英文官网 ...

  7. ElasticSearch IK 分词器快速上手

    简介: ElasticSearch IK 分词器快速上手 一.安装 IK 分词器 1.分配伪终端 我的 ElasticSearch 是使用 Docker 安装的,所以先给容器分配一个伪终端.之后就可以 ...

  8. 服务器安装配置elasticsearch,kibana,IK分词器和拼音分词器,集群搭建教程

    docker安装配置elasticsearch,kibana和IK分词器 elasticsearch文章系列 前置安装docker 创建docker网络 安装Elasticsearch 运行elast ...

  9. Elasticsearch生产实战(ik分词器、拼音分词、自动补全、自动纠错)

    目录 一.IK分词器 1.IK分词器介绍 2.安装 3.使用 4.自定义词库 二.拼音分词器 1.拼音分词器介绍 2.安装 三.自动补全 1.效果演示 2.实战 四.自动纠错 1.场景描述 2.DSL ...

  10. ElasticSearch——IK分词器的下载及使用

    ElasticSearch--IK分词器的下载及使用 1.什么是IK分词器 ElasticSearch 几种常用分词器如下: 分词器 分词方式 StandardAnalyzer 单字分词 CJKAna ...

最新文章

  1. Line 923: Char 9: runtime error: reference binding to null pointer of type ‘int‘ (stl_vector.h)
  2. SpringBoot如何返回页面
  3. linux服务器无网络确认,Linux服务器故障排查实用指南
  4. java 多线程状态_总结Java中线程的状态及多线程的实现方式
  5. 单片机与普通微型计算机不同在于,单片机与普通微型计算机的不同之处
  6. java基础语法实例教程_Java 基础语法
  7. 苹果就降速门道歉,将 iPhone 电池更换价格下调至 218 元!
  8. java之方法覆盖的坑
  9. 拓端tecdat|R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化
  10. Androidx 切换多语言失效解决方案(appcompat版本有关)
  11. 在上海社保千万不要断,如果断了,一定要这样做!
  12. 网络安全-典型的恶意代码
  13. 电脑录音效果不佳的问题解决
  14. Python3制作二维码
  15. 【总结】FLANN特征匹配
  16. cf1367E 思维+贪心
  17. 全选与反选 (转)
  18. 全国各大高校FTP地址大全
  19. Redis 作 mysql 的缓存服务器及redis的高可用
  20. awr报告 解读_Oracle的AWR报告分析

热门文章

  1. 微信卡包新增入口跳转小程序
  2. 在https://m.baidu.com/百度搜索框中输入文字点击搜索,出现如下错误:Message: element not interactable.
  3. Pandas - 5.缺失值处理
  4. python 模拟键盘鼠标输入_Python模拟键盘输入和鼠标操作
  5. 人力资源面试必问的十大问题
  6. Laravel Eloquent If Record Exists
  7. 面向对象:找个温暖的人一起慢慢变老
  8. linux没有cpufreq目录,linux cpufreq framework(1)_概述
  9. mac pro词典无法使用问题
  10. 免费网页版PS,太好用了