jieba分词和RecursiveCharacterTextSplitter分词

news2024/9/22 7:01:06

目录

  • jieba 分词
    • 本身特点
    • 使用方法
    • 输出结果
  • RecursiveCharacterTextSplitter 分词
    • 本身特点
    • 使用方法

jieba 分词

jieba(中文名:结巴)是一个广泛使用的中文分词库,它支持三种分词模式:

  • 精确模式:试图将句子最精确地切开,适合文本分析。
  • 全模式:把句子中所有可以成词的词语都扫描出来,速度非常快,但是不能保证每个词语的准确性。
  • 搜索引擎模式:在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎的分词。

本身特点

  • 支持繁体分词和简体分词。
  • 支持自定义词典,可以提高分词的准确性。
  • 支持词性标注。
  • 可以进行关键词提取和词频统计。

使用方法

import jieba

text = "我爱北京天安门"
seg_list = jieba.cut(text)
print("Default Mode: " + "/ ".join(seg_list))  # 默认精确模式
print("Full Mode: " + "/ ".join(jieba.cut(text, cut_all=True)))  # 全模式
print("Search Mode: " + "/ ".join(jieba.cut_for_search(text)))  # 搜索引擎模式

输出结果

在这里插入图片描述

RecursiveCharacterTextSplitter 分词

RecursiveCharacterTextSplitterLangchain 中的一个文本分割工具,它基于字符递归地分割文本。这种分词方法不是基于词的边界,而是基于文本的字符长度进行分割。

本身特点

  • 可以指定每个文本块的最大字符数。
  • 可以指定文本块之间的重叠字符数,以保持上下文的连贯性。
  • 通常用于生成适合深度学习模型输入的文本块。

使用方法

from langchain.text_splitters import RecursiveCharacterTextSplitter
# 省略其他【这个示例要是运行的话前期准备工作很复杂,包很难下载,这里只是展示它们的不同以及各自的输出结果】
# 获取对应语言风格的数据
metadata = [item for item in data if item.get("press") == type_all[get_type]]
contents = [item['content'] for item in metadata]
updated_metadata = [{key: dic[key] for key in dic if key != 'content'} for dic in metadata]
# 创建 Document 对象
document = [Document(page_content=content, metadata=meta) for content, meta in zip(contents, updated_metadata)]
# print(document)
# 切分文档
text_split = RecursiveCharacterTextSplitter(chunk_size=12, chunk_overlap = 4)
split_data = text_split.split_documents(document)# 切分数据

print(split_data)

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2078940.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Spring:浅谈对SpringBean的认识

一、SpringBean的生命周期 1、实例化bean对象:通过反射的方式进行对象的创建,此时的创建只是在堆空间中申请空间,属性都是默认值。 2、设置对象属性:给对象中的属性进行值的设置工作。 3、检查Aware相关接口并设置相关依赖&#x…

【书生大模型实战营第三期 | 进阶岛第6关-MindSearch 快速部署】

学习心得:MindSearch 快速部署 摘要 本课程是关于如何将MindSearch部署到Github Codespace和Hugging Face Space的详细指南。通过学习本课程,我深入理解了MindSearch的部署流程,包括环境配置、API Key获取、后端和前端的启动,以及…

Unity | 性能标准分析工具图形API简介

目录 一、相关术语 1.物理页 2.PSS内存 3.Reserved Total 二、耗时推荐值 三、内存推荐值 四、分析工具 1.Profiler (1)Profiler各平台对比 (2)构建到目标平台 (3)Frame数量修改 (4…

正则表达式分离文字和数字并且展示整数或者小数

1、完整示例 function formatFrequency(value) {// 匹配整数和浮点数return value.replace(/(\d(\.\d)?)/g, (match) > {const num parseFloat(match);return Number.isInteger(num) ? num : num.toString();});}// 测试用例const test1 "hhh1天3片";const t…

GitHub开源的网盘系统-Cloudreve

Cloudeve 项目地址 特性: ☁️ 支持本机、从机、七牛、阿里云 OSS、腾讯云 COS、又拍云、OneDrive (包括世纪互联版) 、S3兼容协议 作为存储端 📤 上传/下载 支持客户端直传,支持下载限速 💾 可对接 Aria2 离线下载,可…

从“炫技”到“服务”,国产人形机器人“抢滩”未来产业赛道

图为2024世界机器人大会上展示的人形机器人。新华社记者 李欣 摄 正在北京举办的2024世界机器人大会上,27款人形机器人“争奇斗艳”,不仅参展规模创历届之最,还成为展会上当仁不让的“人气王”,几乎每个展台都围满了人。 人形机…

汽车DV与PV测试

技术的快速进步和消费者对高质量汽车的需求不断推动着汽车行业的发展。为了确保每一辆汽车在设计和生产过程中都能达到最高标准,DV(Design Verification,设计验证)和 PV(Production Validation,生产验证&am…

VMware虚拟机IP地址频繁变化的解决方法?测试可用

问题: 在使用vmware时,虚拟机的IP总是变,每次操作都要重新获取一下ip,重新走一遍流程,比较繁琐。 原因: 虚拟机有默认的租用时间,到了租用时间就会更换IP. 解决方式: 打开VMwar…

LLM - GPT(Decoder Only) 类模型的 KV Cache 公式与原理 教程

欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/141605718 免责声明:本文来源于个人知识与公开资料,仅用于学术交流,欢迎讨论,不支持转载。 在 GPT…

element+plus中导航菜单关于index报错

elementplus中导航菜单关于index报错 官方解释必须为string 修改后正常使用 而当动态插入的时候,需要使用:index,且需要写为: :index“String(index)” index是为dom加的属性(是定值),而:index加的值相当…

Python开发工具:PyCharm

本文是 Python 系列教程第 2 篇,完整系列请查看 Python 专栏。 1 安装 官网下载地址https://www.jetbrains.com.cn/pycharm/,文件比较大(约861MB)请耐心等待 双击exe安装 安装成功后会有一个30天的试用期,激活教程见先…

Level3 — PART 4 机器学习算法 — 决策树

目录 引言 信息量 信息熵 案例 ID3 属性选择—信息增益 决策树生成 Python实现ID3 C4.5 属性选择—信息增益率 连续型属性 缺失值 剪枝 CART 分类树属性选择—基尼系数 回归树属性选择—方差 剪枝 Python实现CART CHAID GBRT 决策树对比 模拟题 CDA L…

GDB基础指令分类与汇总

前言 在图形化界面中,我们进行调试一般而言比较方便,举例如下: 不过有时候,我们在Linux下没有这样的图形界面,这时可以使用GDB调试器来帮我们完成上面的工作。 GDB基础指令分类与汇总 类别指令含义举例基本使用gcc pro…

源代码防泄密的途径有很多种,如何保护源代码呢

随着各行各业业务数据信息化发展,各类产品研发及设计等行业,都有关乎自身发展的核心数据,包括业务数据、代码数据、机密文档、用户数据等敏感信息,这些信息数据有以下共性: — 属于核心机密资料,万一泄密会…

【实践经验】端口被占用问题:listen tcp:bind:only one usage of each socket address

文章目录 一. 问题描述二. 分析1. 适用错误 三. 解决方法1. 打开控制台2. 查看端口的使用情况2.1 不知道端口号——查看所有运行的端口2.2 知道端口号 3. 查看使用进程的程序4. 杀死进程5. 验证端口是否释放 一. 问题描述 goland启动项目后报错:“listen tcp:bind:…

四、监控搭建-Prometheus-采集端批量部署

四、监控搭建-Prometheus-采集端批量部署 1、背景2、目标3、传承4、操作4.1、准备部署工具4.2、编制部署脚本4.3、服务端添加客户端 1、背景 在前三篇中我们搭建了Prometheus平台,采集端部署和配合图形化grafana部署,将Linux主机进行监控。基本完成了一…

day41.动态规划

一.动态规划 121.买卖股票的最佳时机I 思路: dp[i][1] 表示第i天不持有股票所得最多现金 dp[i][0] 表示第i天持有股票所得最多现金 相信有人和我有一样的疑惑,为什么dp【i】【0】的转移是dp【i-1】【0】,-price【i】,因为题目规定了只能进行一次买卖&…

Linux信号处理机制基础

什么是信号 信号在最早的UNIX系统中即被引入,已有30多年的历史,但只有很小的变化。信号是提供异步事件处理机制的软件中断。进程之间可以相互发送信号,这使信号成为一种进程间通信(Inter-ProcessCommunication,lPC)的基本手段 信号的名称与…

水控器数码管驱动方案

目录 方案1 方案2 总结 方案1 数码管驱动电路选用2片74HC595和外围电阻实现,如图1所示。74HC595的封装为S0-16(窄体),芯片价格0.42,整个LED驱动电路成本约0.9元(不包含数码管)。 图1、74HC595驱动电路 方案2 为减少PCB板密度,数…

x86中部署docker环境

使用dockerhub搜索Ubuntu x86 1、拉取镜像 docker pull balenalib/odyssey-x86-ubuntu 2、查看镜像 docker images 3、保存镜像 docker save -o ubuntuX86.tar ubuntu/x86:v1 4、加载镜像 docker load -i ubuntuX86.tar 5、创建并运行容器 docker run -itd balenalib/odyssey-…