Cos’è NLTK?

NLTK (Natural Language ToolKit) è una suite Python creata nel 2001 che mette a disposizioni diversi moduli per l’analisi del linguaggio naturale simbolico e statistico.
Riconosciamo i seguenti moduli rilevanti:

  • tokenize suddivide il testo in parole (word_tokenize) o frasi (sent_tokenize);
  • corpus permette di accedere ai diversi corpus e liste di Stop words (NLP);
  • stem applica algoritmi di stemming come PorterStemmer o SnowballStemmer per ridurre parole alla radice;
  • lemmatize si riferisce alla lemmatizzazione, cioè normalizza le parole alla loro forma base usando WordNetLemmatizer;
  • tag applica automaticamente ad ogni parola la sua specifica etichetta grammaticale (sostantivo, verbo, aggettivo, ecc..);
  • probability calcola la distribuzione di frequenze (FreqDist) delle parole;
  • chunck e parse per l’analisi sintattica e la suddivisione in costituenti (chunking, parsing);
  • classificationutile per attività di Apprendimento supervisionato (sentiment analysis o classificazione anti-spam).

Supporto e compatibilità NLTK

  • Supporta l’integrazione con scikit-learn e TensorFlow (chatbot, sistemi di analisi dati).
  • Fornisce accesso a risorse linguistiche come WordNet, liste di stopword per molte lingue e numerosi corpus testuali