ห้องสมุดที่ใช้หม้อแปลงสำหรับงาน SocialNLP
ปัจจุบันสนับสนุน:
| งาน | ภาษา |
|---|---|
| การวิเคราะห์ความเชื่อมั่น | es, en, it, pt |
| การตรวจจับคำพูดแสดงความเกลียดชัง | es, en, it, pt |
| การตรวจจับประชดประชัน | es, en, it, pt |
| การวิเคราะห์อารมณ์ | es, en, it, pt |
| การติดแท็ก ner & pos | es, en |
| การตรวจจับคำพูดแสดงความเกลียดชังตามบริบท | ES |
| การวิเคราะห์ความเชื่อมั่นเป้าหมาย | ES |
เพียงแค่ติด pip install pysentimiento แล้วเริ่มใช้:
from pysentimiento import create_analyzer
analyzer = create_analyzer ( task = "sentiment" , lang = "es" )
analyzer . predict ( "Qué gran jugador es Messi" )
# returns AnalyzerOutput(output=POS, probas={POS: 0.998, NEG: 0.002, NEU: 0.000})
analyzer . predict ( "Esto es pésimo" )
# returns AnalyzerOutput(output=NEG, probas={NEG: 0.999, POS: 0.001, NEU: 0.000})
analyzer . predict ( "Qué es esto?" )
# returns AnalyzerOutput(output=NEU, probas={NEU: 0.993, NEG: 0.005, POS: 0.002})
analyzer . predict ( "jejeje no te creo mucho" )
# AnalyzerOutput(output=NEG, probas={NEG: 0.587, NEU: 0.408, POS: 0.005})
"""
Emotion Analysis in English
"""
emotion_analyzer = create_analyzer ( task = "emotion" , lang = "en" )
emotion_analyzer . predict ( "yayyy" )
# returns AnalyzerOutput(output=joy, probas={joy: 0.723, others: 0.198, surprise: 0.038, disgust: 0.011, sadness: 0.011, fear: 0.010, anger: 0.009})
emotion_analyzer . predict ( "fuck off" )
# returns AnalyzerOutput(output=anger, probas={anger: 0.798, surprise: 0.055, fear: 0.040, disgust: 0.036, joy: 0.028, others: 0.023, sadness: 0.019})
"""
Hate Speech (misogyny & racism)
"""
hate_speech_analyzer = create_analyzer ( task = "hate_speech" , lang = "es" )
hate_speech_analyzer . predict ( "Esto es una mierda pero no es odio" )
# returns AnalyzerOutput(output=[], probas={hateful: 0.022, targeted: 0.009, aggressive: 0.018})
hate_speech_analyzer . predict ( "Esto es odio porque los inmigrantes deben ser aniquilados" )
# returns AnalyzerOutput(output=['hateful'], probas={hateful: 0.835, targeted: 0.008, aggressive: 0.476})
hate_speech_analyzer . predict ( "Vaya guarra barata y de poca monta es XXXX!" )
# returns AnalyzerOutput(output=['hateful', 'targeted', 'aggressive'], probas={hateful: 0.987, targeted: 0.978, aggressive: 0.969})ดูงานสำหรับรายละเอียดเพิ่มเติมเกี่ยวกับงานและภาษาที่รองรับและสำหรับการรายงานประสิทธิภาพสำหรับแต่ละรุ่นมาตรฐาน
นอกจากนี้ตรวจสอบสมุดบันทึกเหล่านี้ด้วยตัวอย่างของวิธีการใช้ pysentimiento สำหรับแต่ละภาษา:
pysentimiento มีตัวประมวลผลล่วงหน้าทวีตเหมาะสำหรับการจำแนกทวีตด้วยโมเดลที่ใช้หม้อแปลง
from pysentimiento . preprocessing import preprocess_tweet
# Replaces user handles and URLs by special tokens
preprocess_tweet ( "@perezjotaeme debería cambiar esto http://bit.ly/sarasa" ) # "@usuario debería cambiar esto url"
# Shortens repeated characters
preprocess_tweet ( "no entiendo naaaaaaaadaaaaaaaa" , shorten = 2 ) # "no entiendo naadaa"
# Normalizes laughters
preprocess_tweet ( "jajajajaajjajaajajaja no lo puedo creer ajajaj" ) # "jaja no lo puedo creer jaja"
# Handles hashtags
preprocess_tweet ( "esto es #UnaGenialidad" )
# "esto es una genialidad"
# Handles emojis
preprocess_tweet ( "??" , lang = "en" )
# 'emoji party popper emoji emoji party popper emoji' git clone https://github.com/pysentimiento/pysentimiento
pip install poetry
poetry shell
poetry install
ตรวจสอบ Train.md สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการฝึกอบรมแบบจำลองของคุณ
หมายเหตุ: คุณต้องเข้าถึงชุดข้อมูลซึ่งไม่สาธารณะในขณะนั้น ส่งอีเมลถึงเราเพื่อเข้าถึงพวกเขา
ตรวจสอบคำแนะนำ "การแชร์แบบจำลองและอัปโหลด" ในเอกสาร huggingface
pysentimiento เป็นห้องสมุดโอเพนซอร์ซ อย่างไรก็ตามโปรดทราบว่าแบบจำลองได้รับการฝึกฝนด้วยชุดข้อมูลของบุคคลที่สามและอยู่ภายใต้ใบอนุญาตของตนซึ่งส่วนใหญ่ใช้สำหรับการใช้งานที่ไม่ใช่เชิงพาณิชย์
ใบอนุญาตชุดข้อมูล TASS (ใบอนุญาตสำหรับการวิเคราะห์ความเชื่อมั่นในภาษาสเปนการวิเคราะห์อารมณ์ในภาษาสเปนและอังกฤษ)
ใบอนุญาตชุดข้อมูล Semeval 2017 (การวิเคราะห์ความเชื่อมั่นเป็นภาษาอังกฤษ)
ชุดข้อมูล Lince (ใบอนุญาตสำหรับการติดแท็ก NER & POS)
โปรดใช้ตัวติดตามปัญหาที่เก็บเพื่อชี้ให้เห็นข้อบกพร่องและให้คำแนะนำ (รุ่นใหม่ใช้ชุดข้อมูลอื่นภาษาอื่น ๆ ฯลฯ )
หากคุณใช้ pysentimiento ในงานของคุณโปรดอ้างอิงบทความนี้
@misc { perez2021pysentimiento ,
title = { pysentimiento: A Python Toolkit for Opinion Mining and Social NLP tasks } ,
author = { Juan Manuel Pérez and Mariela Rajngewerc and Juan Carlos Giudici and Damián A. Furman and Franco Luque and Laura Alonso Alemany and María Vanina Martínez } ,
year = { 2023 } ,
eprint = { 2106.09462 } ,a
archivePrefix = { arXiv } ,
primaryClass = { cs.CL }
}นอกจากนี้ยังอ้างถึงโมเดลและชุดข้อมูลที่ได้รับการฝึกอบรมล่วงหน้าที่เกี่ยวข้องสำหรับรุ่นเฉพาะที่คุณใช้ ตรวจสอบการอ้างอิงสำหรับรายละเอียด