Zelfstudie over natuurlijke taalverwerking: wat is NLP? Voorbeelden
Wat is natuurlijke taalverwerking?
Natuurlijke taalverwerking (NLP) is een tak van AI die computers helpt menselijke talen zoals Engels of Hindi te begrijpen, interpreteren en manipuleren om de betekenis ervan te analyseren en af te leiden. NLP helpt ontwikkelaars kennis te organiseren en structureren om taken uit te voeren zoals vertalen, samenvatten, herkenning van benoemde entiteiten, relatie-extractie, spraakherkenning, onderwerpsegmentatie, etc.
Geschiedenis van NLP
Hier zijn belangrijke gebeurtenissen in de geschiedenis van natuurlijke taalverwerking:
1950- NLP begon toen Alan Turing een artikel publiceerde met de titel ‘Machine en intelligentie’.
1950- Pogingen om de vertaling tussen Russisch en Engels te automatiseren
1960- Het werk van Chomsky en anderen over formele taaltheorie en generatieve syntaxis
1990- Probabilistische en datagestuurde modellen waren vrij standaard geworden
2000- Er komt een grote hoeveelheid gesproken en tekstuele gegevens beschikbaar
Vervolgens leren we in deze NLP-tutorial hoe NLP werkt.
Hoe werkt NLP?
Voordat we leren hoe NLP werkt, moeten we eerst begrijpen hoe mensen taal gebruiken:
Elke dag zeggen we duizend woorden die andere mensen interpreteren om talloze dingen te doen. Wij beschouwen het als een eenvoudige communicatie, maar we weten allemaal dat woorden veel dieper gaan dan dat. Er is altijd een context die we ontlenen aan wat we zeggen en hoe we het zeggen., NLP in Kunstmatige intelligentie richt zich nooit op stemmodulatie; het put wel uit contextuele patronen.
Voorbeeld:
Man is to woman as king is to __________? Meaning (king) – meaning (man) + meaning ( woman)=? The answer is- queen
Hier kunnen we gemakkelijk met elkaar in verband staan, omdat de man het mannelijke geslacht is en de vrouw het vrouwelijke geslacht. Op dezelfde manier is de koning het mannelijke geslacht en het vrouwelijke geslacht de koningin.
Voorbeeld:
Is King to kings as the queen is to_______? The answer is--- queens
Hier kunnen we twee woorden koningen en koningen zien, waarbij het ene enkelvoud is en het andere meervoud. Daarom, wanneer de wereldkoningin komt, heeft deze automatisch een relatie met koninginnen in het enkelvoud en meervoud.
De grootste vraag hier is: hoe weten we wat woorden betekenen? Laten we eens zeggen: wie zal het koningin noemen?
Het antwoord is dat we dit door ervaring leren. De belangrijkste vraag hier is echter: hoe weten computers hetzelfde?
We moeten genoeg data leveren zodat machines door ervaring kunnen leren. We kunnen details voeden zoals
- Hare Majesteit de Koningin.
- Toespraak van de Koningin tijdens het staatsbezoek
- De kroon van koningin Elizabeth
- De moeder van de koningin
- De koningin is gul.
Met bovenstaande voorbeelden begrijpt de machine de entiteit Queen.
De machine maakt woordvectoren zoals hieronder. Een woordvector wordt opgebouwd met behulp van omringende woorden.
De machine creëert deze vectoren
- Omdat het leert van meerdere datasets
- Gebruik machinaal leren (bijvoorbeeld Deep Learning-algoritmen)
- Een woordvector wordt opgebouwd met behulp van omringende woorden.
Hier is de formule:
Betekenis (koning) – betekenis (man) + betekenis (vrouw)=?
Dit komt neer op het uitvoeren van eenvoudige algebraïsche bewerkingen op woordvectoren:
Vector (koning) – vector (man) + vector (vrouw)= vector(?)
Waarop de machine koningin antwoordt.
In deze tutorial over natuurlijke taalverwerking leren we vervolgens over componenten van NLP.
Onderdelen van NLP
De vijf belangrijkste componenten van natuurlijke taalverwerking in AI zijn:
- Morfologische en lexicale analyse
- Syntactische analyse
- Semantische analyse
- Discoursintegratie
- Pragmatische analyse
Morfologische en lexicale analyse
Lexicale analyse is een vocabulaire dat de woorden en uitdrukkingen ervan omvat. Het toont het analyseren, identificeren en beschrijven van de structuur van woorden. Het omvat het verdelen van een tekst in paragrafen, woorden en zinnen
Individuele woorden worden geanalyseerd in hun componenten, en niet-woordtokens zoals leestekens worden van de woorden gescheiden.
Semantische analyse
Semantische analyse is een structuur gecreëerd door de syntactische analysator die betekenissen toekent. Deze component zet lineaire woordreeksen om in structuren. Het laat zien hoe de woorden met elkaar geassocieerd zijn.
Semantiek richt zich alleen op de letterlijke betekenis van woorden, zinsdelen en zinnen. Dit abstraheert alleen de woordenboekbetekenis of de werkelijke betekenis van de gegeven context. De structuren die door de syntactische analysator worden toegewezen, hebben altijd een toegewezen betekenis
Bijv. “kleurloos groen idee.” Dit zou door de Symantec-analyse als kleurloos worden verworpen. Hier; groen heeft geen zin.
Pragmatische analyse
Pragmatische analyse behandelt de algemene communicatieve en sociale inhoud en het effect ervan op de interpretatie. Het betekent het abstraheren of afleiden van het betekenisvolle taalgebruik in situaties. Bij deze analyse ligt de nadruk altijd op wat er gezegd is, maar wordt er opnieuw geïnterpreteerd op wat er bedoeld wordt.
Pragmatische analyse helpt gebruikers het beoogde effect te ontdekken door een reeks regels toe te passen die kenmerkend zijn voor coöperatieve dialogen.
Bijvoorbeeld: "het raam sluiten?" moet worden geïnterpreteerd als een verzoek in plaats van een bevel.
Syntaxisanalyse
De woorden worden algemeen aanvaard als de kleinste syntaxiseenheden. De syntaxis verwijst naar de principes en regels die de zinsstructuur van individuele talen bepalen.
Syntaxis richt zich op de juiste volgorde van woorden, wat de betekenis ervan kan beïnvloeden. Dit omvat analyse van de woorden in een zin door de grammaticale structuur van de zin te volgen. De woorden worden omgezet in de structuur om te laten zien hoe de woorden met elkaar in verband staan.
Discoursintegratie
Het betekent een gevoel van de context. De betekenis van een enkele zin die afhankelijk is van die zinnen. Het houdt ook rekening met de betekenis van de volgende zin.
Het woord ‘dat’ in de zin ‘Hij wilde dat’ hangt bijvoorbeeld af van de eerdere discourscontext.
Vervolgens leren we in deze NLP-tutorial over NLP en schrijfsystemen.
NLP en schrijfsystemen
Het soort schrijfsysteem dat voor een taal wordt gebruikt, is een van de beslissende factoren bij het bepalen van de beste aanpak voor tekstvoorverwerking. Schrijfsystemen kunnen dat wel zijn
- Logografisch: een groot aantal individuele symbolen vertegenwoordigen woorden. Voorbeeld Japans, Mandarijn
- Syllabisch: Individuele symbolen vertegenwoordigen lettergrepen
- Alfabetisch: Individuele symbolen vertegenwoordigen geluid
De meerderheid van de schrijfsystemen gebruikt het syllabische of alfabetische systeem. Zelfs het Engels, met zijn relatief eenvoudige schrijfsysteem gebaseerd op het Romeinse alfabet, maakt gebruik van logografische symbolen, waaronder Arabische cijfers, valutasymbolen (S, £) en andere speciale symbolen.
Deze houding brengt de volgende uitdagingen met zich mee
- Betekenis(semantiek) uit een tekst halen is een uitdaging
- NLP in AI is afhankelijk van de kwaliteit van het corpus. Als het domein uitgestrekt is, is het moeilijk om de context te begrijpen.
- Er is een afhankelijkheid van de tekenset en taal
Hoe NLP te implementeren
Hieronder worden populaire methoden gegeven die worden gebruikt voor het natuurlijke leerproces:
Machine leren: De leer-nlp-procedures die worden gebruikt tijdens machinaal leren. Het richt zich automatisch op de meest voorkomende gevallen. Dus als we regels met de hand schrijven, is het vaak helemaal niet correct als we ons zorgen maken over menselijke fouten.
Statistische gevolgtrekking: NLP kan gebruik maken van statistische inferentie-algoritmen. Het helpt u om robuuste modellen te produceren, bijvoorbeeld met woorden of structuren die iedereen kent.
NLP-voorbeelden
Tegenwoordig is de technologie voor natuurlijk procesleren een veelgebruikte technologie.
Hier volgen veelgebruikte technieken voor natuurlijke taalverwerking:
Ophalen van informatie en zoeken op internet
Google, Yahoo, Bing en andere zoekmachines baseren hun machinevertaaltechnologie op NLP deep learning-modellen. Het stelt algoritmes in staat om tekst op een webpagina te lezen, de betekenis ervan te interpreteren en deze naar een andere taal te vertalen.
Grammatica correctie:
NLP-techniek wordt veel gebruikt door tekstverwerkersoftware zoals MS-Word voor spellingcorrectie en grammaticacontrole.
Vraag beantwoorden
Typ trefwoorden in om vragen in natuurlijke taal te stellen.
Tekstsamenvatting
Het proces van het samenvatten van belangrijke informatie uit een bron om een verkorte versie te produceren
Machine vertaling
Gebruik van computertoepassingen om tekst of spraak van de ene natuurlijke taal naar de andere te vertalen.
Sentiment analyse
NLP helpt bedrijven een groot aantal recensies over een product te analyseren. Het stelt hun klanten ook in staat een recensie over het specifieke product te geven.
Toekomst van NLP
- Menselijke leesbare natuurlijke taalverwerking is het grootste AI-probleem. Het is allemaal ongeveer hetzelfde als het oplossen van het centrale kunstmatige intelligentieprobleem en computers net zo intelligent maken als mensen.
- Toekomstige computers of machines zullen met behulp van NLP kunnen leren van de informatie online en die in de echte wereld kunnen toepassen. Op dit gebied moet echter nog veel werk worden verzet.
- Toolkit voor natuurlijke taal of nltk wordt effectiever
- Gecombineerd met het genereren van natuurlijke taal zullen computers beter in staat zijn nuttige en vindingrijke informatie of gegevens te ontvangen en te verstrekken.
Natuurlijke taal versus computertaal
Hieronder staan de belangrijkste verschillen tussen natuurlijke taal en computertaal:
Parameter | Natuurlijke taal | Computer taal |
---|---|---|
Dubbelzinnig | Ze zijn dubbelzinnig van aard. | Ze zijn ontworpen om ondubbelzinnig te zijn. |
Redundantie | Natuurlijke talen maken gebruik van veel redundantie. | Formele talen zijn minder overbodig. |
letterlijkheid | Natuurlijke talen zijn gemaakt van idioom en metafoor | Formele talen betekenen precies wat ze willen zeggen |
Voordelen van NLP
- Gebruikers kunnen vragen stellen over elk onderwerp en krijgen binnen enkele seconden direct antwoord.
- NLP-systeem geeft antwoorden op de vragen in natuurlijke taal
- NLP-systeem biedt exacte antwoorden op de vragen, geen onnodige of ongewenste informatie
- De nauwkeurigheid van de antwoorden neemt toe naarmate de hoeveelheid relevante informatie in de vraag toeneemt.
- Het NLP-proces helpt computers met mensen te communiceren in hun taal en schaalt andere taalgerelateerde taken op
- Hiermee kunt u meer taalgebaseerde gegevens verwerken dan een mens, zonder dat u er moeite mee hebt en op een objectieve en consistente manier.
- Het structureren van een zeer ongestructureerde gegevensbron
Nadelen van NLP
- Complexe querytaal: het systeem kan mogelijk niet het juiste antwoord geven op een vraag die slecht geformuleerd of dubbelzinnig is.
- Het systeem is uitsluitend voor één enkele specifieke taak gebouwd; het kan zich vanwege de beperkte functies niet aanpassen aan nieuwe domeinen en problemen.
- Het NLP-systeem heeft geen gebruikersinterface zonder functies waarmee gebruikers verder met het systeem kunnen communiceren
Samenvatting
- Natural Language Processing is een tak van AI die computers helpt menselijke taal te begrijpen, interpreteren en manipuleren
- NLP begon toen Alan Turing een artikel publiceerde met de titel ‘Machine en intelligentie’.
- NLP richt zich nooit op stemmodulatie; het put wel uit contextuele patronen
- Vijf essentiële componenten van natuurlijke taalverwerking in kunstmatige intelligentie zijn 1) Morfologische en lexicale analyse 2) Syntactische analyse 3) Semantische analyse 4) Discoursintegratie 5) Pragmatische analyse
- Drie typen van het natuurlijke processchrijfsysteem zijn 1) Logografisch 2) Syllabisch 3) Alfabetisch
- Machine learning en statistische gevolgtrekking zijn twee methoden voor de implementatie van Natural Process Learning
- Belangrijke toepassingen van NLP zijn onder meer het ophalen van informatie en zoeken op internet, het beantwoorden van vragen over grammaticacorrectie, het samenvatten van teksten, machinale vertaling, enz.
- Toekomstige computers of machines met behulp van NLP en data Science zullen in staat zijn om van de online informatie te leren en die in de echte wereld toe te passen, maar er moet op dit gebied nog veel werk worden verzet
- NLP is dubbelzinnig, terwijl open source computertaal is ontworpen om ondubbelzinnig te zijn
- Het grootste voordeel van het NLP in het kunstmatige intelligentiesysteem is dat het exacte antwoorden op de vragen biedt, geen onnodige of ongewenste informatie
- Het grootste nadeel van het NLP-systeem is dat het slechts voor een enkele specifieke taak is gebouwd, waardoor het zich vanwege de beperkte functies niet kan aanpassen aan nieuwe domeinen en problemen.