Förstå naturlig språkbehandling

Sep 11, 2025
Hur
Understand natural language processing

Webbplatser och appar kan ha olika rörliga delar, inklusive frontändkreativ, server-side bearbetning, API och datalagring. AI kan ansluta någon av dessa komponenter.

På framsidan kan du ansluta röstkommandon, Chatbot-gränssnitt eller reaktiva WebGL-kreativa element. På baksidan använder databaser intelligenta algoritmer för att maximera hastighet och analys. API kan ge ett lager av abstraktion från ett brett utbud av AI-funktioner, från förutsägelser till kollektiv utbildning.

Om du bara börjar som en utvecklare och behöver några tips, ta reda på det Hur man gör en app , eller vi kan hjälpa dig att välja vilken Website Builder , webbhotell service och molnlagring att använda.

  • Chatbots: Vad du behöver veta.

Naturligt språk

Naturlig språkbehandling (NLP) fokuserar på interaktionerna mellan maskiner och mänskliga språk. Det är målet med att NLP ska bearbeta och analysera stora mängder språkdata för att förbättra naturlig kommunikation mellan människor och maskiner. Detta fält av AI innehåller taligenkänning, förståelse och generering av naturligt språk. Vårt fokus kommer att vara på att förstå naturligt språk, processen att analysera och bestämma betydelsen eller avsikten med en text.

Det finns flera koncept som är gemensamma för NLP:

  • Detektera språk - Förstå vilket språk som används i texten är grundläggande för att veta vilka ordböcker, syntax och grammatikregler som ska användas i analys.
  • Entitetsutvinning - Identifiera nyckelord i fraser, hur relevant eller framträdande de är till den övergripande texten och bestämma vad enheterna är baserade på utbildning eller kunskapsbaser.
  • Sentimentanalys - Bedömning av den allmänna nivån på "känsla" i en text. Är det generellt positivt eller negativt? Också, känsla relaterat till varje enhet. Återspeglar uttalandet positiva känslor eller negativa om "Ämnet"?
  • Syntaktisk analys - Förstå textens struktur. Identifiera attribut som meningar, delar av tal (t ex substantiv, verb), röst, kön, humör och spänning.
  • Innehållsklassificering eller kategorisering - Att organisera innehållet i texten i gemensamma kategorier för att effektivisera dem. Till exempel, New York, London, Paris, München är alla "platser" eller "städer".

Det finns många tekniska tillvägagångssätt för att analysera och bearbeta data. Oavsett vilket NLP-verktyg du använder måste du ta itu med de vanliga stegen för analysering och analys. Typiskt är texten separerad i logiska bitar. Dessa bitar analyseras mot utbildade data- eller kunskapsbaser och tilldelade värden, som vanligtvis sträcker sig från 0,0 till 1,0 för att återspegla förtroendet för analysen.

Googles naturliga språk API

Vi använder det nya naturliga Legin API som utvecklats av Google för den här handledningen. Det finns många API tillgängliga men Googles har några fina fördelar, inklusive cloud computing, hastighet, en otroligt stor användarbas och maskininlärning. Googles sökmotorer och verktyg har använt AI i flera år. Så du utnyttjar all den erfarenheten och lärande genom att använda sina offentliga tjänster.

API: erna införlivar enkelt i något projekt. Detta sparar mycket tid mot handkodning av din egen NLP. Dess abstracted vilsam API gör att du kan integrera med nästan alla språk du önskar genom vanliga curl-samtal eller en av de många SDK som är tillgängliga. Det finns några knep att få upp, men vi kommer att arbeta genom det ett steg i taget.

Klicka på ikonen längst upp till höger på bilden för att förstora den.

01. Skapa nytt Google Cloud-projekt

Understand natural language processing: Google Cloud Project

Skapa en ny GCP

Gå till Google Cloud Platform Console och skapa ett nytt projekt eller välja en befintlig att arbeta med. Tjänsten är fri att använda tills du börjar göra en stor volym API-förfrågningar. Du kan behöva associera faktureringsinfo med kontot när du aktiverar API, men det är inte laddat med låg volym och du kan ta bort tjänsterna efter att du har testat om du vill.

02. Aktivera molnet nl

Understand natural language processing: Enable the Cloud NL

Bläddra i API-biblioteket och aktivera det naturliga språket API

Bläddra till API-bibliotek och välj NL API. När du är aktiverad bör du se en liten grön check och meddelandet "API aktiverat" bredvid det.

03. Skapa ett servicekonto

Du måste ställa in en servicekonto För denna tjänst. Eftersom vi ska ställa in användningen som en typisk tjänst, är det den bästa praxisen. Det fungerar också bäst med autentiseringsflöde.

04. Ladda ner privat nyckel

Understand natural language processing: Download private key

Få din privata nyckel för servicekontot

När du har ett projekt med API-aktiverat och ett servicekonto kan du ladda ner din privata nyckel som en JSON-fil. Notera platsen för filen, så du kan använda den i nästa steg.

Om du har några problem med de första stegen finns det en guide här Det hjälper, vilket slutar med nedladdningen av JSON-tangenten.

05. Ange miljövariabel

Därefter måste du ställa in Google_application_credentials Miljövariabel, så det kan nås av våra API-samtal. Detta pekar på din JSON-fil du bara laddat ner och sparar du måste skriva vägen varje gång. Öppna ett nytt terminalfönster och använd exportkommandot som så:

export GOOGLE_APPLICATION_CREDENTIALS="/Users/username/Downloads/[file name].json"

Ersätt [filnamn] Med din privata nyckelfil och använd sökvägen till din fil.

På Windows kan du göra samma sak via kommandoraden, så här:

$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\[FILE_NAME].json"

Obs! Om du stänger ditt terminala eller konsolfönster kan du behöva köra det igen för att ställa in variabeln.

06. Ringa ett samtal till API

Nu är du redo att gräva in med API och se NLP i aktion. Du använder Curl för att göra snabba tester av API. Du kan också använda den här metoden från din kod.

Curl-förfrågningar kan göras på de flesta språk, vilket innebär att du kan göra samtal direkt i kommandoraden eller tilldela resultatet till en variabel på det språk du vill ha. Titta här För några snabba tips om att använda curl.

Låt oss prova en testförfrågan, med en enkel mening. Vi kör det genom analyser slutpunkt.

I ditt terminal- eller kommandoradsgränssnitt anger du följande kommando:

 CURL -X Post \
     -H "Authorization: Bearer" $ (GCloud Auth Application-Standard Print-Access-Token) \
     -H "Innehållstyp: Ansökan / JSON; Charset = UTF-8" \
     --da "{
  'dokumentera':{
    'Typ': 'plain_text',
    'Innehåll': 'John McCarthy är en av de grundande fäderna av artificiell intelligens.'
  },
  'EncodingType': 'UTF8'
} "" https://language.googleapis.com/v1/documents:Analyzeentities"

Du bör se ett JSON-resultat efter att ha utfört. Du kan få uppmanad första gången du använder det här för att aktivera API eller tillåta åtkomst. Du kan svara "ja" eller "y" till den snabba och det ska returnera JSON efter det.

Det kommer att returnera en rad poster, som liknar dem som den första för posten "John McCarthy".

 {
      "Namn": "John McCarthy",
      "Typ": "Person",
      "metadata": {
        "Wikipedia_Url": "https://en.wikipedia.org/wiki/john_mccarthy_(computer_scientist)",
        "MID": "/ M / 01SVFJ"
      },
      "Salience": 0.40979216,
      "nämner": [
        {
          "Text": {
            "Innehåll": "John McCarthy",
            "Startoffset": 0
          },
          "Typ": "Rätt"
        }
      Anklagelse
    }, 

Notera: Du kan använda en URL istället för innehållstext i Content-parametern för Curl-uttalandet.

Du kan se i provtagningslistan, namn identifieras och typ , som AI bestämde är en PERSON . Det hittade också en Wikipedia match för namn och återvände det. Detta kan vara användbart, eftersom du kan använda den URL som innehållet för en andra begäran till API och få ännu fler enheter och information om den här. Du kan också se salience Värde vid 0,4, vilket indikerar en betydande relativ betydelse för företaget i samband med den text vi tillhandahållit. Du kan också se det är korrekt identifierat som RÄTT , som hänvisar till substantivtypen (ett ordentligt substantiv), liksom hur många händelser (nämnder) av enheten i texten.

API kommer att returnera värden för alla nyckeltal i den text du skickar in. Det här kan vara mycket användbart för att bearbeta vad en användare kan kommunicera med din app. Oavsett vad meningen innehåller, det finns en bra chans att det handlar om personen, John McCarthy, och vi kunde leta upp lite information för användaren baserat på det här ensamma. Vi kunde också svara på ett sätt som speglar vår förståelse detta uttalande avser en person.

Du kan fortsätta använda den här metoden för att testa de samtal vi använder. Du kan också ställa in lokala SDK på ett språk du föredrar och heltal i din app.

07. Installera klientbiblioteket

Tiden att göra en enkel webbaserad app för att visa hur man integrerar API i projekt.

För NLP-appar är det vanligt att använda python eller nod. För att visa mångsidigheten att använda API, använder vi PHP SDK. Om du vill tweak koden till ett annat språk finns det en bra resurs av SDK här .

Börja med att du har en projektmapp som är inställd på din lokala eller fjärrserver. Om du inte har det redan, få kompositören och installera till din projektmapp. Du kan ha kompositör redan installerad globalt och det är också bra.

Kör följande kompositörskommando för att installera leverantörsfilerna till ditt projekt:

 PHP -R "COPY ('https://getcomposer.org/installer', 'Composer-Setup.php');"
php -r "om (hash_file ( 'SHA384', 'kompositör-setup.php') === '93b54496392c06277467 0ac18b134c3b3a95e5a5e5 c8f1a9f115f203b75bf9a129d5 daa8ba6a13e2cc8a1da080 6388a8') {echo 'installatörs verifierade';} else {echo 'installatörs korrupt'; unlink (' kompositör-setup.php ');} echo php_eol; "
PHP Composer-Setup.php
PHP -R "Unlink (" Composer-Setup.php ");"
PHP Composer.phar kräver Google / Cloud-språk 

Kompositören gör en leverantörsmapp i din projektmapp och installerar alla beroenden för dig.

Om du fastnar med att ställa in det här och vill använda PHP, kan du kolla in den här resursen Installera kompositör .

08. Skapa en ny fil

Om du följer med PHP, skapa en ny PHP-fil i din projektmapp. Ställ upp det men du gillar men inkluderar en enkel HTML-formulär för att snabbt skicka in text via.

Här är ett exempel på PHP-fil med formuläret:

 & lt;! Doktype html & gt;
& lt; html & gt;
& lt; huvud & gt;
& LT; Titel & GT; NET - NLP Tutorial & LT; / Titel & GT;
& LT; / Head & GT;
& lt; kropp & gt;
& lt; form & gt;
& lt; Po. Input Type = 'Text' id = "Innehåll" Namn = "Innehåll" PlaceHolder = "Vad kan jag analysera?" / & gt; & lt; / p & gt;
& lt; Po. Input Type = 'Skicka' namn = 'Skicka' id = 'Submit' Value = 'Analys' & GT; & LT; / P & GT;
& LT; / Form & GT;
& lt; div class = "resultat" & gt;
& lt;? php
// PHP-kod går här //
Om (tomt ($ _ får ['content'])) {die (); }
$ innehåll = $ _GET ['Innehåll'];
? & gt;
& lt; / div & gt;
& LT; / Body & GT;
& lt; / html & gt; 

Koden innehåller en grundläggande HTML-fil med en blankett, tillsammans med en platshållare för din PHP-kod. Koden börjar med att helt enkelt kontrollera förekomsten av innehållsvariabeln (inlämnad från formuläret). Om det inte skickas ännu, utgår det bara och gör ingenting.

09. Gör miljön variabel

Liknande det steg vi gjorde tidigare när vi använder Command Line Curl-samtalet, måste vi ställa in Google_application_credentials variabel. Detta är viktigt för att få det att autentisera.

I PHP använder vi putenv kommandot för att ställa in en miljövariabel. Autentiseringen som skapats av SDK löper ut, så du måste inkludera det här i din kod för att ta tag i det och ställa in det varje gång.

Lägg till den här koden bredvid din PHP-kod:

 Putenv ('google_application_credentials = / användare / Richardmattka / nedladdningar / NLP-handledning 1-1027228343dc.json'); 

Byt ut sökvägen och filnamnet som du gjorde tidigare med din egen.

10. Initialisera biblioteket

Lägg sedan till biblioteket och initialisera LanguageClient klass i din kod. Lägg till den här koden bredvid din PHP-kodsektion:

 kräver __dir__. '/Vendor/autoload.php';
Använd Google \ Cloud \ Language \ LanguageClient;
$ projectid = 'nlp-tutorial-1-1543506531329';
$ Språk = Ny LanguageClient ([
    'projectid' = & gt; $ projectID
]); 

Börja med att kräva leverantören AutoLoad. Detta är liknande i python eller nod om du behöver dina beroenden. Importera LanguageClient Därefter, för att utnyttja klassen. Definiera din projektor . Om du inte är säker på vad det här är kan du se upp i din GCP-konsol, där du ursprungligen sätter upp projektet. Slutligen skapa en ny LanguageClient objekt med din projektor och tilldela det till $ språk variabel.

11. Analysera enheterna

Nu är du redo att börja använda NLP API i din kod. Du kan skicka in innehållet från formuläret till API och få resultatet. För nu kommer du bara att visa resultatet som JSON till skärmen. I praktiken kan du bedöma resultaten och använda dem som helst du önskar. Du kan svara på användaren baserat på resultaten, kolla upp mer information eller utför uppgifter.

För att återskapa, kommer enhetsanalysen att returnera information om "vad" eller "saker" som finns i texten.

 $ Resultat = $ Language- och GT; Analysiteter ($ -innehåll);
foreach ($ resultat- och gt; enheter () som $ e) {
echo "& lt; div klass = 'Resultat' & GT;
$ resultat = jon_encode ($ e, json_pretty_print);
echo $ resultat;
echo "& lt; / div & gt;";
} 

Denna kod skickar innehållet från den inlämnade formuläret till analyser slutpunkt och lagrar resultatet i $ resultat variabel. Då iterera över listan över enheter som återlats från $ resultat- och gt; enheter () . För att göra det lite mer läsbart kan du formatera den som JSON innan du matar ut till skärmen. Återigen är det bara ett exempel för att visa dig hur man använder den. Du kan bearbeta det och reagera på de resultat du behöver.

12. Analysera känslan

Understand natural language processing: Analyse the sentiment

Med en enkel form och server-sidokod för att behandla text med det naturliga språket API

I stället för att veta "vad" av innehållet kan det också vara värdefullt att känna känslan. Hur känner användaren? Hur känner de sig om enheterna i deras kommunikation?

Uppdatera koden för att använda AnalyszeentitySentiment slutpunkt. Detta kommer att bedöma både enheterna som tidigare, men returnerar också ett sentimentpoäng för var och en.

 $ Resultat = $ Language- och GT; Analysitetsitetsentiment ($ Innehåll);

foreach ($ resultat- och gt; enheter () som $ e) {
echo "& lt; div klass = 'Resultat' & GT;
$ resultat = jon_encode ($ e, json_pretty_print);
echo $ resultat;
echo "& lt; / div & gt;";
} 

Test med innehållet via formuläret, "Star Wars är den bästa filmen hela tiden.", Du kommer att se ett resultat som liknar detta:

 {"Namn": "Star Wars", "Typ": "Work_of_Art", "metadata": {"mid": "\ / m \ / 06mmr", "wikipedia_url": "https: \ / \ / en.wikipedia.org \ / wiki \ / star_wars "}," salience ": 0.63493526," nämner ":" Star Wars "," Startoffset ": 0}," Typ " : "Rätt", "sentiment": {"magnitud": 0,6, "poäng": 0.6}}], "Sentiment": {"magnitud": 0,6, "Score": 0.6}}
{"Namn": "Movie", "Typ": "Work_of_Art", "Metadata": [], "Salience": 0.36506474, "nämner": "Movie", " Startoffset ": 22}," Typ ":" Vanlig "," sentiment ": {" magnitud ": 0,9," Score ": 0.9}}]," Sentiment ": {" magnitud ": 0,9," Score ": 0,9 }} 

Detta visar ett positivt sentimentresultat av betydande värde. Inte bara vet du nu nyckelord som användaren kommunicerar men också hur de känner för det. Din app kan svara på lämpligt sätt baserat på dessa data. Du har en tydlig identifiering av "Star Wars" som det primära ämnet med hög salience. Du har en Wikipedia länk för att ta mer information om du vill köra den webbadressen tillbaka genom samma API-samtal. Du vet också att användaren känner sig positiv om det. Du kan även se uttalandet vikter det positiva känslan på kvaliteten på den som en film. Väldigt coolt.

Avskedar tankar

Försök experimentera med andra ändpunkter. Kolla in specifikt Analysesyntax och ClassifyText slutpunkter. Dessa ger dig ännu fler delar av taldata och klassificering av innehållsenheterna.

Denna artikel publicerades ursprungligen i utgåva 315 av netto , världens bästsäljande tidning för webbdesigners och utvecklare. Köp nummer 315 här eller prenumerera här .

Relaterade artiklar:

  • 7 stora tekniska trender som designers behöver veta just nu
  • Hur man utformar en Chatbot-upplevelse
  • 5 motintuitiva konverteringstryck

Hur - Mest populära artiklar

Hur man väljer ett webbnamn för ditt företag

Hur Sep 11, 2025

(Bildkredit: Yan från Pewels) Försöker du välja ett webbnamn? Det är en av de viktigaste sakerna du måste göra..


Använd diagram.js för att göra data till interaktiva diagram

Hur Sep 11, 2025

Sida 1 av 2: Använda diagram.js: steg 01-10 Använda diagram.js: steg 01..


Master Version Control för avlägsna lag

Hur Sep 11, 2025

Arbeta har blivit mycket vanligare i webbutveckling de senaste åren. Innan versionskontroll, skulle arbeta på distans på samma..


Hur man monterar ditt konstverk

Hur Sep 11, 2025

Ett väl utfört montering är mer än bara en annan Konstteknik att lägga till ditt verktygsbälte. Det kommer a..


Hur man lägger till textur till dina pasteller med primers

Hur Sep 11, 2025

Använder sig av pastellprimrar För att skapa ytor för din konst innebär att du kan bygga en mer texturerad yta..


Skapa interaktiva 3D-bilder med tre.js

Hur Sep 11, 2025

Denna WebGL-handledning visar hur man skapar en 3D-miljösimulering som visar vad som händer med världen som CO2-nivåer ändra..


Skapa fantastiska Tileable Textures i Blender

Hur Sep 11, 2025

Sida 1 av 2: Sida 1 Sida 1 Sida 2 ..


Prototype en flytande åtgärdsknapp i pixat

Hur Sep 11, 2025

Pixate låter dig snabbt prototypa interaktiva mobila mockups som kan förhandsgranskas på Android och IOS-enheter. I den här handledningen ska vi använda den för att bygga en flytande å..


Kategorier