[求助] 关于 elasticSearch 中文分词插件 IK 分词机制的疑问 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Pengxiguaa
V2EX    数据库

[求助] 关于 elasticSearch 中文分词插件 IK 分词机制的疑问

  •  
  •   Pengxiguaa 2020-08-27 11:18:01 +08:00 1644 次点击
    这是一个创建于 1951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    准备

    • analyzer: ik_max_word
    • text: “我想我能够”
    • keywords: “我想”

    目的

    检索出必须包含关键词“我想”的数据。

    问题

    在入数据时,ik_max_word 会将文本拆分为“我”、“想我”和“能够”但不存在“我想”,所以导致搜索无果。

    我不知道是我的用法不对还是插件分词不够细,难道需要将文本拆分为“我”、“我想”、“我想我”、“我想我能”....

    7 条回复    2020-08-27 13:18:08 +08:00
    zakokun
        1
    zakokun  
       2020-08-27 11:29:24 +08:00 via iPhone
    2 个办法

    1. 你把“我想”加到自定词库里面,刷一遍数据,分词插件就能把“我想”作为一个词了
    2. 使用单字分词,然后搜索的使用 match_phrase
    polaris8977
        2
    polaris8977  
       2020-08-27 11:30:08 +08:00
    自己定制一下词库啊, "我想"没在你的词库里面
    murmur
        3
    murmur  
       2020-08-27 11:33:56 +08:00
    你说的是 ngram 分词,ngram 拆出来应该是





    我想
    想我
    我能
    能够
    我想我
    想我能
    我能够
    。。。。。
    这种拆词太暴力了,很少有这么拆的,效率太低结果也不好看,说白了还是字典拆词不行,可以考虑下用算法的,以前我们就用 crf 分词,字典分词效率高但是准确度不行
    Pengxiguaa
        4
    Pengxiguaa  
    OP
       2020-08-27 12:09:42 +08:00
    @zakokun 感谢
    Pengxiguaa
        5
    Pengxiguaa  
    OP
       2020-08-27 12:09:53 +08:00
    @polaris8977 感谢
    Pengxiguaa
        6
    Pengxiguaa  
    OP
       2020-08-27 12:10:05 +08:00
    @murmur 感谢
    KalaSearch
        7
    KalaSearch  
       2020-08-27 13:18:08 +08:00
    CJK 语言做查询的时候如果非常在乎召回的话,ngram 也是可以考虑的(类似你这写的:我,我想...)

    如果索引本身没那么大的话,对中文分词来说 N 取个 10 就完全够了,这样索引大小最多也就是 10 倍。目前 SSD 这么便宜的状况下问题不大

    当然如果实在索引大小有限制(边缘计算、嵌入之类情景,或者数据真的太大)那可以像一楼说的自定义一些词库。

    如果是以学习为目的的话推荐读: https://github.com/ysc/cws_evaluation

    如果是在做项目需要搜索的话,且不想折腾的话,自荐下我们做的卡拉搜索 kalasearch.com 不用自己搞分词之类,全托管了。作为工程师的你时间很宝贵,应该用来学习或者解决业务问题,搜索可以交给我们 :)
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1105 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 18:01 PVG 02:01 LAX 10:01 JFK 13:01
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86