Dela via


Arbetsflöde för modellinferens för djupinlärning

För modellinferens för djupinlärningsprogram rekommenderar Azure Databricks följande arbetsflöde. Exempel på notebook-filer som använder TensorFlow och PyTorch finns i Exempel på slutsatsdragning av djupinlärningsmodeller.

  1. Läs in data i Spark DataFrames. Beroende på datatyp rekommenderar Azure Databricks följande sätt att läsa in data:

    • Bildfiler (JPG, PNG): Läs in bildsökvägarna i en Spark DataFrame. Bildinläsning och förbearbetning av indata sker i en Pandas UDF.
    files_df = spark.createDataFrame(map(lambda path: (path,), file_paths), ["path"])
    
    • TFRecords: Läs in data med spark-tensorflow-connector.
    df = spark.read.format("tfrecords").load(image_path)
    
    • Datakällor som Parquet, CSV, JSON, JDBC och andra metadata: Läs in data med Spark-datakällor.
  2. Utföra modellinferens med hjälp av Pandas UDF:er.Pandas UDF:er använder Apache Arrow för att överföra data och Pandas för att arbeta med data. För att göra modellinferens är följande de breda stegen i arbetsflödet med Pandas UDF:er.

    1. Läs in den tränade modellen: För effektivitet rekommenderar Azure Databricks att du sänder modellens vikter från drivrutinen och läser in modelldiagrammet och hämtar vikterna från de utsända variablerna i en Pandas UDF.
    2. Läsa in och förbearbeta indata: För att läsa in data i batchar rekommenderar Azure Databricks att du använder tf.data-API:et för TensorFlow och klassen DataLoader för PyTorch. Båda stöder även förinläsning och flertrådad inläsning för att dölja I/O-bunden svarstid.
    3. Körningsmodellförutsägelse: kör modellinferens för databatchen.
    4. Skicka tillbaka förutsägelser till Spark DataFrames: samla in förutsägelseresultaten och returnera som pd.Series.

Exempel på slutsatsdragning av djupinlärningsmodeller

Exemplen i det här avsnittet följer det rekommenderade arbetsflödet för slutsatsdragning för djupinlärning. De här exemplen visar hur du utför modellinferens med hjälp av en förtränad modell för neurala nätverk (ResNets).