Noțiuni de bază despre procesarea limbajului natural (NLP)

Procesarea limbajului natural cu spaCy

Azadeh Mobasher

Principal Data Scientist

Procesarea limbajului natural (NLP)

 

  • Un subdomeniu al Inteligenței Artificiale (IA)
  • Ajută computerele să înțeleagă limbajul uman
  • Extrage informații din date nestructurate
  • Utilizează statistici, modele de machine learning și modele de deep learning

 

NLP, un subdomeniu al IA

Procesarea limbajului natural cu spaCy

Cazuri de utilizare NLP

Analiza sentimentelor  

  • Utilizarea calculatoarelor pentru a determina tonul subiectiv al unui text

 

Exemple de analiză a sentimentelor

Procesarea limbajului natural cu spaCy

Cazuri de utilizare NLP

Recunoașterea entităților denumite (NER)  

  • Localizarea și clasificarea entităților denumite din text nestructurat în categorii predefinite
  • Entitățile denumite sunt obiecte din lumea reală, precum o persoană sau o locație

 

Exemple NER

Procesarea limbajului natural cu spaCy

Cazuri de utilizare NLP

 

  • Generează răspunsuri asemănătoare celor umane la input text, precum ChatGPT

 

Chatboți

Procesarea limbajului natural cu spaCy

Introducere în spaCy

spaCy este o bibliotecă gratuită și open-source pentru NLP în Python, care:

  • Este concepută pentru extragerea de informații
  • Oferă cod gata de producție pentru NLP
  • Suportă 64+ de limbi
  • Este robustă, rapidă și include biblioteci de vizualizare

 

spaCy și NLP

Procesarea limbajului natural cu spaCy

Instalare și import spaCy

 

  • Ca prim pas, spaCy poate fi instalat cu managerul de pachete pip
  • Modelele antrenate spaCy pot fi descărcate
  • Mai multe modele antrenate pentru engleză sunt disponibile la spacy.io

 

$ python3 pip install spacy
python3 -m spacy download en_core_web_sm
import spacy
nlp = spacy.load("en_core_web_sm")
Procesarea limbajului natural cu spaCy

Citirea și procesarea textului cu spaCy

  • Modelul spaCy încărcat en_core_web_sm = obiect nlp
  • Obiectul nlp convertește textul într-un obiect Doc (container) pentru stocarea textului procesat

Procesarea textului cu spaCy

Procesarea limbajului natural cu spaCy

spaCy în acțiune

  • Procesarea unui șir de caractere cu spaCy
import spacy
nlp = spacy.load("en_core_web_sm")
text = "A spaCy pipeline object is created."
doc = nlp(text)
  • Tokenizare
    • Un Token este cea mai mică unitate semnificativă a textului.
    • Tokenizarea: procesul de divizare a textului într-o listă de tokeni semnificativi
print([token.text for token in doc])
['A', 'spaCy', 'pipeline', 'object', 'is', 'created', '.']
Procesarea limbajului natural cu spaCy

Să exersăm!

Procesarea limbajului natural cu spaCy

Preparing Video For Download...