Funktionalisering för överföringsinlärning

Den här artikeln innehåller ett exempel på hur du utför funktionalisering för överföringsinlärning med hjälp av Pandas UDF:er.

Funktionalisering för överföringsinlärning i DL-modeller

Azure Databricks har stöd för funktionalisering med djupinlärningsmodeller. Förtränade djupinlärningsmodeller kan användas för att beräkna funktioner för användning i andra underordnade modeller. Azure Databricks har stöd för funktionalisering i stor skala och distribuerar beräkningen över ett kluster. Du kan utföra funktionalisering med djupinlärningsbibliotek som ingår i Databricks Runtime ML, inklusive TensorFlow och PyTorch.

Azure Databricks har även stöd för överföringsinlärning, en teknik som är nära relaterad till funktionalisering. Med överföringsinlärning kan du återanvända kunskap från en problemdomän i en relaterad domän. Funktionalisering är en enkel och kraftfull metod för överföringsinlärning: databehandlingsfunktioner med en förtränad djupinlärningsmodell överför kunskaper om bra funktioner från den ursprungliga domänen.

Steg för att beräkna funktioner för överföringsinlärning

Den här artikeln visar hur du beräknar funktioner för överföringsinlärning med hjälp av en förtränad TensorFlow-modell med hjälp av följande arbetsflöde:

  1. Börja med en förtränad djupinlärningsmodell, i det här fallet en bildklassificeringsmodell från tensorflow.keras.applications.
  2. Trunkera modellens sista lager. Den ändrade modellen genererar en tensor med funktioner som utdata i stället för en förutsägelse.
  3. Tillämpa modellen på en ny bilddatauppsättning från en annan problemdomän, databehandlingsfunktioner för bilderna.
  4. Använd de här funktionerna för att träna en ny modell. Följande notebook-fil utelämnar det här sista steget. Exempel på hur du tränar en enkel modell, till exempel logistisk regression, finns i Exempel på modellträning.

Exempel: Använda Pandas UDF:er för funktionalisering

Följande notebook-fil använder pandas-UDF:er för att utföra funktionaliseringssteget. Pandas UDF:er och deras nyare variant Scalar Iterator pandas UDF:er erbjuder flexibla API:er, stöder alla djupinlärningsbibliotek och ger höga prestanda.

Funktionalisering och överföringsinlärning med TensorFlow

Hämta notebook-fil