共用方式為


自然語言處理

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

如需透過 Hugging Face 進行 NLP 的範例,請參閱其他資源

使用 Spark ML 從文字建立特徵

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 座標 (例如 com.johnsnowlabs.nlp:spark-nlp_2.12:4.1.0) 在叢集上安裝 Spark NLP。 叢集必須使用適當的 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 NLP 的 John Snow Labs 文件,以了解如何訓練其他自然語言處理模型。

Spark NLP 模型訓練和推斷筆記本

取得筆記本

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

John Snow Labs Spark NLP for Healthcare 是一個用於臨床和生物醫學文字採礦的專屬庫。 此庫提供預先訓練的模型,用於辨識和處理臨床實體、藥物、風險因素、解剖學、人口統計和敏感資料。 您可以使用 Partner Connect 與 John Snow Labs 的整合來試用 Spark NLP for Healthcare。 您需要 John Snow Labs 的試用或付費帳戶,才能嘗試本指南中示範的命令。

在 John Snow Labs 網站上深入了解 John Snow Labs Spark NLP for Healthcare 的完整功能以及使用文件。