Patru capcane ale acurateței analizei sentimentelor

Publicat: 2022-03-11

Oamenii folosesc forumuri, rețele sociale, bloguri și alte platforme pentru a-și împărtăși opinia, generând astfel o cantitate imensă de date. Între timp, utilizatorii sau consumatorii doresc să știe ce produs să cumpere sau ce film să vizioneze, așa că citesc și recenzii și încearcă să ia deciziile în consecință.

Culegerea manuală a informațiilor despre datele generate de utilizator necesită mult timp. De aceea, tot mai multe companii și organizații sunt interesate de metodele automate de analiză a sentimentelor pentru a le ajuta să le înțeleagă.

Ce este analiza sentimentelor?

Analiza sentimentelor este procesul de studiere a opiniilor și emoțiilor oamenilor, folosind în general indicii de limbaj. La prima vedere, este doar o problemă de clasificare a textului, dar dacă ne aprofundăm, vom afla că există o mulțime de probleme provocatoare care afectează serios acuratețea analizei sentimentelor. Mai jos, voi explora câteva capcane cu care vă confruntați lucrând la problema generală a analizei sentimentelor:

  1. Ironia și sarcasmul
  2. Tipuri de negații
  3. Ambiguitatea cuvântului
  4. Multipolaritate

Vom parcurge fiecare subiect și vom încerca să înțelegem modul în care problemele descrise afectează calitatea clasificatorului de sentimente și ce tehnologii pot fi folosite pentru a le rezolva.

Analiza sentimentelor Provocarea nr. 1: Detectarea sarcasmului

În textul sarcastic, oamenii își exprimă sentimentele negative folosind cuvinte pozitive. Acest fapt permite sarcasmului să înșele cu ușurință modelele de analiză a sentimentelor, cu excepția cazului în care sunt concepute special pentru a ține cont de posibilitatea acestuia.

Sarcasmul apare cel mai adesea în conținutul generat de utilizatori, cum ar fi comentariile Facebook, tweet-urile etc. Detectarea sarcasmului în analiza sentimentelor este foarte dificil de realizat fără a avea o bună înțelegere a contextului situației, a subiectului specific și a mediului.

Poate fi greu de înțeles nu numai pentru o mașină, ci și pentru un om. Variația continuă a cuvintelor folosite în propozițiile sarcastice face dificilă antrenarea cu succes a modelelor de analiză a sentimentelor. Subiectele comune, interesele și informațiile istorice trebuie împărtășite între două persoane pentru a face sarcasmul disponibil.

În primul rând, să privim sarcasmul din perspectiva lingvisticii , unde sarcasmul este studiat pe scară largă. Într-una dintre cele mai citate cercetări în acest domeniu, autoarea Elisabeth Camp propune următoarele patru tipuri de sarcasm:

  • Propozițional: Sarcasmul pare a fi o propoziție non-sentiment, dar are implicat un sentiment implicit.
  • Încorporat: Sarcasmul are încorporat o incongruență sentimentală sub forma cuvintelor și expresiilor în sine.
  • Prefix asemănător: o expresie asemănătoare oferă o negare implicită a argumentului prezentat.
  • Ilocuționar: acte care nu sunt de vorbire (limbajul corpului, gesturi) care contribuie la sarcasm.

Cele patru tipuri de sarcasm ale Elisabeth Camp: propozițional („Acesta pare un plan perfect!”), Încorporat („Îmi place să fiu ignorat”), Prefixat („Ca tipii ăia cred un cuvânt pe care îl spun”) și Ilocuționar „(ride din umeri) Chiar foarte util!”.

Cercetarea Camp a fost publicată în 2012. În 2017, cercetătorii de la Universitatea Stanford și-au anunțat propria cercetare destul de interesantă „A avea 2 ore pentru a scrie o lucrare este distractiv!”: Detecting Sarcasm in Numerical Portions of Text unde au vorbit despre un alt tip de sarcasm numit numeric . sarcasm . Sarcasmul numeric este foarte frecvent în rețelele de socializare. Ideea din spatele acestuia este legată de modificările valorilor numerice care afectează apoi polaritatea textului. De exemplu:

  1. „Acest telefon are o baterie de rezervă extraordinară de 38 de ore.” (Nesarcastic)
  2. „Acest telefon are o baterie de rezervă extraordinară de 2 ore.” (Sarcastic)
  1. „Afară sunt +25 și sunt atât de fierbinte”. (Nesarcastic)
  2. „Afară sunt -25 și mi-e atât de fierbinte”. (Sarcastic)
  1. "Am condus atât de încet --- doar 20 km/h." (Nesarcastic)
  2. "Am condus atât de încet --- doar 160 km/h." (Sarcastic)

După cum putem vedea, aceste propoziții diferă doar prin numărul folosit - deci, sarcasmul numeric.

Există diferite abordări pentru detectarea automată a sarcasmului, inclusiv:

  1. Bazat pe reguli
  2. Statistic
  3. Algoritmi de învățare automată
  4. Invatare profunda

Abordările bazate pe învățarea profundă câștigă popularitate. Kumar, Somani și Bhattacharyya au concluzionat în 2017 că un anumit model de învățare profundă (arhitectura CNN-LSTM-FF) depășește abordările anterioare, atingând cel mai înalt nivel de acuratețe pentru detectarea sarcasmului numeric.

Dar rețelele neuronale profunde (DNN) nu au fost numai cele mai bune pentru sarcasmul numeric, ci au depășit și alte abordări ale detectoarelor de sarcasm în general. Ghosh și Veale în lucrarea lor din 2016 folosesc o combinație între o rețea neuronală convoluțională, o rețea de memorie pe termen scurt (LSTM) și un DNN. Ei compară abordarea lor cu mașinile vectoriale de suport recursive (SVM) și concluzionează că arhitectura lor de învățare profundă este o îmbunătățire față de astfel de abordări.

Analiza sentimentelor Provocarea nr. 2: Detectarea negației

În lingvistică, negația este o modalitate de a inversa polaritatea cuvintelor, frazelor și chiar propozițiilor. Cercetătorii folosesc reguli lingvistice diferite pentru a identifica dacă are loc negația, dar este, de asemenea, important să se determine gama de cuvinte care sunt afectate de cuvintele de negație.

Nu există o dimensiune fixă ​​pentru domeniul de aplicare al cuvintelor afectate. De exemplu, în propoziția „Spectacolul nu a fost interesant”, domeniul de aplicare este doar următorul cuvânt după cuvântul de negație. Dar pentru propoziții precum „Nu numesc acest film un film de comedie”, efectul cuvântului de negație „nu” este până la sfârșitul propoziției. Sensul inițial al cuvintelor se schimbă dacă un cuvânt pozitiv sau negativ intră în domeniul de aplicare al negației - în acest caz, polaritatea opusă va fi returnată.

Cea mai simplă abordare pentru a trata negația într-o propoziție, care este folosită în majoritatea tehnicilor de analiză a sentimentelor de ultimă generație, este marcarea ca negate a tuturor cuvintelor de la un semn de negație la următorul semn de punctuație. Eficacitatea modelului de negație poate fi schimbată datorită construcției specifice a limbajului în diferite contexte.

Există mai multe forme de a exprima o opinie negativă în propoziții:

  • Negația poate fi morfologică în cazul în care este fie notată printr-un prefix („dis-”, „non-”), fie un sufix („-mai puțin”).
  • Negația poate fi implicită, ca în „cu acest act, va fi primul și ultimul lui film” – poartă un sentiment negativ, dar nu sunt folosite cuvinte negative.
  • Negația poate fi explicită, ca în „asta nu este bine”.

Având mostre cu diferite tipuri de negații descrise va crește calitatea unui set de date pentru formarea și testarea modelelor de clasificare a sentimentelor în cadrul negației. Conform celor mai recente cercetări privind rețelele neuronale recurente (RNN), diferitele arhitecturi ale modelelor LSTM depășesc toate celelalte abordări în detectarea tipurilor de negații în propoziții.

În lucrarea Effect of Negation in Sentiment Analysis, un model de analiză a sentimentelor a evaluat 500 de recenzii care au fost colectate de la Amazon și Trustedreviews.com. Autorii prezintă o comparație a modelelor cu și fără detectarea negației. Evaluarea lor demonstrează cum luarea în considerare a negației poate crește semnificativ acuratețea unui model.

Analiza sentimentelor Provocarea nr. 3: Ambiguitatea cuvântului

Ambiguitatea cuvintelor este o altă capcană cu care te vei confrunta lucrând la o problemă de analiză a sentimentelor. Problema ambiguității cuvântului este imposibilitatea de a defini polaritatea în avans, deoarece polaritatea pentru unele cuvinte este puternic dependentă de contextul propoziției.

Abordările de analiză a sentimentelor bazate pe lexic sunt populare printre metodele existente. Un lexic de opinie conține cuvinte de opinie cu valoarea lor de polaritate. Există câteva lexiconi de opinie publică disponibile pe internet: SentiWordNet, General Inquirer și SenticNet, printre altele. Deoarece polaritatea cuvântului variază în diferite domenii, este imposibil să se dezvolte un lexic de opinie universal care să aibă o polaritate pentru fiecare cuvânt. De exemplu:

  1. „Povestea este imprevizibilă.”
  2. „Volanul este imprevizibil.”

Aceste două exemple arată modul în care contextul afectează sentimentul cuvântului de opinie. În primul exemplu, cuvântul polaritatea „imprevizibil” este prezis ca pozitiv. În al doilea, polaritatea aceluiași cuvânt este negativă.

Analiza sentimentelor Provocarea nr. 4: Multipolaritatea

Uneori, o anumită propoziție sau document - sau orice unitate de text pe care am dori să o analizăm - va prezenta multipolaritate. În aceste cazuri, a avea doar rezultatul total al analizei poate induce în eroare, foarte asemănător cu modul în care o medie poate ascunde uneori informații valoroase despre toate numerele care au intrat în ea.

Imaginează-ți când autorii vorbesc despre diferite persoane, produse sau companii (sau aspecte ale acestora) într-un articol sau recenzie. Este obișnuit ca în cadrul unui text, unele subiecte să fie criticate, iar altele lăudate.

Aici, polaritatea totală a sentimentului va lipsi informații cheie. Acesta este motivul pentru care este necesar să extrageți toate entitățile sau aspectele din propoziție cu etichete de sentiment atribuite și să calculați polaritatea totală numai dacă este necesar.

Să luăm în considerare un exemplu care constă din polarități multiple: „Calitatea audio a noului meu laptop este atât de bună, dar culorile afișajului nu sunt prea bune.”

Unele modele de analiză a sentimentelor vor atribui acestei propoziții o polaritate negativă sau neutră. Pentru a face față unor astfel de situații, un model de analiză a sentimentelor trebuie să atribuie o polaritate fiecărui aspect din propoziție; aici, „audio” este un aspect căruia i se atribuie o polaritate pozitivă, iar „afișaj” este un aspect separat cu o polaritate negativă.

Pentru o descriere mai aprofundată a acestei abordări, recomand lucrarea interesantă și utilă Deep Learning for Aspect-based Sentiment Analysis de Bo Wanf și Min Liu de la Universitatea Stanford.

Îmbunătățirea acurateței analizei sentimentelor: acestea nu sunt cazuri marginale

În acest articol, am vorbit despre problemele populare ale clasificării analizei sentimentelor: sarcasm, negații, ambiguitate a cuvintelor și multipolaritate. Cunoașterea fiecăreia dintre acestea vă va ajuta să evitați posibilele probleme: luarea în considerare a situațiilor pe care le-am discutat va crește semnificativ acuratețea analizei sentimentelor într-un model de clasificare. Sper că ați găsit acest articol o introducere utilă a subiectului.

Înrudit: Profitați la maximum de modelele pre-antrenate