在Hanlp词典和jieba词典中手动添加未登录词

简介:

在使用Hanlp词典或者jieba词典进行分词的时候,会出现分词不准的情况,原因是内置词典中并没有收录当前这个词,也就是我们所说的未登录词,只要把这个词加入到内置词典中就可以解决类似问题,如何操作呢,下面我们来看一下:

一,在Hanlp词典中添加未登录词
1.找到hanlp内置词典目录
位于D:hnlphanlp_codehanlpdatadictionarycustom

也就是Hanlp安装包中的datadictionarycustom下目录

image

2.将未登录词以词名,词性,词频的格式添加到文件中(句首或者句尾都可以)

image

3.将字典的同名bin文件删除掉
执行文件时读取的是bin文件,必须删掉后等下次执行时重新生成,新字典才发挥作用

image

4.使用新字典重新执行文件
执行时会遇到没有相关bin文件的提示,不过放心,程序会自动生成一个新的bin文件,骚等片刻,就好了。

image

验证结果是否正确
image

 

二,在jieba词典中添加未登录词
先来看看没添加登录词的效果

image

好我们需要开始添加未登录词了

1.新建一个dict.txt文件,将未登录词直接添加到txt文件中
image

2.加载dict.txt文件
这个过程有一步要动态调整词频,因为词典默认是从词频较高的词开始匹配,调整未登录词的词频靠前,这样可以优先匹配

-- coding=utf8 --

import jieba
import re

将添加有未登录词的词典加载进来

jieba.load_userdict("D:hnlphanlp_codedict.txt")

动态调整词频,让未登录词的词频自动靠前,这样可以优先匹配

[jieba.suggest_freq(line.strip(), tune=True) for line in open("dict.txt",'r',encoding='utf8')]

string="TNM分期不太能明确地区分 ,以及辅助治疗(氟尿嘧啶单药或联合奥沙利铂)"

words=jieba.cut(string,HMM=False)
print('/'.join(words))
3.验证分词是否有效

image

哦,好的,就是这样!完美!

文章来源于小鱼儿的博客

相关文章
|
Java
【java】修复:java: Error during the transformation of 'com.aicloud.data.util.ExcelUtils'; post-co...
【java】修复:java: Error during the transformation of 'com.aicloud.data.util.ExcelUtils'; post-co...
852 0
|
存储 缓存 监控
安谋科技(Arm China)马闯:Arm架构下性能分析与优化介绍
2023年9月19日,系列课程第九节《Arm®架构下性能分析与优化介绍》正式上线,由安谋科技 (Arm China)主任工程师马闯主讲,内容涵盖:Arm架构下性能监控单元 (PMU) 介绍、Arm统计性能分析扩展 (SPE) 介绍、Arm性能分析工具介绍、Arm架构下性能优化案例分享,本期节目在阿里云官网、阿里云微信视频号、阿里云钉钉视频号、InfoQ官网、阿里云开发者微信视频号、阿里云创新中心直播平台 & 微信视频号同步播出,同时可以点击【https://developer.aliyun.com/topic/ecs-yitian】进入【倚天实例迁移课程官网】了解更多内容。
|
自然语言处理 Java 测试技术
Spring Boot中对自然语言处理工具包hanlp的调用详解
HanLP 是基于 Java开发的 NLP工具包,由一系列模型与算法组成,目标是普及自然语言处理在生产环境中的应用。而且 HanLP具备功能完善、性能高效、架构清晰、语料时新、可自定义的特点,因此十分好上手,本文就结合 Spring Boot来将 HanLP用起来!
11299 0
|
7月前
|
人工智能
停招初级工程师,大厂 AI 样板失效,软件黑灯工厂走不通,三位一线实践者聊 AI 编程的真实变化
本文深度剖析AI编程的现实落地:Clawdbot等案例印证AI正从辅助工具升级为协作“同事”。代码实现变简单,但系统判断、架构权衡、质量把控等高阶能力愈发关键。全自动方案易失控,“人机协同+关键人工兜底”成主流。变化已发生,而非将来时。
|
10月前
|
数据采集 存储 算法
Python内存管理机制:垃圾回收与引用计数
Python内存管理融合引用计数与分代垃圾回收,辅以内存池优化小对象分配。通过弱引用、生成器和手动GC调控,可有效避免循环引用与内存泄漏,实现高效稳定的程序运行。
609 1
|
机器学习/深度学习 人工智能 自然语言处理
了解AIGC:让AI创造内容,改变未来
了解AIGC:让AI创造内容,改变未来
1748 2
|
Ubuntu 安全 Linux
十款常用Linux系统介绍
本文不是什么大盘点。市面上有好几百款发行版,每款发行版在某个方面都与众不同。不可能在此全部罗列,本文只罗列了十款最常见的Linux发行版(世界上只有两种人,一种是懂二进制的,另一种是不懂二进制的)。请宣传Linux的魅力或威力。
|
SQL 存储 OLAP
阿里云 EMR Serverless StarRocks3.x,极速统一的湖仓新范式
阿里云 EMR Serverless StarRocks3.x,极速统一的湖仓新范式
997 0
|
监控 前端开发 数据可视化
产研项目中的时间管理技巧:PERT 图全解与工具推荐
在项目开发中,任务复杂、依赖关系多、时间预估模糊常常让团队陷入混乱。PERT 图(计划评估与审查技术)能有效梳理任务、明确关键路径、科学预估时间,帮助产研团队从混乱走向有序。
752 5
产研项目中的时间管理技巧:PERT 图全解与工具推荐
|
Java C语言
Java微信语音amr格式转mp3格式
Java微信语音amr格式转mp3格式