当前位置: 首页 > news >正文

能买源码的网站有哪些/廊坊关键词优化平台

能买源码的网站有哪些,廊坊关键词优化平台,贵州住房和城乡建设厅官网,做招聘网站文章目录 一、主分词器:最基础的文本处理单元主分词器的作用典型主分词器示例 二、其他类型的分词器:解决主分词器的局限性1. 子字段分词器(Multi-fields)2. 搜索分词器(Search Analyzer)3. 自定义分词器&a…

文章目录

      • 一、主分词器:最基础的文本处理单元
        • 主分词器的作用
        • 典型主分词器示例
      • 二、其他类型的分词器:解决主分词器的局限性
        • 1. 子字段分词器(Multi-fields)
        • 2. 搜索分词器(Search Analyzer)
        • 3. 自定义分词器(Custom Analyzer)
        • 4. 专能分词器(Specialized Tokenizers)
      • 三、为什么需要多种分词器?
      • 总结

在 Elasticsearch(ES)中, 分词器(Analyzer) 是将文本拆分为可检索词元(Token)的核心组件。其中“主分词器”是最基础的类型,但为了满足多样化的文本处理需求,ES 还支持多种其他类型的分词器。以下从定义、分类、典型场景三个维度详细说明:

一、主分词器:最基础的文本处理单元

主分词器是 ES 中默认用于索引和搜索阶段的分词器,负责将原始文本(如中文句子、英文段落)拆分为最小可检索的词元(Token)。它是每个 text 类型字段的“核心处理器”,决定了文本的基础拆分逻辑。

主分词器的作用
  • 索引阶段:将文档内容(如“北京天安门”)拆分为词元(如北京天安门),写入倒排索引。
  • 搜索阶段:将用户输入的查询词(如“天安门”)拆分为词元(如天安门),与索引中的词元匹配。
典型主分词器示例
  • 中文场景ik_max_word(细粒度拆分,如“人工智能”→人工智能人工智能)。
  • 英文场景standard(标准分词器,按空格和标点拆分,转小写)。
  • 日文场景kuromoji(基于日语词法分析的分词器)。

二、其他类型的分词器:解决主分词器的局限性

主分词器虽能处理基础需求,但面对复杂场景(如多语言混合、拼音检索、模糊匹配)时,需要其他类型的分词器补充。ES 支持以下几类“非主分词器”:

1. 子字段分词器(Multi-fields)

通过 fields 属性为同一个字段创建多个子字段,每个子字段使用不同的分词器,满足不同查询需求。
核心价值:一个字段支持多种拆分方式(如汉字、拼音、全拼)。

示例(中文+拼音混合索引):

{"mappings": {"properties": {"title": {"type": "text","analyzer": "ik_max_word",  // 主分词器(处理汉字)"fields": {"pinyin": {                // 子字段(处理拼音)"type": "text","analyzer": "pinyin_analyzer"},"keyword": {               // 子字段(保留原文,用于精确匹配)"type": "keyword"}}}}}
}
  • 主字段 title:用 ik_max_word 拆分汉字(如“中国”→中国)。
  • 子字段 title.pinyin:用拼音分词器拆分(如“中国”→zhongguozg)。
  • 子字段 title.keyword:用 keyword 分词器(不拆分,保留原文“中国”)。
2. 搜索分词器(Search Analyzer)

通过 search_analyzer 显式指定搜索阶段使用的分词器(与索引阶段的主分词器不同)。
核心价值:解决“索引时细粒度拆分,搜索时粗粒度匹配”的矛盾。

典型场景
索引时用 ik_max_word(细粒度,如“北京大学”→北京大学北京大学),搜索时用 ik_smart(粗粒度,如用户输入“北大”→北大)。此时需用 search_analyzer 确保搜索词拆分与索引词元匹配。

配置示例

{"mappings": {"properties": {"content": {"type": "text","analyzer": "ik_max_word",       // 索引分词器(细粒度)"search_analyzer": "ik_smart"    // 搜索分词器(粗粒度)}}}
}
3. 自定义分词器(Custom Analyzer)

通过组合 字符过滤器(Char Filter)分词器(Tokenizer)词元过滤器(Token Filter) 自定义分词逻辑,满足特定业务需求。
核心价值:灵活处理特殊文本(如去除HTML标签、保留数字范围)。

组成结构

analyzer: {char_filter: [ ... ],  # 预处理文本(如替换特殊符号)tokenizer: ...,         # 拆分文本为词元(核心)filter: [ ... ]         # 过滤/修改词元(如转小写、去停用词)
}

示例(处理英文+数字混合文本):

{"settings": {"analysis": {"analyzer": {"custom_analyzer": {"char_filter": ["html_strip"],  # 去除HTML标签"tokenizer": "standard",        # 按空格/标点拆分"filter": ["lowercase",                  # 转小写"asciifolding",               # 转换特殊字符(如é→e)"stop"                        # 去除停用词(如the、and)]}}}}
}
4. 专能分词器(Specialized Tokenizers)

ES 内置了多种针对特定场景的分词器,无需自定义即可直接使用:

  • keyword 分词器:不拆分文本,将整个字符串作为一个词元(用于精确匹配,如品牌名、ID)。
  • pattern 分词器:按正则表达式拆分(如按-拆分“2023-05-11”→20230511)。
  • ngram 分词器:生成连续字符组合(如“苹果”→苹果),用于模糊搜索(如输入“苹”召回“苹果”)。
  • path_hierarchy 分词器:按层级拆分路径(如“/a/b/c”→/a/a/b/a/b/c),用于目录结构检索。

三、为什么需要多种分词器?

主分词器是基础,但单一分词器无法满足所有需求:

  • 多维度检索:用户可能用汉字、拼音、首字母搜索同一内容(需子字段分词器)。
  • 精度与性能平衡:索引时细粒度拆分(提升召回),搜索时粗粒度拆分(提升性能,需搜索分词器)。
  • 特殊文本处理:如去除HTML标签、保留数字范围(需自定义分词器)。
  • 跨语言支持:中文用 ik,英文用 standard,日文用 kuromoji(需不同主分词器)。

总结

主分词器是 ES 中最基础的分词器,负责索引和搜索的默认文本处理。但为了应对复杂场景,ES 还支持子字段分词器(多维度检索)、搜索分词器(精度与性能平衡)、自定义分词器(特殊文本处理)和专能分词器(特定场景)。理解这些类型的核心差异,能帮助你根据业务需求(如召回率、准确性、性能)选择合适的分词方案。

http://www.whsansanxincailiao.cn/news/32015604.html

相关文章:

  • 昆明做网站找启搜网络/怎样在百度上发布免费广告
  • 网站空间注册/小学生简短小新闻
  • 网站建设对网络营销有哪些影响/google广告投放技巧
  • 西安煤炭建设监理中心网站/杭州做网站的公司排行
  • 西安网站维护兼职/怎么注册域名
  • 乐山市规划和建设局门户网站/北京网站推广排名
  • 法华寺网站建设/北京it培训机构哪家好
  • 达内网站开发培训/长尾关键词排名工具
  • 网站开发需要兼容到ie几/代刷网站推广免费
  • 营销型网站能解决什么问题/中国十大品牌营销策划公司
  • 电商 网站建设/今日搜索排行榜
  • 深圳的网站建设公司哪家好/百度网盘app下载
  • 自己做网站需要钱吗/优化师是干嘛的
  • 百度官方网站/营销培训视频课程免费
  • 禅城网站建设报价/山东省住房和城乡建设厅
  • 网站怎么做图片滚动/天津百度推广电话号码
  • 注册公司流程和费用是多少/seo技术培训海南
  • 网站建设框架文档/seo网站快速排名
  • 柳州网站建设公司/手机网站制作教程
  • 视觉设计网站有哪些/营销案例分析
  • 深圳网站建设及优化/seo网络营销技巧
  • phpweb网站建设/百度广告销售
  • 网站如何备案 流程/北京推广优化经理
  • 网站改版建设 有哪些内容/惠州seo优化
  • 网站维护 公司简介/网站seo诊断技巧
  • asp.net做网站的流程/seowhy
  • 太原市网站建设网站/如何建立网上销售平台
  • dw网页设计心得体会/seo网站推广软件
  • 合肥网站建设解决方案/网络营销的基本特征有哪七个
  • 哪些网站做科技专题/新的网站怎么推广