python机器学习入门之自然语言处理(NLP)工具Jieba的使用及解析

简介: python机器学习入门之自然语言处理(NLP)工具Jieba的使用及解析

自然语言处理(NLP) 是指用算法对人类口头表达或书面提供的自然语言信息进行处理的技术,自然语言处理属于人工智能和语言学的交叉学科


中文分词工具主要是Jieba。不仅能提供分词,还提供关键词提取和词性标注等功能。以下是Jieba分词的三种模式


1:精确模式 试图将句子最精确的切开 适合文本分析


2:全模式 把句子中所有可以成词的词语都扫描出来 速度非常快 但是不能解决歧义


3:搜索引擎模式 在精确模式的基础上 对长词进行切分 提高召回率 适合用于搜索引擎分词


同时Jieba还支持繁体分词 自定义词典 MIT授权协议等等...


分词效果如下

1666425227490.jpg

代码如下

import  jieba.posseg as pseg
import jieba.analyse
list0=jieba.cut('东北林业大学的猫科动物专家判定,这只野生东北虎属于定居虎',cut_all=True)
print('全模式',list(list0))
list1=jieba.cut('东北林业大学的猫科动物专家判定,这只野生东北虎属于定居虎',cut_all=False)
print('精确模式',list(list1))
list2=jieba.cut('东北林业大学的猫科动物专家判定,这只野生东北虎属于定居虎')
print('搜索引擎模式',list(list2))

同样可以使用停用词 对文本进行分词 停用词就是在自然语言处理时可以自动或手动选择忽略的某些字和词


代码如下

import  jieba.posseg as pseg
import jieba.analyse
def stopwords(filepath):
    f=open(filepath,'r',encoding='utf-8')
    txt=f.readlines()
    stopwords=[]
    for line in txt:
        stopwords.append(line.strip())
    return stopwords
inputs=open('zhangsan.txt','rb')
stopwords=stopwords('zhangsan.txt')
outstr=''
for line in inputs:
    sentence_seged=jieba.cut(line.strip())
    for word in sentence_seged:
        if word not in stopwords:
            if word!='\t':
                outstr+=''+word
                outstr+=''
print(outstr)
相关文章
|
2天前
|
机器学习/深度学习 自然语言处理 算法
Python提供了丰富的库和工具
【6月更文挑战第13天】Python提供了丰富的库和工具
13 5
|
2天前
|
机器学习/深度学习 边缘计算 TensorFlow
Python机器学习工具与库的现状,并展望其未来的发展趋势
【6月更文挑战第13天】本文探讨了Python在机器学习中的核心地位,重点介绍了Scikit-learn、TensorFlow、PyTorch等主流库的现状。未来发展趋势包括自动化、智能化的工具,增强可解释性和可信赖性的模型,跨领域融合创新,以及云端与边缘计算的结合。这些进展将降低机器学习门槛,推动技术在各领域的广泛应用。
9 3
|
3天前
|
机器学习/深度学习 人工智能 自然语言处理
什么是NLP(自然语言处理)?
自然语言处理( Natural Language Processing, NLP)是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系,但又有重要的区别。自然语言处理并不是一般地研究自然语言,而在于研制能有效地实现自然语言通信的计算机系统,特别是其中的软件系统。因而它是计算机科学的一部分。
13 1
|
5天前
|
缓存 测试技术 数据处理
Python中的装饰器:优雅而强大的代码增强工具
在Python编程中,装饰器是一种强大的工具,可以用来增强函数和方法的功能,使其更加灵活和可复用。本文将深入探讨Python中装饰器的基本概念、使用方法和实际应用,帮助读者更好地理解和利用装饰器来提升代码的效率和可维护性。
|
5天前
|
机器学习/深度学习 存储 人工智能
【机器学习】GBDT (Gradient Boosting Decision Tree) 深入解析
GBDT,全称为Gradient Boosting Decision Tree,即梯度提升决策树,是机器学习领域中一种高效且强大的集成学习方法。它通过迭代地添加决策树以逐步降低预测误差,从而在各种任务中,尤其是回归和分类问题上表现出色。本文将深入浅出地介绍GBDT的基本原理、算法流程、关键参数调整策略以及其在实际应用中的表现与优化技巧。
11 1
|
7天前
|
缓存 测试技术 Python
Python中的装饰器:优雅而强大的函数修饰工具
在Python编程中,装饰器是一种强大的工具,它可以让我们在不改变函数结构的情况下,对函数进行修饰和扩展。本文将深入探讨Python中装饰器的作用、原理及实际运用,帮助读者更好地理解和运用这一技术。
|
8天前
|
机器学习/深度学习 算法框架/工具 数据安全/隐私保护
Pillow:Python图像处理的强大工具
**Pillow**是Python的图像处理库,源自PIL,支持多种格式如JPEG、PNG等。本文介绍了Pillow的基本用法和高级特性。安装Pillow后,可通过`Image.open()`打开图像,再使用`resize()`、`crop()`、`rotate()`等方法进行图像操作,如缩放、裁剪和旋转。此外,Pillow还支持颜色转换、滤镜应用(如模糊)、图像增强(亮度、对比度调整)和处理流水线。在实际应用中,Pillow常用于生成网页缩略图、添加水印及配合机器学习库进行图像预处理。【6月更文挑战第6天】
15 1
|
13天前
|
Python 缓存 开发者
Python中的装饰器:优雅而强大的代码增强工具
在Python编程中,装饰器是一种强大的工具,它允许开发者在不改变原有代码结构的情况下,增加额外的功能。本文将深入探讨Python中装饰器的概念、用法和实际应用,展示其在代码优化和增强方面的威力。
|
15天前
|
机器学习/深度学习 数据采集 前端开发
【机器学习】随机森林:深度解析与应用实践
在机器学习的广阔天地中,集成学习方法因其卓越的预测能力和泛化性能而备受青睐。其中,随机森林(Random Forest)作为集成学习的一个重要分支,凭借其简单、高效且易于实现的特性,在分类和回归任务中展现了非凡的表现。本文将深入探讨随机森林的基本原理、核心构建模块、关键参数调优以及在实际应用中的策略与案例分析,旨在为读者提供一个全面而深入的理解。
408 3
|
15天前
|
机器学习/深度学习 数据采集 存储
【机器学习】K-近邻算法(KNN)全面解析
K-近邻算法(K-Nearest Neighbors, KNN)是一种基于实例的学习方法,属于监督学习范畴。它的工作原理简单直观:给定一个训练数据集,对新的输入实例,KNN算法通过计算其与训练集中每个实例的距离,找出距离最近的K个邻居,然后根据这些邻居的类别(对于分类任务)或值(对于回归任务)来预测新实例的类别或值。KNN因其简单高效和无需训练过程的特点,在众多领域中得到广泛应用,如模式识别、推荐系统、图像分类等。
173 0

推荐镜像

更多