Python jieba分词如何添加自定义词和去除不需要长尾词

文章介绍了如何使用Python的jieba库进行文本分词,包括如何加载自定义词典以处理专业词汇,以及如何删除不需要的长尾词,确保分词效果符合需求。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python jieba分词如何添加自定义词和去除不需要长尾词

作者:虚坏叔叔
博客:https://xuhss.com

早餐店不会开到晚上,想吃的人早就来了!😄

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZbGUd57b-1677564707180)(2007.assets/1-1677564619771.png)]

通过如下代码,读取一个txt的高频词汇:

            # 找到高频词汇
            tmp_content = self.getContent(tmp_path)
            keyword_list = tmp_content.split('\n')
            word_count = dict()
            for keyword in keyword_list:
                for word,flag in jp.cut(keyword):
                    if word in word_count:
                        word_count[word] = word_count[word] +1
                    else:
                        word_count[word] =1
            for word, count in word_count.items():
                print('%s\t%s' % (word,count))

很多情况下 jieba它不知道一些词汇,比如说获得的词汇如下

建立可视化 是2个独立的单词

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hGFRlmcz-1677564707182)(2007.assets/image-20230228140647773.png)]

一、添加自定义词

通过添加自定义词

import jieba
import jieba.posseg as jp

jieba.load_userdict(r'jieba_dict.txt')

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ljn92rgA-1677564707182)(2007.assets/image-20230228140134068.png)]

就可以看到,统计出来的词是这个自定义词

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uphMFIPd-1677564707182)(2007.assets/image-20230228140339267.png)]

二、去除不需要长尾词

有时 统计出来的某些词汇jieba认为是一个词汇 但是此时 我想让他变为多个词汇 ,可以通过如下代码实现:

import jieba
import jieba.posseg as jp

jieba.del_word('创建活动')

此时 jieba 就会不认定 创建活动 是一个词,它会将它们分开统计

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QX0aqeZ8-1677564707183)(2007.assets/image-20230228140926854.png)]

总结

  • 本文主要介绍jieba的基础用法。
  • 如果觉得文章对你有用处,记得 点赞 收藏 转发 一波哦,博主也支持为铁粉丝制作专属动态壁纸哦~

💬 往期优质文章分享

🚀 优质教程分享 🚀

  • 🎄如果感觉文章看完了不过瘾,可以来我的其他 专栏 看一下哦~
  • 🎄比如以下几个专栏:Python实战微信订餐小程序、Python量化交易实战、C++ QT实战类项目 和 算法学习专栏
  • 🎄可以学习更多的关于C++/Python的相关内容哦!直接点击下面颜色字体就可以跳转啦!
学习路线指引(点击解锁)知识定位人群定位
🧡 Python实战微信订餐小程序 🧡进阶级本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战 💛入门级手把手带你打造一个易扩展、更安全、效率更高的量化交易系统
❤️ C++ QT结合FFmpeg实战开发视频播放器❤️难度偏高分享学习QT成品的视频播放器源码,需要有扎实的C++知识!
💚 游戏爱好者九万人社区💚互助/吹水九万人游戏爱好者社区,聊天互助,白嫖奖品
💙 Python零基础到入门 💙Python初学者针对没有经过系统学习的小伙伴,核心目的就是让我们能够快速学习Python的知识以达到入门

🚀 资料白嫖,温馨提示 🚀

关注下面卡片即刻获取更多编程知识,包括各种语言学习资料,上千套PPT模板和各种游戏源码素材等等资料。更多内容可自行查看哦!

请添加图片描述

### 中文环境下整掩码技术的挑战及解决方案 #### 挑战分析 中文作为一种表意文字的语言,具有独特的语法结构字符组成方式。相比于英文中的单由空格分隔,中文文本中存在明显的语边界划分[^1]。这使得在实施整掩码(Whole Word Masking)技术时面临以下几个主要挑战: 1. **语边界的识别** 在中文环境中,由于缺乏自然的分隔符,如何准确定义提取单个语成为一大难题。传统的基于子单元(subword unit)的方法可能无法有效捕获完整的语义单位。 2. **歧义性多义性** 中文中存在大量的同形异义字以及复杂的组合形式,这些都会增模型理解预测的难度。例如,“银行”一既可以指金融机构,也可以表示河流边缘,这种语境依赖特性增了训练复杂度。 3. **长尾分布问题** 部分低频词汇或领域特定术语难以获得足够的样本支持来构建稳健的预训练模型。这类稀有词汇往往对下游任务至关重要,但它们的学习效果容易受到数据平衡的影响。 4. **跨领域适配能力足** 同应用场景下的语言风格差异较大,比如新闻报道、科技论文与社交媒体评论之间存在着显著区别。单一通用型模型很难兼顾所有场景需求。 #### 解决方案探讨 针对上述提到的各项困难,可以采取如下措施以应对: 1. **引入外部资源辅助分词** 利用成熟的第三方工具如Jieba或其他专门设计用于汉语自动切分的技术手段作为前置处理步骤,帮助明确标注每一段连续字符串所对应的独立意义实体[^2]。这样可以在一定程度上缓解因缺少显式间隔标记而导致的问题。 2. **增强上下文建模能力** 结合更深层次的神经网络架构——特别是那些擅长捕捉远程依赖关系的设计模式(如Transformer),并通过精心调整超参数配置使其更好地适应目标语言特点。此外还可以探索融入额外特征维度的可能性,例如笔画数统计或者部首分类信息等有助于揭示潜在规律的因素。 3. **采用动态采样策略** 对于罕见事件频繁发生的状况,则应考虑运用更灵活的数据选取机制,在保证整体覆盖率的同时适当倾斜关注重点至稀缺类别之上。这种方法仅能够提升最终产出质量,而且还能促进公平性原则贯彻执行。 4. **定制化微调流程** 根据具体业务方向量身打造专属版本的基础框架,并借助迁移学习理论快速收敛到理想状态附近。与此同时也要注重保留原始体系核心优势部分变动,从而实现双赢局面达成最大化效益输出。 ```python import jieba def preprocess_text(text): """ 使用 Jieba 进行中文分词 """ segmented_words = list(jieba.cut(text)) return segmented_words example_sentence = "我喜欢阅读关于人工智能的文章" print(preprocess_text(example_sentence)) # 输出:['我', '喜欢', '阅读', '关于', '人工', '智能', '的', '文章'] ``` ---
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

虚坏叔叔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值