Što je NLP u Pythonu?

Umjetna inteligencija snažno se razvila u posljednjem desetljeću, pa je to jedno od njegovih pod-polja - Obrada prirodnog jezika. Napredak u AI rezultat je ogromne računske sposobnosti suvremenih sustava i velikog broja nestrukturiranih podataka koji se generiraju iz mnoštva izvora. Obrada prirodnog jezika ili NLP je studija AI koja omogućava računalima da obrađuju sirove nestrukturirane tekstualne podatke i iz njih izvuku skrivene uvide.

definicija

Za razliku od ljudi, računala nisu dovoljno pametna za obradu nestrukturiranih podataka. Ljudska bića bi mogla dobivati ​​značenja iz takvih podataka dok računala to mogu učiniti samo sa strukturiranim podacima pohranjenim u bazama podataka. Da bi pronašli uzorke i dobivali značenje iz prirodnih podataka, računala koriste alate i tehnike uključene u NLP za obradu takvih podataka.

Kako NLP djeluje u Pythonu?

Čitati i razumjeti engleski jezik vrlo je složeno. Donja rečenica je jedan takav primjer gdje je kompjuteru zaista teško shvatiti stvarnu misao iza rečenice.

U Strojnom učenju, cjevovod se gradi za svaki problem gdje se svaki dio problema rješava zasebno pomoću ML-a. Konačni rezultat bila bi kombinacija nekoliko modela strojnog učenja okovanih zajedno. Obrada prirodnog jezika djeluje slično ovome gdje je engleska rečenica podijeljena na komade.

U ovom paragrafu nalazi se nekoliko činjenica. Sve bi bilo lako kada bi računala sama shvatila što je London, ali za to, računala trebaju biti obučena s osnovnim konceptima pismenog jezika.

1. Segmentacija rečenice - korpus je slomljen u nekoliko rečenica poput dolje.

To bi nam olakšalo život, jer je bolje obraditi jednu rečenicu nego odlomak u cjelini. Dijeljenje se može obaviti na interpunkcijama ili na nekoliko drugih složenih tehnika koje djeluju i na neočišćene podatke.

2. Tokenizacija riječi - Rečenica se dalje može podijeliti u znak riječi kao što je prikazano u nastavku.

Nakon tokenizacije, gornja se rečenica dijeli na -

3. Dijelovi govornog predviđanja - ovaj se postupak odnosi na generiranje dijelova govora za svaki token. To bi nam omogućilo razumijevanje značenja rečenice i teme o kojoj se u rečenici govori.

4. Lematizacija - Riječ u rečenici može se pojaviti u različitim oblicima. Lemmatizacija prati riječ natrag u korijen, tj. Lemu svake riječi.

5. Identifikacija zaustaviti riječi - u rečenici je puno riječi punila poput "the", "a". Ove riječi djeluju poput buke u tekstu čije značenje pokušavamo izvući. Stoga je potrebno filtrirati te zaustavne riječi da bi se napravio bolji model.

Na temelju aplikacije, riječi za zaustavljanje mogu se razlikovati. Međutim, postoji unaprijed definiran popis radova zaustavljanja na koje bi se mogli pozivati.

6. Prepoznavanje imenovanog entiteta - NER je proces pronalaska entiteta poput imena, mjesta, osobe, organizacije itd. Iz rečenice.

Ovdje se koristi kontekst pojavljivanja riječi u rečenici. Da bi izvukli strukturirane podatke iz teksta, NER sustavi imaju mnogo koristi.

Primjer NLP-a u Pythonu

Većina je tvrtki sada spremna obrađivati ​​nestrukturirane podatke za rast svog poslovanja. NLP ima širok spektar upotrebe, a jedan od najčešćih slučajeva upotrebe je Klasifikacija teksta.

Razvrstavanje teksta u različite kategorije automatski se naziva i klasifikacija teksta. Otkrivanje neželjene pošte ili šunke u e-pošti, kategorizacija članaka s novinama neki su od uobičajenih primjera klasifikacije teksta. Podaci upotrijebljeni u tu svrhu moraju biti označeni.

Nekoliko koraka u tekstu za razvrstavanje teksta koji treba slijediti su -

  • Učitavanje i predobrada podataka prvi je korak, a potom bi se podijelili u vlak i skup za provjeru valjanosti.
  • Korak inženjeringa značajki uključuje izdvajanje korisnih značajki ili stvaranje dodatnih značajnih značajki koje bi pomogle u razvoju boljeg modela predviđanja.
  • Za izgradnju modela koristi se obilježeni skup podataka za obuku modela.

Pandas, Scikit-learn, XGBoost, TextBlog, Keras su neke od potrebnih biblioteka koje moramo instalirati. Tada bismo uvezli knjižnice za pripremu podataka, inženjering značajki itd.

Podaci su ogromni s gotovo 3, 6 milijuna pregleda mogu se preuzeti odavde. Koristi se dio podataka. Preuzima se i čita u okviru podataka Pandas.

Ciljna varijabla je kodirana, a podaci su podijeljeni u vlak i test skupove.

Inženjering značajki izvodi se pomoću niže različitih metoda.

1. Broji vektori - Vektori brojanja prikazuju dokument, pojam i njegovu učestalost iz korpusa.

2. TF-IDF vektori - u dokumentu je relativna važnost termina predstavljena ocjenom terminala (TF) i ocjenom inverzne frekvencije dokumenta (IDF). TF-IDF se može izračunati prema -

TF-IDF vektori mogu se generirati na razini Word-a koja prikazuje ocjenu svakog pojma i razinu N-grama koja je kombinacija n-izraza.

3. Umetanje riječi - predstavljanje dokumenata i riječi u obliku guste vektora poznate su kao ugrađivanje riječi. Postoje unaprijed trenirane ugradnje kao što su Glove, Word2Vec koje se mogu koristiti ili se mogu također trenirati.

4. Modeli tema - To je grupa riječi iz dokumenta koja sadrži najviše podataka. Raspodjela latentnog Dirichleta koristi se ovdje za modeliranje tema.

Način je izgrađen nakon što je izveden inženjering značajki, a relevantne značajke su izvučene.

5. Naivan Bayes - Temelji se na Bayesovoj teoremi, a algoritam vjeruje da ne postoji odnos među značajkama u skupu podataka.


6. Logistička regresija - mjeri linearni odnos između značajki, a ciljna se varijabla mjeri na osnovu sigmoidne funkcije koja procjenjuje vjerojatnosti.


7. Vektorski sustav za podršku - Hiperplana razdvaja dvije klase u SVM-u.


8. Model slučajne šume - ansambl model gdje se smanjuje varijanca i zajedno spajaju više stabala.


9. XG Boost - Predrasuda je smanjena, a slabi učenici pretvaraju se u jake.

Kako bi vam NLP mogao pomoći u karijeri?

Obrada prirodnog jezika je procvatno polje na tržištu i gotovo svakoj organizaciji treba NLP inženjer koji će im pomoći u obradi neobrađenih podataka. Stoga je neophodno savladati potrebne vještine jer na tržištu ne bi bilo nedostatka radnih mjesta.

Zaključak: NLP u Pythonu

U ovom smo članku započeli s uvodom u NLP u Pythonu, a zatim implementirali jedan slučaj upotrebe u Python-u kako bismo pokazali kako raditi s NLP-om u Pythonu.

Preporučeni članci

Ovo je vodič za NLP u Pythonu. Ovdje smo raspravljali o primjeru, uporabi slučajeva i kako raditi s NLP-om u Pythonu. Možete i proći naše druge predložene članke da biste saznali više -

  1. Upotrebe Pythona
  2. Što je WBS?
  3. Python vs Scala
  4. Što je Tableau?

Kategorija: