热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

jieba分词_自然语言NLP必备(1),jieba工具5行代码对整篇文章分词

自然语言是什么?下面来看看百度百科的介绍:自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的

自然语言是什么?下面来看看百度百科的介绍:

自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。

自然语言有什么作用?

广泛的应用在机器(文字/语言/图片)翻译,情感分析、信息检索等领域。

下面介绍中文分词工具 jieba 的安装和使用,旨在让读者快速入门 jieba,快速掌握中文分词的方法。

1、安装

pip install jieba

2、重要分词函数

常规模式

jieba.cut(sentence, cut_all=False, HMM=True)

sentence: 需要分词的字符串; cut_all: 参数用来控制是否采用全模式;HMM: 参数用来控制是否适用HMM模型

搜索模式

jieba.cut_for_search(sentence, HMM=True)

sentence:需要分词的字符串; HMM: 是否使用 HMM 模型,适用于搜索引擎构建倒排索引的分词,粒度比较细。

分词器

jieba.Tokenizer(dictionary=DEFUALT_DICT)

新建自定义分词器,可用于同时使用不同字典,jieba.dt为默认分词器,所有全局分词相关函数都是该分词器的映射。

​返回的形式

◇jieba.cut 以及 jieba.cut_for_search 返回的结构都是可以得到的 generator (生成器), 可以使用 for 循环来获取分词后得到的每一个词语或者使用​jieb.lcut() 以及 jieba.lcut_for_search() 直接返回list

注意事项

◇待分词的字符串可以是unicode或者UTF-8字符串,GBK字符串。注意不建议直接输入GBK字符串,可能无法预料的误解码成UTF-8,

3、三种分词模式

jieba分词支持三种分词模式:​★精确模式, 试图将句子最精确地切开,适合文本分析:​★全模式,把句子中所有的可以成词的词语都扫描出来,速度非常快, 但是不能解决歧义;​★搜索引擎模式,在精确模式的基础上,对长词再词切分,提高召回率, 适合用于搜索引擎分词。​

4、具体实例

注意在展示分词数据时,join 要表示成 '【区域1】' . join(【区域2】)的形式,其中区域 1 主要是自定义分词符,而区域 2 是分词后的数据

全模式分词

import jiebadata = jieba.cut('人生苦短,我学python',cut_all=True) print('Out:' + '/'.join(data))

Out:人生/苦短///我/学/python

精确模式

import jieba​data = jieba.cut('人生苦短,我学python',cut_all=False) print('Out:' + '/'.join(data))

Out:人生/苦短/,/我学/python

搜索引擎模式

import jiebadata = jieba.cut_for_search('人生苦短,我学python,让我们一起学习python吧') print('Out:' + ','.join(data))

Out:人生,苦短,,,我学,python,,,让,我们,一起,学习,python,吧

5、整篇文章进行分词

5 行代码实现任意中文文章分词

下面将小编以往的文章保存成 mydata.txt 记事本文件,然后通过 jieba 模块进行分词(提示:也可以直接利用爬虫模块 requests 直接把网页数据下载用于分词)

python网络爬虫学习路线的最全总结,理清思路才能高效学好爬虫

代码如下:

''' 传入中文文档进行分词 '''import jieba# 打开自己想要分词的文本文件,打开模式为 'rb' 二进制读取fp = open('../data/mydata.txt','rb')strData = fp.read()data = jieba.cut(strData, cut_all=False)print('/ '.join(data))

程序运行部分结果如下:

大家/ 都/ 知道/ ,/ 学习/ 一门/ 学科/ 的/ 时候/ 是/ 要/ 清楚/ 它/ 的/ 知识/ 框架/ 才能/ 清晰/ 的/ 学习/ 、/ 有/ 系统/ 的/ 学习/ ,/ 下面/ 来列/ 一列/ python/ 网络/ 爬虫/ 的/ 知识/ 框架/ 来/ 帮助/ 大家/ 能够/ 有效/ 的/ 学习/ 和/ 掌握/ ,/ 避免/ 不必要/ 的/ 坑/ 。/ / / python/ 网络/ 爬虫/ 总的来说/ 有/ 五个/ 大/ 的/ 方面/ :/ / 前端/ 知识/ —/ —/ 基础/ 爬虫/ —/ —/ 框架/ 爬虫/ —/ —/ 分布式/ 爬虫/ —/ —/ 突破/ 反/ 爬虫/ / / 1/ ./ 前端/ 知识/ :/ / “/ 网络/ 爬虫/ ”/ 很/ 明显/ 对象/ 是/ 网络/ ,/ 也/ 就是/ 网页/ 。/ 说/ 到/ 网页/ ,/ 这里/ 就/ 涉及/ 到/ 了/ 前端/ 的/ 知识/ 了/ ,/ 不过/ 大家/ 也/ 不要/ 慌/ ,/ 只要/ 懂点/ 必要/ 的/ HTML5/ 框架/ 、/ 网页/ 的/ http/ 请求/ 、/ 还有/ Javascript/ 、/ css3/ 的/ 知识/ 就/ 可以/ 了/ ,/ 以/ 这样/ 的/ 水平/ 也/ 是/ 可以/ 学会/ 爬虫/ 的/ 啦/ 。/ 当然/ ,/ 如果/ 要/ 非常/ 精通/ python/ 网络/ 爬虫/ 的话/ ,/ 深入/ 学习/ 前端/ 知识/ 是/ 必要/ 的/ 。/

5126097cac3ccbb261ef59cc2e029d67.png

明天将介绍如何提取关键词,怎样才知道那些词语出现的频率更高的问题

End--------------

喜欢的读者朋友可以点赞和关注小编呀,更多精彩内容等着你.......

往期文章推荐如下:

机器学习必备知识(1),线性回归官方参数和用法介绍

机器学习必备知识(2),岭回归模型参数和用法介绍

数据分析必备知识(2),Matplotlib绘图必备知识大总结(上篇)

python必备知识(1),打包为exe文件封装成可导入模块

python列表操作,助你快速掌握列表常用的操作



推荐阅读
  • Python处理Word文档的高效技巧
    本文详细介绍了如何使用Python处理Word文档,涵盖从基础操作到高级功能的各种技巧。我们将探讨如何生成文档、定义样式、提取表格数据以及处理超链接和图片等内容。 ... [详细]
  • 本文介绍了如何利用Python进行批量图片尺寸调整,包括放大和等比例缩放。文中提供了详细的代码示例,并解释了每个步骤的具体实现方法。 ... [详细]
  • 基于Node.js、Express、MongoDB和Socket.io的实时聊天应用开发
    本文详细介绍了使用Node.js、Express、MongoDB和Socket.io构建的实时聊天应用程序。涵盖项目结构、技术栈选择及关键依赖项的配置。 ... [详细]
  • 本文探讨了为何相同的HTTP请求在两台不同操作系统(Windows与Ubuntu)的机器上会分别返回200 OK和429 Too Many Requests的状态码。我们将分析代码、环境差异及可能的影响因素。 ... [详细]
  • 在创建新的Android项目时,您可能会遇到aapt错误,提示无法打开libstdc++.so.6共享对象文件。本文将探讨该问题的原因及解决方案。 ... [详细]
  • 利用决策树预测NBA比赛胜负的Python数据挖掘实践
    本文通过使用2013-14赛季NBA赛程与结果数据集以及2013年NBA排名数据,结合《Python数据挖掘入门与实践》一书中的方法,展示如何应用决策树算法进行比赛胜负预测。我们将详细讲解数据预处理、特征工程及模型评估等关键步骤。 ... [详细]
  • 本文详细介绍了如何通过现代化工具快速、高效地安装Python第三方模块,帮助开发者简化安装流程并提高开发效率。 ... [详细]
  • 中科院学位论文排版指南
    随着毕业季的到来,许多即将毕业的学生开始撰写学位论文。本文介绍了使用LaTeX排版学位论文的方法,特别是针对中国科学院大学研究生学位论文撰写规范指导意见的最新要求。LaTeX以其精确的控制和美观的排版效果成为许多学者的首选。 ... [详细]
  • 基于机器学习的人脸识别系统实现
    本文介绍了一种使用机器学习技术构建人脸识别系统的实践案例。通过结合Python编程语言和深度学习框架,详细展示了从数据预处理到模型训练的完整流程,并提供了代码示例。 ... [详细]
  • 使用Python实现余弦相似度计算
    余弦相似度广泛应用于文本分类、图像识别等领域,用于衡量两个向量之间的相似程度。其值域在-1到1之间,数值越接近1表示两向量越相似,完全相同为1;相反方向时为-1;正交或不相关时为0。 ... [详细]
  • Nginx 反向代理与负载均衡实验
    本实验旨在通过配置 Nginx 实现反向代理和负载均衡,确保从北京本地代理服务器访问上海的 Web 服务器时,能够依次显示红、黄、绿三种颜色页面以验证负载均衡效果。 ... [详细]
  • 本文介绍了SVD(奇异值分解)和QR分解的基本原理及其在Python中的实现方法。通过具体代码示例,展示了如何使用这两种矩阵分解技术处理图像数据和计算特征值。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 深入解析Java虚拟机(JVM)架构与原理
    本文旨在为读者提供对Java虚拟机(JVM)的全面理解,涵盖其主要组成部分、工作原理及其在不同平台上的实现。通过详细探讨JVM的结构和内部机制,帮助开发者更好地掌握Java编程的核心技术。 ... [详细]
  • 深入解析SpringMVC核心组件:DispatcherServlet的工作原理
    本文详细探讨了SpringMVC的核心组件——DispatcherServlet的运作机制,旨在帮助有一定Java和Spring基础的开发人员理解HTTP请求是如何被映射到Controller并执行的。文章将解答以下问题:1. HTTP请求如何映射到Controller;2. Controller是如何被执行的。 ... [详细]
author-avatar
温思家羽绒家纺旗舰店
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有