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带来的便利还有很多很多,后续我会为各位同学带来更多学习内容分享。

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

相关推荐
万邦科技Lafite1 小时前
京东按图搜索京东商品(拍立淘) API (.jd.item_search_img)快速抓取数据
开发语言·前端·数据库·python·电商开放平台·京东开放平台
丁浩6662 小时前
Python机器学习---6.集成学习与随机森林
python·随机森林·机器学习
charlie1145141913 小时前
现代 Python 学习笔记:Statements & Syntax
笔记·python·学习·教程·基础·现代python·python3.13
麦麦大数据6 小时前
F036 vue+flask中医热性药知识图谱可视化系统vue+flask+echarts+mysql
vue.js·python·mysql·flask·可视化·中医中药
移远通信6 小时前
MQTT协议:物联网时代的通信革命
python·物联网·网络协议
Amo Xiang6 小时前
JavaScript逆向与爬虫实战——基础篇(css反爬之动态字体实现原理及绕过)
爬虫·python·js逆向·动态字体
编程让世界美好6 小时前
选手评分问题(python)
python
java1234_小锋7 小时前
PyTorch2 Python深度学习 - PyTorch2安装与环境配置
开发语言·python·深度学习·pytorch2
CClaris7 小时前
深度学习——反向传播的本质
人工智能·python·深度学习
伊玛目的门徒7 小时前
Jupyter Notebook 配置使用虚拟环境中(virtualenv) 内核
python·jupyter·virtualenv