AI助力NLP,零基础也能做情感分析

引言

python作为AI开发下的第一语言,毋庸置疑是助力我们成为一个AI全栈+前端应用开发工程师的首选语言。你是否常常为配置环境变量、各种插件下载各种配置问题感到困扰呢?

在AI时代,这一切都变得简单了起来,让我们一起转变固有思维,拥抱时代潮流带来的红利,感受AI带来的便利!

Huggingface

web开发工程师借助于Huggingface(抱抱脸),全网第一的nlp社区,提供的transformers库(支持python,js),快速实现nlp任务。

在当今技术领域,开源社区扮演着重要的角色,推动着技术的发展与创新。抱抱脸(Hugging Face)作为一家以人工智能技术为核心的开源社区,不仅提供了丰富的自然语言处理工具和模型,还促进了学术界与工业界的交流与合作。

Colaboratory

当传统web应用开发工程师还在苦心配置环境时,你已经可以之间通过Colaboratory直接开始应用开发之旅了! ------>colab.research.google.com

当然在此之前你需要拥有:

  • Google
  • Google账号
  • 众所周知,Google引擎在国内不可使用,因此需要完成科学上网工作。(不懂的同学可以私信交流)

正式开始

在完成上述工作以后,通过colab我们可以直接进行开发工作

  • web开发工程师借助于Huggingface(抱抱脸),全网第一的nlp社区,提供的transformers 库(python , js),快速实现nlp任务 这样子我们的库就已经导入啦。
diff 复制代码
!pip install transformers 
  • 导入管道模块,指定任务(我们以情感分析为例感受AI时代的便利)

pipeline

Python的pipeline模块通常指的是sklearn.pipeline,它是scikit-learn(sklearn)库中的一个重要模块,用于构建机器学习的工作流程。这个模块的主要功能是帮助用户将多个处理步骤(例如数据预处理、特征工程、模型训练等)有机地串联起来,形成一个完整的数据处理流程。下面是sklearn.pipeline模块的主要功能

  1. 方便的工作流程构建pipeline允许用户将多个数据处理步骤按顺序组合在一起,形成一个完整的工作流程。这些步骤可以包括数据预处理、特征提取、特征选择、模型训练等。
  2. 统一的接口pipeline中的每个步骤都必须实现fittransform方法,这样可以保证每个步骤都具有统一的接口,方便进行组合和调用。
  3. 避免数据泄露 :在使用交叉验证等技术进行模型评估时,很容易发生数据泄露的问题。pipeline可以在每次交叉验证时自动对训练集进行拆分,并确保在每个拆分中只使用训练集的数据来进行训练和验证,从而避免数据泄露的问题。
  4. 参数网格搜索pipeline可以与GridSearchCV等网格搜索技术结合使用,方便地对整个工作流程进行参数搜索和调优,从而找到最佳的参数组合。
  5. 代码简洁 :通过使用pipeline,可以将复杂的数据处理流程简化成几行代码,使代码更加清晰易懂。
ini 复制代码
from transformers import pipeline 
classifier =pipeline('sentiment-analysis') 
output= classifier('I love you') 
print(output)

至此我们可以发现不需要多余的操作,便能够分析出这句话到底是积极还是消极以及给出的评分0.99 那么I hate you呢?是否准确?我们拭目以待

哎呦不错哦,这种明确表达意思的语句看来已经被拿捏的死死的了,让我们试一试遥遥领先这句话,我们的transformers库(用于自然语言处理(NLP)任务中的预训练模型和相关工具)能否为我们带来满意的结果。

ohno!作为一个国人,我不能接受这居然是一个消极语句!那么这是因为transformers库训练的不够准确?不够大吗?!显然不是!

  • 下面我们重新定义一下这个pipeline,并给出准确且有针对性的训练模型
  • 指定模型 模型有很多种,选择合适的模型 dianping-chinese
ini 复制代码
classifier=pipeline('sentiment-analysis',model='uer/roberta-base-finetuned-dianping-chinese') 
reasult = classifier('遥遥领先')
print(reasult)
  • uer/roberta-base-finetuned-dianping-chinese是一个在Hugging Face的模型仓库中的预训练模型,它是基于RoBERTa模型进行微调得到的。具体来说,它是由北京大学人类语言技术研究中心(北大-人语所)团队发布的一个针对中文评论情感分析任务(如点评数据集)进行微调得到的模型。
  • 'uer/roberta-base-finetuned-dianping-chinese'这个模型是在RoBERTa的基础上,通过在点评数据集(可能是中文评论情感分析任务)上进行微调得到的模型。您可以使用这个模型来进行中文评论情感分析或其他类似的任务。

结语

今日份浅尝AI时代下,我们也能做机器学习情感分析已到位。事实上,AI带来的便利还有很多很多,后续我会为各位同学带来更多学习内容分享。

如有帮助,请点赞收藏+评论!感谢友友们让我们一同进步!

相关推荐
qiuchangyong23 分钟前
TypeError: only size-1 arrays can be converted to Python scalars
python·numpy
Mopes__2 小时前
Python | Leetcode Python题解之第421题数组中两个数的最大异或值
python·leetcode·题解
reasonsummer3 小时前
【教学类-52-11】20240919动物数独(4宫格)1图、2图、6图、有答案、无答案 组合版18套
python
Amo Xiang3 小时前
Python练习宝典:Day 1 - 选择题 - 基础知识
开发语言·python
软件开发技术深度爱好者3 小时前
Python青少年简明教程目录
开发语言·python
西贝爱学习3 小时前
python新手的五个练习题
开发语言·python
谛凌3 小时前
【Python123题库】#绘制温度曲线 #XRD谱图绘制 #态密度曲线绘制
开发语言·python·python123·python题库
Hiweir ·3 小时前
机器翻译之数据处理
前端·人工智能·python·rnn·自然语言处理·nlp·机器翻译
五星资源4 小时前
基于python+django+mysql+Nanodet检测模型的水稻虫害检测系统
python·mysql·django
吉小雨4 小时前
PyTorch 教程
人工智能·pytorch·python