A szöveges érzéselemzés ( sentiment analysis , eng. Sentiment analysis , eng. Opinion mining [1] ) a számítógépes nyelvészet tartalomelemzési módszereinek egy osztálya , amelyet a szövegekben található érzelmi színezetű szókincs automatikus felismerésére és a szerzők (vélemények) érzelmi értékelésére terveztek. a szövegben hivatkozott objektumokhoz .
Az érzelem az állítás szerzőjének a szövegben kifejezett érzelmi attitűdje valamilyen tárgyhoz (a való világ tárgyához, eseményhez, folyamathoz, vagy ezek tulajdonságaihoz/attribútumaihoz). A lexéma vagy kommunikatív töredék szintjén kifejezett érzelmi komponenst lexikális tonalitásnak (vagy lexikális érzésnek) nevezik. A teljes szöveg egészének tonalitása az alkotóegységei ( mondatok ) lexikai tonalitásának függvényeként (legegyszerűbb esetben összegeként) és ezek kombinációjának szabályaiként határozható meg [2] .
A hangulatelemzés fő célja, hogy véleményeket találjon a szövegben, és azonosítsa azok tulajdonságait. Hogy mely tulajdonságokat vizsgáljuk meg, az az adott feladattól függ. Például az elemzés célja lehet a szerző, vagyis a vélemény birtokosa.
A vélemények két típusra oszlanak [3] :
Az azonnali vélemény tartalmazza a szerző nyilatkozatát egy tárgyról. Az azonnali vélemény formális meghatározása így néz ki: "az azonnali vélemény öt elemből álló sorozat (e, f, op, h, t) [2] , ahol:
Példák hangszín pontszámokra [4] :
A "semleges" alatt azt értjük, hogy a szöveg nem tartalmaz érzelmi felhangokat. Más tonális pontszámok is létezhetnek .
A szöveg érzelmi értékelésének automatikus meghatározására szolgáló modern rendszerekben leggyakrabban egydimenziós érzelmi teret használnak: pozitív vagy negatív (jó vagy rossz). A többdimenziós terek alkalmazásának azonban sikeres esetei is ismertek [5] [6] .
A hangulatelemzés fő feladata egy adott dokumentum polaritásának osztályozása, vagyis annak meghatározása, hogy egy dokumentumban vagy mondatban megfogalmazott vélemény pozitív, negatív vagy semleges. A kibővített, „polaritáson kívüli” érzelembesorolást például olyan érzelmi állapotok fejezik ki, mint a „dühös”, „szomorú” és „boldog”.
Bináris léptékű osztályozásA dokumentum polaritása a skála binárisával határozható meg. Ebben az esetben két értékelési osztályt használnak a dokumentum polaritásának meghatározására: pozitív vagy negatív. Ennek a megközelítésnek az egyik hátránya, hogy a dokumentum érzelmi komponense nem mindig határozható meg egyértelműen, vagyis a dokumentum egyaránt tartalmazhat pozitív és negatív értékelés jeleit [4] . Ezen a területen a kezdeti munkák közé tartozik Turney [7] és Pang [8] , akik különböző módszereket alkalmaznak a termékértékelések, illetve a filmkritikák polaritásának felismerésére. Ez egy példa a dokumentumszintű munkára.
Osztályozás többsávos skálánLehetőség van egy dokumentum polaritásának többsávos skálán történő osztályozására, amit többek között Pang [9] és Snyder [10] is vállalt . Kibővítették a filmkritikák osztályozásának fő feladatát a „pozitív vagy negatív” értékelésről a 3 vagy 4 pontos skálán történő értékelés előrejelzésére. Ezzel egyidejűleg Snyder mélyreható elemzést végzett az éttermek értékeléseiről, megjósolva különböző tulajdonságok értékelését, mint például az ételek és a hangulat (5 fokozatú skálán) [10] .
Méretezési rendszerekA hangulat meghatározásának egy másik módszere a skálázási rendszerek használata, amelyek során az általában negatív, semleges vagy pozitív érzelmekhez társított szavakat –10-től 10-ig terjedő skálán (a legnegatívabbtól a legtöbb pozitívig) számokkal rendelik. Először egy strukturálatlan szöveget vizsgálnak meg természetes nyelvi feldolgozó eszközök és algoritmusok segítségével , majd a szövegből kivont objektumokat és kifejezéseket elemzik, hogy megértsék e szavak jelentését. [11] .
Szubjektivitás/objektivitásEgy másik kutatási irány a szubjektivitás/objektivitás azonosítása [12] . Ezt a feladatot általában úgy határozzák meg, hogy egy adott szöveget két osztály egyikéhez rendelnek: szubjektív vagy objektív . Ez a probléma néha összetettebb lehet, mint a polaritás szerinti besorolás: a szavak és kifejezések szubjektivitása a kontextusuktól függhet , és egy objektív dokumentum szubjektív mondatokat tartalmazhat (például egy hírcikk, amely az emberek véleményét idézi). Sőt, amint azt Su [12] említette , az eredmények inkább a szövegannotációkkal összefüggésben használt szubjektivitás-definíciótól függenek. Bárhogy is legyen, Pang [13] kimutatta, hogy az objektív mondatok eltávolítása a dokumentumból a polaritás osztályozása előtt javította az eredmények pontosságát.
A részletesebb elemzési modellt jellemző/szempont alapú elemzésnek nevezzük. Ez a modell az entitások különböző funkciói vagy aspektusai által kifejezett vélemények vagy érzelmek meghatározására utal, mint például a mobiltelefon, a digitális fényképezőgép vagy a bank. A tulajdonság/szempont egy olyan entitás attribútuma vagy összetevője, amelyet érzelmek szempontjából vizsgálnak, mint például a mobiltelefon képernyője vagy a kamerafelvétel minősége. Ez a probléma számos feladat megoldását igényli, például a releváns entitások azonosítását, funkcióik/szempontjaik kinyerését, és annak megállapítását, hogy az egyes funkciókról/szempontokról kifejezett vélemény pozitív, negatív vagy semleges. Erről a témáról részletesebb megbeszélés található az NLP kézikönyvében , az "Érzelem és szubjektivitás elemzése" [14] című fejezetében .
A számítógépek képesek digitális szövegek automatikus elemzésére a gépi tanulás elemeinek felhasználásával , mint például a látens szemantikai elemzés, a támogató vektorgép , a szavak zsákja és a szemantikai fókusz ezen a területen [7] . A kifinomultabb módszerek megkísérlik azonosítani az érzés tulajdonosát (azaz a személyt) és a célpontot (azaz azt az entitást, amellyel kapcsolatban az érzések kifejeződnek). A vélemény meghatározásához a szövegkörnyezet figyelembevételével a szavak közötti grammatikai kapcsolatokat használják [15] .
A nyelvtani összefüggések összefüggéseit a szöveg mélyszerkezeti elemzése alapján kapjuk meg. A hangulatelemzés két külön kategóriába sorolható [16] :
A legszembetűnőbb különbség a kettő között a rendszer hatékonyságában és az elemzés pontosságában rejlik. Az automatizált hangulatelemző számítógépes programok gépi tanulási algoritmusokat, statisztikai eszközöket és természetes nyelvi feldolgozást használnak nagy mennyiségű szöveg feldolgozására, beleértve a weboldalakat , az online híreket, az internetes vitacsoportok szövegeit, az online ismertetőket, a webblogokat és a közösségi hálózatokat .
Számos szinonimaszótár van kifejezetten az érzelmi komponensre vonatkozóan megjelölve. Az alábbiakban ismertetett szótárak a számítógépes programok számára szükségesek egy szöveg hangulatának elemzéséhez.
A WordNet-Affect fejlesztésére példa volt a WordNet WordNet Domain nevű többnyelvű kiterjesztése [ 17 ] . A WordNet Domain kiterjesztésében minden synsethez legalább egy tartománycímke (angolul "domain label") van hozzárendelve, például: sport, politika, orvostudomány. Összességében mintegy kétszáz tárgycímke szerepelt a hierarchikusan szervezett struktúrában [18] .
A WordNet-Affect egy szemantikai tezaurusz, amelyben az érzelmekhez kapcsolódó fogalmakat („emotional concepts”, angol „affective concepts”) olyan szavak segítségével ábrázolják, amelyeknek van érzelmi összetevője („érzelmi szavak”, angol „affective words”) [17] . A WordNet-Affect a WordNet szinkészletek egy részhalmazából áll [19] , ahol minden egyes „érzelmi fogalomnak” megfelelő szintkészlet „érzelmi szavakkal” ábrázolható [17] .
Így a WordNet-Affect a WordNet for English alapján jött létre (a WordNet-Affect más nyelvekre is vannak verziói [20] ) szinonimák (synset) kiválasztásával és hozzárendelésével a különböző érzelmi fogalmakhoz. Különösen az érzelmek leírását jelentő igék, főnevek, melléknevek és határozószók szinkészleteit speciális érzelmi címkékkel (affektív címkék, A-címkék) kézzel címkézték [21] . Ezek az érzelmi címkék különféle állapotokat jellemeznek, amelyek hangulatokat, érzelmi válaszokat vagy érzelmeket kiváltó helyzeteket fejeznek ki [21] . Az ilyen érzelmi címkékre példákat adunk az alábbi táblázatban [22]
érzelmi címke | Példa |
---|---|
Érzelem _ | főnév harag #1, ch. félelem #1 (félelem) |
hangulat_ _ | főnév ellenségesség#1 (animozis), adj. kedves#1J (barátságos) |
Tulajdonság _ | főnév agresszivitás # 1 (agresszivitás), adj. 1. versenyképes (versenyképes) |
Kognitív állapot | főnév confusion#2 (zavartság), adj. döbbenten#2 (kábult) |
Fizikai állapot | n. 1. betegség ( llness), kor. kimerült#1 (all in) |
Hedonikus jel | főnév fájdalom#3(fáj), n. szenvedés #4 (szenvedés) |
Érzelmeket kiváltó helyzetek | főnév ügyetlenség #3 (ügyetlenség), n. 1. biztonság (veszélyen kívül) |
Érzelmi válaszok | főnév hideg verejték#1 (hideg verejték), ch. remeg #2 (remegés) |
Cselekvések (viselkedés) | főnév krimi # 1 (bűncselekmény), adj. gátolt#1 (gátolt) |
Hozzáállás, pozíció (attitude) | főnév intolerancia #1 (intolerancia), főnév. 1. védekező pozíció (védő) |
érzés_ _ | főnév hideg#1 (hidegség), ch. 3. érzés (érzés) |
Ezenkívül a WordNet-Affect további érzelmi címkéket használ a szintkészletek érzelmi vegyértékük szerinti elkülönítésére. Ehhez négy további érzelmi címkét határoznak meg: pozitív, negatív, kétértelmű és semleges [21] . Az első a pozitív érzelmeknek felel meg, amelyeket olyan érzelmi állapotokként határoznak meg, amelyeket pozitív hedonikus jelek (vagy öröm) jelenléte jellemez. Olyan synseteket tartalmaz, mint az öröm #1 vagy a szenvedély #1. Hasonlóképpen , a negatív címke olyan negatív érzelmeket azonosít, amelyeket negatív hedonikus jelek (vagy fájdalom) jellemeznek, mint például a harag #1 vagy a szomorúság #1. Az érzelmi állapotokat reprezentáló szinkészletek, amelyek vegyértéke a szemantikai kontextustól függ (például az 1. meglepetés), kétértelműnek vannak jelölve . Végül a pszichológiai állapotokat meghatározó és mindig kétértelműnek tartott, de vegyértékkel nem jellemezhető szintkészletek semlegesek [21] .
Az érzelmi címkékkel jelölt synseteket ezenkívül hat érzelmi kategóriával is újracímkézik: öröm, félelem, harag, szomorúság, undor, meglepetés. Így a WordNet-Affect fizikai szerkezete hat fájlból áll: harag.txt, undor.txt, félelem.txt, joy.txt, szomorúság.txt, meglepetés.txt , ahol minden fájl egy kategória leírása [23] . Jelenleg a WordNet-Affect 2874 szintkészletet és 4787 szót tartalmaz [24] .
A Moldovai Műszaki Egyetem tudósai a WordNet-Affect szinkészleteket angolról oroszra és románra fordították, igazításukat elvégezték: angol - román - orosz [25] . A forrás online kutatási célokra elérhető [23] .
A SentiWordNet egy lexikális szemantikai tezaurusz, amelynek első változatát 2006-ban fejlesztették ki. [26] A SentiWordNet jelenlegi verziója a SentiWordNet 3.0 [26] , amely több mint 20%-os pontossági javulást biztosít az első verzióhoz képest [26] .
Ez a rendszer egy olyan folyamat eredménye, amely minden WordNet -szintkészletet (szinonimák halmazát) automatikusan annotálja a pozitivitás, a negativitás és az objektivitás mértéke szerint [27] . Így a WordNet minden szinonimikus sorához három numerikus pontszám van hozzárendelve, ahol ezek a pontszámok rendre meghatározzák a szintkészlet objektív, pozitív vagy negatív komponensét [26] . Ezen becslések mindegyike 0-tól 1-ig terjedő tartományban vesz fel értékeket, és összességében 1-et (egyet) adnak, vagyis ezeknek a becsléseknek mindegyikének lehet nullától eltérő értéke [26] . Az eltérő értékű kifejezéseknek eltérő értékelési értékei is lehetnek [26] .
A SentiWordNet tanulási folyamata két lépésből állt: [28] .
A SentiWordNet a CC BY-SA 3.0 licenccel rendelkezik . Ez a licenc lehetővé teszi a SentiWordNet kereskedelmi és tudományos célú szabad használatát, feltéve, hogy az alkotók nevét feltüntetik. [27] Bárki, függetlenül, ingyenesen letöltheti a SentiWordNet fájlokat a hivatalos webhelyről. Letölthet egy kis Java osztályt is, amely bemutatja, hogyan kell dolgozni a SentiWordNettel [27] .
A SenticNet egy másik szemantikai tezaurusz az érzelmi fogalmak halmazainak kezelésére. A SenticNet egy projekt, amelyet a Massachusetts Institute of Technology Media Lab-ban indítottak 2010-ben [30] . Azóta a SenticNet projektet továbbfejlesztették, és intelligens alkalmazások tervezésére használják, amelyek a szöveg érzelmi összetevőinek elemzésére szolgálnak, és számos feladatot lefednek az adatbányászattól az ember-számítógép interakció megszervezéséig [30] . A SenticNet fő célja a természetes nyelv használatával továbbított fogalmi és érzelmi információk gépi felismerésének eljárásának egyszerűsítése [30] . Ha összehasonlítunk más lexikális tezauruszokat, mint a SentiWordNet és a WordNet-Affect a SenticNettel, akkor a fő különbség az lesz, hogy a SentiWordNet és a WordNet-Affect biztosítja a szavak és az érzelmi fogalmak összekapcsolását szintaktikai szinten, nem teszi lehetővé a szemantikai komponens azonosítását. például „a cél elérése”, „nem jó érzés”, „egy különleges alkalom megünneplése”, „elveszíted a türelmedet” vagy „legyél a hetedik mennyországban”, míg a SenticNet szemantikai szinten kapcsolja össze a fogalmakat [31] .
A legújabb verzió a SenticNet 2 [32] . Ellentétben a SenticNet 1-gyel [32] , amely egyszerűen csak érzelmi értéket rendel hozzá körülbelül 5700 fogalomhoz az OpenMind korpuszból, a SenticNet 2 szemantikát és „sentikát” (vagyis kognitív és „érzelmi” információkat) biztosít, amelyek több mint 14 000 fogalomhoz kapcsolódnak, és még többet tesz lehetővé. mély és sokrétű természetes nyelvű szövegelemzés a SenticNet 1-hez képest [32] . A SenticNet 2 a "sentic computing"-ra épül, egy olyan paradigmára, amely mesterséges intelligencia és szemantikus web technikákat használ a természetes nyelvi vélemények felismerésének, értelmezésének és feldolgozásának javítására [32] .
A "sentic computing" a hangulatelemzés interdiszciplináris megközelítése az "hatásszámítás " és a "józan ész számítástechnika" közötti metszéspontjában [33] . A „józan ész számítástechnika” kifejezés olyan kezdeményezések sorozatára utal, amelyek célja annak biztosítása, hogy a számítógépek mindenről a tudást olyan formában jelenítsék meg, ahogyan az ember megérti, és ezek alapján a számítógépek képesek legyenek logikus következtetéseket levonni [34] . Az ilyen interdiszciplináris megközelítés magában foglalja az információs és társadalomtudományi eszközök használatát a vélemények és érzések felismerésének, értelmezésének és feldolgozásának javítására [33] . A Sentic computing különösen magában foglalja a mesterséges intelligencia módszerek és a szemantikus web használatát – a tudás és annak kimenete ábrázolására; matematika - olyan problémák megoldására, mint a gráffeldolgozás és a méretcsökkentés ; nyelvészet a diszkurzív elemzéshez és pragmatikához; pszichológia - kognitív és érzelmi modellezéshez; szociológia, a társadalmi hálózatok és a társadalmi befolyás dinamikájának megértése; és végül az etika, hogy megértsük az elme természetét és érzelmi gépezeteket hozzanak létre. A "Sentic-calculations" lehetővé teszi a dokumentumok elemzését nemcsak egész oldalak és szövegek szintjén, hanem mondatok szintjén is, ami lehetővé teszi a szövegek részletesebb értékelését [33] .
A SenticNet adatok számítógépes programok általi feldolgozásra alkalmas, géppel olvasható formában történő bemutatása érdekében az adatokat XML szintaxis segítségével RDF tripletekre kódolják. Egy példa XML fájl a "love" koncepcióhoz a projekt honlapján a következő linken tekinthető meg [35] . Például, ha az alkalmazás során találkozik egy olyan fogalommal, mint a „születésnap”, akkor a SenticNet az „események” magas szintű fogalmának tulajdonítja, és szemantikailag kapcsolódó fogalmak halmazához társítja, például „édes”, „barátságos meglepetés” vagy „bohóc” (amely további/kontextuális információforrásként használható a keresési eredmények javítása érdekében) [36] . A SenticNet minden fogalmat egy "sentikus vektorral" is társít olyan mennyiségek numerikus értékeivel, mint a kellemesség (kellemesség), a figyelem (figyelem), az érzékenység (érzékenység) és az alkalmasság (képesség) [37] , valamint a a tonalitás értéke (olyan feladatoknál, mint a szöveg hangnemének elemzése), a fő és a kiegészítő hangulat, valamint az érzelmileg közel álló fogalmak halmaza, például „ünnep” vagy „különleges alkalom” (olyan feladatoknál, mint a a szöveg hangneme) [36] .
A SenticNet 2-t bárki szabadon letöltheti a hivatalos oldalról [38] .
Ez a módszer az érzelmi szókincs [39] (lexikális érzés) keresésén alapul a szövegben korábban összeállított tonális szótárak és szabályok szerint, nyelvi elemzés segítségével. A talált érzelmi szókincs összessége szerint a szöveg a negatív és pozitív szókincs mennyiségét tartalmazó skálán értékelhető. Ez a módszer használhatja a reguláris kifejezésekbe behelyettesített szabálylistákat, valamint a mondaton belüli tonális szókincs összekapcsolására szolgáló speciális szabályokat. A szöveg elemzéséhez a következő algoritmust használhatja: először a szöveg minden szavához rendelje hozzá a hangulatértékét a szótárból (ha szerepel a szótárban), majd a hangulat összegzésével számítsa ki a teljes szöveg általános hangulatát. minden egyes mondat értéke [39] .
A szótárakon és szabályokon alapuló módszerek fő problémája a szótár összeállítási folyamatának fáradságossága. Annak érdekében, hogy olyan módszert kapjunk, amely nagy pontossággal osztályozza a dokumentumot, a szótár kifejezéseinek olyan súlyúnak kell lenniük, amely megfelel a dokumentum tárgykörének. Például a „hatalmas” szó a merevlemez-tárhely mennyiségével kapcsolatban pozitív tulajdonság, de negatív a mobiltelefon méretéhez képest. Ezért ez a módszer jelentős munkaerőköltséget igényel, mivel a rendszer megfelelő működéséhez számos szabályt kell összeállítani. Számos olyan megközelítés létezik, amely lehetővé teszi a szótárak összeállításának automatizálását egy adott témakörhöz (például az éttermek vagy a mobiltelefonok témaköréhez) [40] .
Napjainkban a kutatásban leggyakrabban használt módszerek a felügyelt gépi tanulási módszerek . Az ilyen módszerek lényege, hogy az első szakaszban egy gépi osztályozót (például Bayes -féle [41] ) betanítanak az előre megjelölt szövegekre, majd az így kapott modellt használják új dokumentumok elemzésekor. Leírunk egy rövid algoritmust [42] :
Ez a megközelítés azon az elgondoláson alapul, hogy a szövegben a legnagyobb súlyúak azok a kifejezések, amelyek ebben a szövegben gyakrabban fordulnak elő, ugyanakkor a teljes gyűjteményben csak kis számú szövegben szerepelnek. E kifejezések kiemelésével, majd hangszínük meghatározásával következtetést vonhatunk le a teljes szöveg hangnemére vonatkozóan [41] .
Ez a módszer azon a feltételezésen alapul, hogy a dokumentum szövegkorpuszában nem minden szó ekvivalens. Egyes szavak nagyobb súlyúak, és erősebben hatnak a szöveg hangnemére. Ezzel a módszerrel a hangulatelemzés több lépésre bontható:
Az 1. és 2. pontról bővebben D. A. Ustalov "Kifejezések kinyerése orosz nyelvű szövegekből gráfmodellek segítségével" című munkájában olvashat [43] .
A szavak osztályozására hangszótárat használnak, amelyben minden szóhoz egy értékelés tartozik, például „pozitív”, „negatív” vagy „semleges”. A végeredmény megszerzéséhez két értékelés értékét kell kiszámítani: a szöveg pozitív és a negatív komponensét. A szöveg pozitív komponensének megtalálásához meg kell találni a szöveg összes pozitív kifejezésének érzelmeinek összegét, figyelembe véve azok súlyát. A szöveg negatív komponensének értéke hasonló módon található meg. A teljes szöveg hangulatának végső értékeléséhez ki kell számítania ezen összetevők arányát a következő képlet szerint: , ahol T a hangulat végső értékelése, P a szöveg pozitív összetevőjének értékelése és N a szöveg negatív összetevője. Mensikov [44] cikkének megfelelően semlegesnek tekintjük azt a szöveget, amelyben T értéke közel van egyhez, ha valamivel meghaladja az 1-et - pozitív. Ha nagymértékben meghaladja az 1-et, akkor erősen pozitív. Ennek az ellenkezője is igaz a negatív érzelmű szövegekre [45] . Ezzel a módszerrel részletesebben Goldberg [46] és Ponomareva [47] munkái foglalkoznak .
A szöveges érzéselemző rendszer pontosságát és minőségét az értékeli, hogy az mennyire egyezik a vizsgált szöveg érzelmi értékelésével kapcsolatos véleményével. Ehhez olyan mérőszámok használhatók , mint a pontosság és a visszahívás [48] . Képlet a teljesség megtalálásához:
ahol a helyesen kivont vélemények helyesen definiált vélemények, az összes vélemény a (a rendszer által talált és nem talált) vélemények teljes száma [ 48] . A pontosságot a [48] képlettel számítjuk ki :
ahol a helyesen kivont vélemények helyesen definiált vélemények, a rendszer által talált összes vélemény a rendszer által talált vélemények teljes száma [48] . A pontosság tehát azt fejezi ki, hogy hány olyan tanulmányozott szöveget, mondatot vagy dokumentumot, amelyek értékelésénél a hangulatelemző rendszer véleménye egybeesett a szakértő véleményével. Ugyanakkor a tanulmány szerint a szakértők általában az esetek 79%-ában egyetértenek egy adott szöveg hangulatával [49] . Ezért egy program, amely 70%-os pontossággal érzékeli a szöveg hangszínét, majdnem olyan jól csinálja, mint az ember.
természetes nyelvi feldolgozás | |
---|---|
Általános meghatározások | |
Szövegelemzés |
|
Hivatkozás |
|
Gépi fordítás |
|
Azonosítás és adatgyűjtés | |
Tematikus modell | |
Peer review |
|
Természetes nyelvű felület |