Verkkokeskustelut ovat läsnä nykyaikaisessa elämässä, ja ne kattavat toimialoja videopeleistä televiestintään. Tämä on johtanut verkkokeskustelutietojen määrän eksponentilliseen kasvuun, mikä on auttanut kehittämään huippuluokan luonnollisen kielen käsittelyjärjestelmiä (NLP), kuten chatbotteja ja luonnollisen kielen generointimalleja (NLG). Ajan myötä erilaisia NLP-tekniikoita tekstin analysointiin ovat myös kehittyneet. Tämä edellyttää täysin hallittua palvelua, joka voidaan integroida sovelluksiin API-kutsujen avulla ilman laajaa koneoppimisen (ML) asiantuntemusta. AWS tarjoaa valmiiksi koulutettuja AWS AI -palveluita, kuten Amazonin käsitys, joka pystyy käsittelemään tehokkaasti NLP-käyttötapauksia, joihin kuuluu luokittelu, tekstin yhteenveto, kokonaisuuden tunnistus ja paljon muuta oivallusten keräämiseksi tekstistä.
Lisäksi verkkokeskustelut ovat johtaneet laajalle levinneeseen ei-perinteisen kielenkäytön ilmiöön. Perinteiset NLP-tekniikat toimivat usein huonosti tällä tekstidatalla johtuen jatkuvasti kehittyvistä ja aluekohtaisista sanastoista, joita esiintyy eri alustoilla, sekä sanojen merkittävistä leksikaalisista poikkeamista oikeasta englannista, joko vahingossa tai tarkoituksellisesti kilpailevana hyökkäyksenä. .
Tässä viestissä kuvaamme useita ML-lähestymistapoja online-keskustelujen tekstiluokitukseen AWS:ssä saatavilla olevien työkalujen ja palvelujen avulla.
Edellytykset
Ennen kuin sukeltaa syvälle tähän käyttötapaukseen, täytä seuraavat edellytykset:
- Määritä AWS-tili ja luo IAM-käyttäjä.
- Aseta AWS CLI ja AWS SDK: t.
- (Valinnainen) Määritä Cloud9 IDE -ympäristö.
aineisto
Tähän viestiin käytämme Jigsaw Tahdoton harha toksisuusluokitustietojoukossa, vertailukohta myrkyllisyyden luokittelun erityiselle ongelmalle verkkokeskusteluissa. Tietojoukko sisältää myrkyllisyysmerkintöjä sekä useita alaryhmämääritteitä, kuten säädytön, identiteettihyökkäys, loukkaus, uhkaus ja seksuaalinen. Tunnisteet annetaan murto-arvoina, jotka edustavat niiden ihmisten osuutta, jotka uskoivat tiettyyn tekstiosaan sovellettavan attribuutin. Nämä ovat harvoin yksimielisiä. Binääritunnisteiden (esimerkiksi myrkyllisten tai ei-toksisten) luomiseksi murto-arvoihin sovelletaan kynnysarvoa 0.5, ja kommentteja, joiden arvot ovat suurempia kuin kynnysarvo, käsitellään kyseisen etiketin positiivisena luokkana.
Alisanan upotus ja RNN:t
Ensimmäisessä mallinnustavassamme käytämme alisanojen upotuksen ja toistuvien hermoverkkojen (RNN) yhdistelmää tekstin luokittelumallien kouluttamiseen. Alisanan upotukset esitteli Bojanowski et ai. vuonna 2017 parannuksena aikaisempiin sanatason upotusmenetelmiin. Perinteiset Word2Vec skip-gram -mallit on koulutettu oppimaan kohdesanan staattinen vektoriesitys, joka ennustaa optimaalisesti kyseisen sanan kontekstin. Alasanamallit sitä vastoin esittävät jokaisen kohdesanan puskina n-grammia, jotka muodostavat sanan, jossa n-grammi koostuu n peräkkäisen merkin joukosta. Tämä menetelmä mahdollistaa sen, että upotusmalli edustaa paremmin korpukseen liittyvien sanojen taustalla olevaa morfologiaa sekä uusien, sanaston ulkopuolisten (OOV) sanojen upotusten laskemista. Tämä on erityisen tärkeää verkkokeskusteluissa, ongelmatilanteessa, jossa käyttäjät kirjoittavat usein sanoja väärin (joskus tarkoituksella välttääkseen havaitsemisen) ja käyttävät myös ainutlaatuista, jatkuvasti kehittyvää sanastoa, jota yleinen koulutuskorpus ei ehkä pysty taltioimaan.
Amazon Sage Maker helpottaa valvomattoman alisanojen upotusmallin opettamista ja optimointia omaan verkkotunnuskohtaiseen tekstitietoaineistoosi sisäänrakennetun BlazingText-algoritmi. Voimme myös ladata olemassa olevia yleiskäyttöisiä malleja, jotka on koulutettu suurille verkkotekstitietojoukoille, kuten seuraava Englanninkieliset mallit saatavana suoraan fastTextistä. Lataa valmiiksi koulutettu fastText-malli suorittamalla SageMaker-muistikirjan esiintymästäsi seuraava:
Oletpa sitten harjoitellut omia upotuksiasi BlazingTextillä tai ladannut valmiiksi koulutetun mallin, tuloksena on zip-muotoinen mallibinaari, jota voit käyttää gensim-kirjaston kanssa upottaaksesi tietyn kohdesanan vektoriksi sen muodostavien alisanojen perusteella:
Kun olemme esikäsitelleet tietyn tekstisegmentin, voimme käyttää tätä lähestymistapaa vektoriesityksen luomiseen jokaiselle osasanalle (välilyönnillä erotettuna). Käytämme sitten SageMakeria ja syväoppimiskehystä, kuten PyTorchia, räätälöidyn RNN:n kouluttamiseen binääri- tai monimerkkiluokitustavoitteella ennustaaksemme, onko teksti myrkyllistä vai ei, ja myrkyllisyyden tiettyä alatyyppiä merkittyjen koulutusesimerkkien perusteella.
Esikäsitellyn tekstisi lataaminen osoitteeseen Amazonin yksinkertainen tallennuspalvelu (Amazon S3), käytä seuraavaa koodia:
Aloita skaalautuvan, usean grafiikkasuorittimen mallin koulutus SageMakerilla antamalla seuraava koodi:
Sisällä , määrittelemme PyTorch-tietojoukon, jota käyttää train.py
tekstidatan valmistelemiseksi mallin koulutusta ja arviointia varten:
Huomaa, että tämä koodi ennakoi, että vectors.zip
tiedosto, joka sisältää fastText- tai BlazingText-upotuksesi, tallennetaan .
Lisäksi voit helposti ottaa käyttöön valmiiksi koulutettuja fastText-malleja sellaisenaan eläviin SageMaker-päätepisteisiin laskeaksesi upotusvektorit lennossa käytettäväksi asiaankuuluvissa sanatason tehtävissä. Katso seuraava GitHub esimerkki lisätietoja.
Transformers halaavilla kasvoilla
Toisessa mallinnustavassamme siirrymme paperissa esitellyn Transformersin käyttöön Huomio on kaikki mitä tarvitset. Muuntajat ovat syväoppimismalleja, jotka on suunniteltu tietoisesti välttämään RNN:iden sudenkuopat luottamalla itsehuomiomekanismiin, joka vetää globaaleja riippuvuuksia syötteen ja lähdön välille. Transformer-malliarkkitehtuuri mahdollistaa huomattavasti paremman rinnakkaissuorituksen ja voi saavuttaa korkean suorituskyvyn suhteellisen lyhyessä harjoitusajassa.
Rakennettu lehdessä esitellyn Transformersin BERT:n menestykselle BERT: Syväsuuntaisten muuntajien esikoulutus kielen ymmärtämistä varten, lisätty kaksisuuntainen esikoulutus kielen esittämiseen. Cloze-tehtävän innoittamana BERT on valmiiksi koulutettu maskatun kielen mallintamiseen (MLM), jossa malli oppii palauttamaan alkuperäiset sanat satunnaisesti maskatuille tokeneille. BERT-malli on myös esiopetettu seuraavan lauseen ennustustehtävään (NSP) ennustamaan, ovatko kaksi lausetta oikeassa lukujärjestyksessä. Vuonna 2018 tulonsa jälkeen BERT ja sen muunnelmat ovat olleet laajasti käytössä tekstin luokittelutehtävissä.
Ratkaisumme käyttää BERT:n varianttia, joka tunnetaan nimellä RoBERTa, joka esiteltiin paperissa RoBERTa: Voimakkaasti optimoitu BERT-esikäsittelymenetelmä. RoBERTa parantaa edelleen BERT-suorituskykyä useissa luonnollisen kielen tehtävissä optimoidun mallikoulutuksen avulla, mukaan lukien koulutusmallit pidempään 10 kertaa suuremmassa korpusssa, käyttämällä optimoituja hyperparametreja, dynaamista satunnaispeittoa, poistamalla NSP-tehtävän ja paljon muuta.
RoBERTa-pohjaisissa malleissamme käytetään Halaa kasvomuuntajia kirjasto, joka on suosittu avoimen lähdekoodin Python-kehys, joka tarjoaa laadukkaita toteutuksia kaikenlaisille huippuluokan Transformer-malleille erilaisiin NLP-tehtäviin. Hugging Face on tehnyt yhteistyötä AWS:n kanssa jotta voit helposti kouluttaa ja ottaa käyttöön Transformer-malleja SageMakerissa. Tämä toiminto on saatavilla kautta Hugging Face AWS Deep Learning Container -kuvat, jotka sisältävät Transformers-, Tokenizers- ja Datasets-kirjastot sekä optimoidun integroinnin SageMakerin kanssa mallien harjoittelua ja päätelmiä varten.
Toteutuksessamme perimme RoBERTa-arkkitehtuurin rungon Hugging Face Transformers -kehyksestä ja käytämme SageMakeria oman tekstin luokittelumallimme kouluttamiseen ja käyttöönottamiseksi, jota kutsumme RoBERToxiksi. RoBERTox käyttää tavuparikoodausta (BPE), joka esiteltiin vuonna Harvinaisten sanojen hermokonekäännös alisanayksiköillä, muuttaaksesi syötetyn tekstin alisanojen esityksiksi. Voimme sitten kouluttaa mallejamme ja tunnisteitamme Jigsaw-datan tai minkä tahansa suuren toimialuekohtaisen korpuksen (kuten tietyn pelin chat-lokien) perusteella ja käyttää niitä mukautetussa tekstin luokittelussa. Määrittelemme mukautetun luokitusmallin luokkamme seuraavassa koodissa:
Ennen harjoittelua valmistelemme tekstitietomme ja tarramme käyttämällä Hugging Facen tietojoukkokirjastoa ja lataamme tuloksen Amazon S3:een:
Aloitamme mallin koulutuksen samalla tavalla kuin RNN:ssä:
Lopuksi seuraava Python-koodinpätkä havainnollistaa prosessia, jolla RoBERTox palvellaan reaaliaikaisen SageMaker-päätepisteen kautta JSON-pyynnön tekstin reaaliaikaista luokittelua varten:
Mallin suorituskyvyn arviointi: Jigsaw ei-toivottu bias-tietojoukko
Seuraava taulukko sisältää suorituskykymittareita malleille, jotka on koulutettu ja arvioitu Jigsaw Unintended Bias in Toxicity Detection Kaggle -kilpailun tietojen perusteella. Koulutimme malleja kolmeen erilaiseen, mutta toisiinsa liittyvään tehtävään:
- Binääritapaus – Malli koulutettiin koko harjoitustietojoukon perusteella ennustamaan
toxicity
vain etiketti - Hienorakeinen kotelo – Harjoitustietojen osajoukko, jolle
toxicity>=0.5
käytettiin ennustamaan muita myrkyllisyyden alatyyppimerkintöjä (obscene
,threat
,insult
,identity_attack
,sexual_explicit
) - Multitask-tapaus – Täysi harjoitustietojoukkoa käytettiin kaikkien kuuden etiketin ennustamiseen samanaikaisesti
Koulutimme RNN- ja RoBERTa-malleja kutakin näistä kolmesta tehtävästä käyttämällä Jigsaw-sahan toimittamia murto-osia, jotka vastaavat niiden kirjoittajien osuutta, jotka pitivät tunnistetta sopivana tekstiin, sekä binääritunnisteita yhdistettynä luokkapainoihin verkossa. häviötoiminto. Binäärisessä merkintäjärjestelmässä suhteet kynnystettiin arvoon 0.5 jokaiselle saatavilla olevalle tunnisteelle (1, jos etiketti> = 0.5, muutoin 0), ja mallin menetysfunktiot painotettiin kunkin harjoitustietojoukon binääritunnisteen suhteellisten osuuksien perusteella. Kaikissa tapauksissa havaitsimme, että murto-osien tarrojen käyttäminen johti suoraan parhaaseen suorituskykyyn, mikä osoittaa lisäarvon, joka liittyy merkintöjen tekijöiden väliseen yksimielisyyteen.
Näytämme kaksi mallimittaria: keskimääräinen tarkkuus (AP), joka tarjoaa yhteenvedon tarkkuus-palautuskäyrästä laskemalla kullakin luokituskynnyksellä saavutettujen tarkkuusarvojen painotetun keskiarvon ja vastaanottimen toimintakäyrän alla olevan alueen (AUC). , joka kokoaa mallin suorituskyvyn luokituskynnysten yli suhteessa todelliseen positiiviseen ja väärään positiiviseen määrään. Huomaa, että testijoukon tietyn tekstiinstanssin todellinen luokka vastaa sitä, onko todellinen osuus suurempi tai yhtä suuri kuin 0.5 (1, jos otsikko>=0.5, 0 muussa tapauksessa).
. | Alisanan upotus + RNN | Roberta | ||
. | Murtolukutarrat | Binääritunnisteet + luokkapainotus | Murtolukutarrat | Binääritunnisteet + luokkapainotus |
Binaarinen | AP=0.746, AUC = 0.966 | AP = 0.730, AUC = 0.963 | AP = 0.758, AUC = 0.966 | AP = 0.747, AUC = 0.963 |
Hienojakoinen | AP = 0.906, AUC = 0.909 | AP = 0.850, AUC = 0.851 | AP = 0.913, AUC = 0.913 | AP = 0.911, AUC = 0.912 |
Monitoimisakset | AP=0.721, AUC = 0.972 | AP = 0.535, AUC = 0.907 | AP = 0.740, AUC = 0.972 | AP = 0.711, AUC = 0.961 |
Yhteenveto
Tässä viestissä esitimme kaksi tekstin luokittelutapaa AWS ML -palveluita käyttäville online-keskusteluille. Voit yleistää näitä ratkaisuja online-viestintäalustoilla, ja pelialat, kuten pelit, hyötyvät erityisen todennäköisesti parannetusta kyvystä havaita haitallista sisältöä. Tulevissa viesteissä aiomme keskustella edelleen päästä päähän -arkkitehtuurista, joka mahdollistaa mallien saumattoman käyttöönoton AWS-tililläsi.
Jos haluat apua ML: n käytön nopeuttamisessa tuotteissasi ja prosesseissasi, ota yhteyttä Amazon ML Solutions Lab.
Tietoja Tekijät
Ryan Brand on tietojenkäsittelijä Amazon Machine Learning Solutions Lab -laboratoriossa. Hänellä on erityistä kokemusta koneoppimisen soveltamisesta terveydenhuollon ja biotieteiden ongelmiin, ja vapaa-ajalla hän nauttii historian ja tieteiskirjallisuuden lukemisesta.
Sourav Bhabesh on datatutkija Amazon ML Solutions Labissa. Hän kehittää AI/ML-ratkaisuja AWS-asiakkaille eri toimialoilla. Hänen erikoisalansa on Natural Language Processing (NLP) ja hän on intohimoinen syväoppimiseen. Työn ulkopuolella hän lukee kirjoja ja matkustaa mielellään.
Liutong Zhou on soveltuva tutkija Amazon ML Solutions Labissa. Hän rakentaa räätälöityjä AI/ML-ratkaisuja AWS-asiakkaille eri toimialoilla. Hän on erikoistunut luonnollisen kielen käsittelyyn (NLP) ja on intohimoinen multimodaaliseen syväoppimiseen. Hän on lyyrinen tenori ja nauttii oopperalaulusta työn ulkopuolella.
Sia Gholami on vanhempi tietotutkija Amazon ML Solutions Labissa, jossa hän rakentaa AI/ML-ratkaisuja asiakkaille eri toimialoilla. Hän on intohimoinen luonnollisen kielen käsittelyyn (NLP) ja syväoppimiseen. Työn ulkopuolella Sia viihtyy luonnossa ja pelaa tennistä.
Daniel Horowitz on Applied AI Science Manager. Hän johtaa tutkijaryhmää Amazon ML Solutions Labissa, joka työskentelee ratkaistakseen asiakkaiden ongelmia ja edistääkseen pilvipalveluiden käyttöönottoa ML:n avulla.
- Coinsmart. Euroopan paras Bitcoin- ja kryptopörssi.
- Platoblockchain. Web3 Metaverse Intelligence. Tietoa laajennettu. VAPAA PÄÄSY.
- CryptoHawk. Altcoinin tutka. Ilmainen kokeilu.
- Lähde: https://aws.amazon.com/blogs/machine-learning/text-classification-for-online-conversations-with-machine-learning-on-aws/
- '
- "
- 10
- 100
- 7
- a
- kyky
- Meistä
- kiihtyvä
- Tili
- Saavuttaa
- saavutettu
- poikki
- lisä-
- Hyväksyminen
- sopimus
- AI
- Tekoälyn palvelut
- Kaikki
- mahdollistaa
- Amazon
- määrä
- analyysi
- api
- sovellukset
- sovellettu
- käyttää
- Hakeminen
- lähestymistapa
- lähestymistavat
- sopiva
- arkkitehtuuri
- ALUE
- attribuutteja
- saatavissa
- keskimäärin
- AWS
- laukku
- benchmark
- hyödyttää
- PARAS
- Paremmin
- välillä
- suurempi
- Kirjat
- rakentaa
- sisäänrakennettu
- soittaa
- tapaus
- tapauksissa
- merkkejä
- luokka
- luokittelu
- pilvi
- koodi
- yhdistelmä
- yhdistetty
- kommentit
- Viestintä
- kilpailu
- täydellinen
- kokoonpanossa
- laskeminen
- Laskea
- tietojenkäsittely
- peräkkäinen
- alituisesti
- ottaa yhteyttä
- Kontti
- sisältää
- pitoisuus
- Keskustelu
- keskustelut
- luoda
- käyrä
- asiakassuhde
- asiakas
- Asiakkaat
- tiedot
- tietojen tutkija
- syvä
- sijoittaa
- käyttöönotto
- kuvata
- suunniteltu
- yksityiskohdat
- Detection
- Määrittää
- Kehitys
- eri
- Ulottuvuus
- suoraan
- pohtia
- näyttö
- download
- ajaa
- aikana
- dynaaminen
- kukin
- helposti
- tehokkaasti
- mahdollistaa
- päittäin
- päätepiste
- Englanti
- enter
- kokonaisuus
- arviointi
- kehittyvä
- esimerkki
- Esimerkit
- olemassa
- experience
- asiantuntemus
- laaja
- Kasvot
- Muoti
- Kaunokirjallisuus
- Etunimi
- jälkeen
- muoto
- Eteenpäin
- löytyi
- murto-
- Puitteet
- Ilmainen
- alkaen
- koko
- toiminto
- toiminnallisuus
- tehtävät
- edelleen
- tulevaisuutta
- peli
- Pelit
- pelaamista
- general
- yleinen tarkoitus
- tuottaa
- sukupolvi
- Global
- suurempi
- Kasvu
- kahva
- pää
- terveydenhuollon
- auttaa
- auttanut
- Korkea
- korkealaatuisia
- historia
- HTTPS
- ihmisen
- Identiteetti
- täytäntöönpano
- tärkeä
- parani
- parannus
- sisältää
- Mukaan lukien
- teollisuuden
- tiedot
- luontainen
- panos
- oivalluksia
- innoittamana
- esimerkki
- Loukkaus
- integroitu
- integraatio
- IT
- palapeli
- Job
- avaimet
- tunnettu
- laboratorio
- Merkki
- merkinnät
- tarrat
- Kieli
- suuri
- suurempi
- kerros
- Liidit
- OPPIA
- oppiminen
- Led
- Kirjasto
- Life Sciences
- Todennäköisesti
- elää
- kuormitus
- kone
- koneoppiminen
- tehdä
- TEE
- onnistui
- johtaja
- naamio
- Maskit
- ottelu
- Matriisi
- mekanismi
- Muisti
- menetelmät
- Metrics
- ehkä
- ML
- malli
- mallit
- lisää
- moninkertainen
- Luonnollinen
- luonto
- verkko
- verkot
- seuraava
- muistikirja
- numero
- Tarjoukset
- verkossa
- toiminta
- Optimoida
- optimoitu
- tilata
- alkuperäinen
- Muut
- muuten
- oma
- Paperi
- erityisesti
- kumppanuuteen
- intohimoinen
- suorituskyky
- kappale
- Platforms
- pelaa
- Ole hyvä
- Suosittu
- positiivinen
- Viestejä
- ennustaa
- ennustus
- Valmistella
- edellinen
- Ongelma
- ongelmia
- prosessi
- Prosessit
- käsittely
- Tuotteemme
- Projektio
- mikäli
- tarjoaa
- Lukeminen
- reaaliaikainen
- toipua
- merkityksellinen
- poistamalla
- edustaa
- edustus
- edustavat
- pyyntö
- palata
- Tuotto
- Rooli
- ajaa
- skaalautuva
- järjestelmä
- tiede
- tieteet
- Tiedemies
- tutkijat
- saumaton
- segmentti
- palvelu
- Palvelut
- palvelevat
- setti
- useat
- Lyhyt
- merkittävä
- samankaltainen
- Yksinkertainen
- koska
- SIX
- Koko
- ratkaisu
- Ratkaisumme
- SOLVE
- Tila
- tilat
- erikoistunut
- Erikoisuus
- erityinen
- menot
- huippu-
- Valtiot
- Levytila
- menestys
- järjestelmät
- Kohde
- tehtävät
- joukkue-
- tekniikat
- tietoliikenne
- testi
- -
- kolmella
- kynnys
- Kautta
- aika
- kertaa
- tokens
- työkalut
- taskulamppu
- perinteinen
- Juna
- koulutus
- siirtyminen
- Kääntäminen
- Matkustaminen
- varten
- unique
- käyttää
- Käyttäjät
- validointi
- arvo
- lajike
- eri
- Video
- Videopelit
- onko
- KUKA
- sisällä
- ilman
- sanoja
- Referenssit
- työskentely
- Sinun