自然語言處理

您可以透過與 John Snow Labs 的 Azure Databricks 合作關係,在 Azure Databricks 上使用熱門的 開放原始碼 連結庫,例如 Spark ML 和 spark-nlp 或專屬連結庫,在 Azure Databricks 上執行自然語言處理工作。

如需 NLP 與擁抱臉部的範例,請參閱 其他資源

使用Spark ML從文字建立功能

Spark ML 包含一系列文字處理工具,可從文字數據行建立功能。 您可以使用Spark ML,直接從文字建立模型定型演算法的輸入功能。 Spark ML 支援一系列 文字處理器,包括標記化、停用文字處理、word2vec 和功能哈希。

使用 Spark NLP 定型和推斷

您可以使用開放原始碼 Spark NLP 連結庫來相應放大許多深度學習方法,以在 Spark 上進行自然語言處理。 此連結庫支持標準自然語言處理作業,例如使用內 含的批註器來標記化、具名實體辨識和向量化。 您也可以根據 Spark NLP 的轉換器 ,例如 BERT 和 T5 Marion,使用許多預先定型的深度學習模型來摘要、執行具名實體辨識、翻譯和產生文字。

在 CPU 上使用 Spark NLP 在批次中執行推斷

Spark NLP 提供許多預先定型的模型,您可以搭配最少的程式代碼使用。 本節包含使用 Marian Transformer 進行機器翻譯的範例。 如需完整的範例集,請參閱 Spark NLP 檔

需求

  • 使用 Spark NLP 的最新 Maven 座標在叢集上安裝 Spark NLP,例如 com.johnsnowlabs.nlp:spark-nlp_2.12:4.1.0。 您的叢集必須以設定適當的Spark組態選項來啟動,才能讓此連結庫運作。
  • 若要使用 Spark NLP,您的叢集必須具有從 John Snow Labs 下載的正確 .jar 檔案。 您可以建立或使用執行 任何相容運行時間的叢集。

機器翻譯的範例程序代碼

在筆記本數據格中,安裝 sparknlp Python 連結庫:

%pip install sparknlp

建構管線以進行翻譯,並在一些範例文字上執行:

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"))

範例:使用Spark NLP和 MLflow 的具名實體辨識模型

範例筆記本說明如何使用 Spark NLP 定型具名實體辨識模型、將模型儲存至 MLflow,以及使用模型來推斷文字。 請參閱 Spark NLPJohn Snow Labs 檔,以瞭解如何訓練其他自然語言處理模型。

Spark NLP 模型定型和推斷筆記本

取得筆記本

與 John Snow Labs 合作的醫療保健 NLP

John Snow Labs Spark NLP for Healthcare 是臨床和生物醫學文字採礦的專屬連結庫。 此連結庫提供預先定型的模型,用於辨識和使用臨床實體、藥物、風險因素、解剖學、人口統計和敏感數據。 您可以使用合作夥伴 連線 與 John Snow Labs 整合,試用 Spark NLP for Healthcare。 您需要搭配John Snow Labs 試用試用版或付費帳戶,才能試用本指南中示範的命令。

深入瞭解 John Snow Labs Spark NLP for Healthcare 的完整功能,以及在其 網站上使用的檔。