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

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

相关推荐
数据智能老司机6 小时前
精通 Python 设计模式——分布式系统模式
python·设计模式·架构
数据智能老司机7 小时前
精通 Python 设计模式——并发与异步模式
python·设计模式·编程语言
数据智能老司机7 小时前
精通 Python 设计模式——测试模式
python·设计模式·架构
数据智能老司机7 小时前
精通 Python 设计模式——性能模式
python·设计模式·架构
c8i7 小时前
drf初步梳理
python·django
每日AI新事件7 小时前
python的异步函数
python
这里有鱼汤8 小时前
miniQMT下载历史行情数据太慢怎么办?一招提速10倍!
前端·python
databook17 小时前
Manim实现脉冲闪烁特效
后端·python·动效
程序设计实验室18 小时前
2025年了,在 Django 之外,Python Web 框架还能怎么选?
python
倔强青铜三19 小时前
苦练Python第46天:文件写入与上下文管理器
人工智能·python·面试