Elaborazione del linguaggio naturale
È possibile eseguire attività di elaborazione del linguaggio naturale in Azure Databricks usando librerie open source comuni, ad esempio Spark ML e spark-nlp o librerie di proprietà tramite la partnership di Azure Databricks con John Snow Labs.
Per esempi di NLP con Hugging Face, vedere Risorse aggiuntive
Creazione di funzionalità a partire dal testo utilizzando Spark ML
Spark ML contiene una gamma di strumenti di elaborazione del testo per creare funzionalità dalle colonne di testo. È possibile creare funzionalità di input dal testo per gli algoritmi di training del modello direttamente nelle pipeline di Spark ML usando Spark ML. Spark ML supporta un'ampia gamma di processori di testo, tra cui tokenizzazione, elaborazione di parole non significative, word2vec e funzione di hash.
Training e inferenza con Spark NLP
È possibile aumentare il numero di istanze di molti metodi di Deep Learning per l'elaborazione del linguaggio naturale in Spark usando la libreria NLP Spark open source. Questa libreria supporta operazioni standard di elaborazione del linguaggio naturale, ad esempio la tokenizzazione, il riconoscimento di entità denominate e la vettorizzazione usando le annotazioni incluse. È anche possibile riepilogare, eseguire il riconoscimento delle entità denominate, tradurre e generare testo usando molti modelli di Deep Learning con training preliminare basati sui trasformatori di Spark NLP, ad esempio BERT e T5 Marion.
Eseguire l'inferenza in batch usando Spark NLP nelle CPU
Spark NLP offre molti modelli con training preliminare che è possibile usare con codice minimo. Questa sezione contiene un esempio di utilizzo del Marian Transformer per la traduzione automatica. Per il set completo di esempi, vedere la documentazione di Spark NLP.
Requisiti
- Installare Spark NLP nel cluster usando le coordinate Maven più recenti per Spark NLP, ad esempio
com.johnsnowlabs.nlp:spark-nlp_2.12:4.1.0
. Il cluster deve essere avviato con le opzioni di configurazione di Spark appropriate, impostate per consentire il funzionamento del catalogo. - Per usare NLP Spark, il cluster deve avere il file corretto
.jar
scaricato da John Snow Labs. È possibile creare o usare un cluster che esegue qualsiasi runtime compatibile.
Codice di esempio per la traduzione automatica
In una cella del notebook installare sparknlp
le librerie Python:
%pip install sparknlp
Creare una pipeline per la traduzione ed eseguirla in un testo di esempio:
from sparknlp.base import DocumentAssembler
from sparknlp.annotator import SentenceDetectorDLModel, MarianTransformer
from pyspark.ml import Pipeline
document_assembler = DocumentAssembler().setInputCol("text").setOutputCol("document")
sentence_detector = SentenceDetectorDLModel.pretrained("sentence_detector_dl", "xx") \
.setInputCols("document").setOutputCol("sentence")
marian_transformer = MarianTransformer.pretrained() \
.setInputCols("sentence").setOutputCol("translation")
pipeline = Pipeline().setStages([document_assembler, sentence_detector, marian_transformer])
data = spark.createDataFrame([["You can use Spark NLP to translate text. " + \
"This example pipeline translates English to French"]]).toDF("text")
# Create a pipeline model that can be reused across multiple data frames
model = pipeline.fit(data)
# You can use the model on any data frame that has a “text” column
result = model.transform(data)
display(result.select("text", "translation.result"))
Esempio: modello di riconoscimento di entità denominate con Spark NLP e MLflow
Il notebook di esempio illustra come eseguire il training di un modello di riconoscimento delle entità denominato usando Spark NLP, salvare il modello in MLflow e usare il modello per l'inferenza sul testo. Per informazioni su come eseguire il training di altri modelli di elaborazione del linguaggio naturale, consultare la documentazione di John Snow Labs per Spark NLP.
Notebook di training e inferenza del modello Spark NLP
Collaborazione tra Healthcare NLP e John Snow Labs
John Snow Labs Spark NLP for Healthcare è una libreria proprietaria per il data mining clinico e biomedico. Questa libreria fornisce modelli con training preliminare per il riconoscimento e l'uso di entità cliniche, farmaci, fattori di rischio, anatomia, dati demografici e dati sensibili. È possibile provare Spark NLP for Healthcare usando l'integrazione Partner Connect con John Snow Labs. Per provare i comandi illustrati in questa guida, è necessario un account di prova o a pagamento con John Snow Labs.
Altre informazioni sulle funzionalità complete di John Snow Labs Spark NLP for Healthcare e la documentazione per l'uso reperibili nel sito Web.