Delen via


Wat is een functiearchief?

Op deze pagina wordt uitgelegd wat een functiearchief is en welke voordelen het biedt, en wat de specifieke voordelen zijn van Databricks Feature Store.

Een functiearchief is een gecentraliseerde opslagplaats waarmee gegevenswetenschappers functies kunnen vinden en delen en er ook voor zorgt dat dezelfde code wordt gebruikt voor het berekenen van de functiewaarden voor modeltraining en deductie.

Machine learning maakt gebruik van bestaande gegevens om een model te bouwen om toekomstige resultaten te voorspellen. In bijna alle gevallen vereisen de onbewerkte gegevens voorverwerking en transformatie voordat ze kunnen worden gebruikt om een model te bouwen. Dit proces wordt functie-engineering genoemd en de uitvoer van dit proces worden functies genoemd: de bouwstenen van het model.

Het ontwikkelen van functies is complex en tijdrovend. Een extra complicatie is dat voor machine learning functieberekeningen moeten worden uitgevoerd voor modeltraining en vervolgens opnieuw wanneer het model wordt gebruikt om voorspellingen te doen. Deze implementaties worden mogelijk niet uitgevoerd door hetzelfde team of met dezelfde codeomgeving, wat kan leiden tot vertragingen en fouten. Bovendien hebben verschillende teams in een organisatie vaak vergelijkbare functiebehoeften, maar zijn ze mogelijk niet op de hoogte van het werk dat andere teams hebben gedaan. Een functiearchief is ontworpen om deze problemen op te lossen.

Waarom Databricks Feature Store gebruiken?

Databricks Feature Store is volledig geïntegreerd met andere onderdelen van Azure Databricks.

  • Vindbaarheid. Met de gebruikersinterface van de functieopslag, die toegankelijk is vanuit de Databricks-werkruimte, kunt u bladeren en zoeken naar bestaande functies.
  • Geslacht. Wanneer u een functietabel maakt in Azure Databricks, worden de gegevensbronnen die worden gebruikt om de functietabel te maken, opgeslagen en toegankelijk. Voor elke functie in een functietabel hebt u ook toegang tot de modellen, notebooks, taken en eindpunten die gebruikmaken van de functie.
  • Integratie met het scoren en bedienen van modellen. Wanneer u functies uit Feature Store gebruikt om een model te trainen, wordt het model verpakt met metagegevens van functies. Wanneer u het model gebruikt voor batchgewijs scoren of onlinedeductie, worden functies automatisch opgehaald uit de Feature Store. De beller hoeft deze niet te kennen of logica op te nemen om functies op te zoeken of eraan deel te nemen om nieuwe gegevens te scoren. Dit maakt modelimplementatie en updates veel eenvoudiger.
  • Zoekacties naar een bepaald tijdstip. Feature Store biedt ondersteuning voor time series en op gebeurtenissen gebaseerde use cases waarvoor de juistheid van een bepaald tijdstip is vereist.

Functie-engineering in Unity Catalog

Met Databricks Runtime 13.3 LTS en hoger wordt Unity Catalog uw functiearchief als uw werkruimte is ingeschakeld voor Unity Catalog. U kunt elke Delta-tabel of Delta Live-tabel in Unity Catalog gebruiken met een primaire sleutel als een functietabel voor modeltraining of deductie. Unity Catalog biedt functiedetectie, governance, herkomst en toegang tussen werkruimten.

Hoe werkt Databricks Feature Store?

De typische machine learning-werkstroom met behulp van Feature Store volgt dit pad:

  1. Schrijf code om onbewerkte gegevens te converteren naar functies en maak een Spark DataFrame met de gewenste functies.
  2. Voor werkruimten die zijn ingeschakeld voor Unity Catalog, schrijft u het DataFrame als een functietabel in Unity Catalog. Als uw werkruimte niet is ingeschakeld voor Unity Catalog, schrijft u het DataFrame als een functietabel in de werkruimtefunctieopslag.
  3. Een model trainen met behulp van functies uit het functiearchief. Wanneer u dit doet, slaat het model de specificaties op van functies die worden gebruikt voor training. Wanneer het model wordt gebruikt voor deductie, worden functies uit de juiste functietabellen automatisch samengevoegd.
  4. Model registreren in modelregister.

U kunt nu het model gebruiken om voorspellingen te doen over nieuwe gegevens.

Voor batchgebruiksscenario's haalt het model automatisch de functies op die het nodig heeft uit de Feature Store.

Feature Store-werkstroom voor batch-machine learning-use cases.

Voor realtime gebruiksvoorbeelden publiceert u de functies naar een onlinetabel. Online winkels van derden worden ook ondersteund. Zie online winkels van derden.

Tijdens deductie leest het model vooraf berekende functies uit de online winkel en voegt het deze samen met de gegevens die zijn opgegeven in de clientaanvraag naar het model dat het eindpunt levert.

Functiearchiefstroom voor machine learning-modellen die worden geleverd.

Functiearchief gebruiken

Zie de volgende artikelen om aan de slag te gaan met Feature Store:

Wanneer u Functie-engineering in Unity Catalog gebruikt, zorgt Unity Catalog voor het delen van functietabellen in werkruimten en gebruikt u Unity Catalog-bevoegdheden om de toegang tot de functietabellen te beheren. De volgende koppelingen zijn alleen bedoeld voor de werkruimtefunctieopslag:

Ondersteunde gegevenstypen

Functie-engineering in Unity Catalog en Workspace Feature Store ondersteunt de volgende PySpark-gegevenstypen:

  • IntegerType
  • FloatType
  • BooleanType
  • StringType
  • DoubleType
  • LongType
  • TimestampType
  • DateType
  • ShortType
  • ArrayType
  • BinaryType [1]
  • DecimalType [1]
  • MapType [1]

[1] BinaryType, DecimalTypeen MapType worden ondersteund in alle versies van Feature Engineering in Unity Catalog en in Workspace Feature Store v0.3.5 of hoger.

De bovenstaande gegevenstypen ondersteunen functietypen die gebruikelijk zijn in machine learning-toepassingen. Voorbeeld:

  • U kunt dichte vectoren, tensors en insluitingen opslaan als ArrayType.
  • U kunt sparse vectoren, tensors en insluitingen opslaan als MapType.
  • U kunt tekst opslaan als StringType.

Wanneer ze worden gepubliceerd naar online winkels ArrayType en MapType functies worden opgeslagen in JSON-indeling.

In de gebruikersinterface van het functiearchief worden metagegevens weergegeven voor functiegegevenstypen:

Voorbeeld van complexe gegevenstypen

Meer informatie

Download de uitgebreide handleiding voor feature stores voor meer informatie over aanbevolen procedures voor het gebruik van de Feature Store.