Sestavení systému doporučení pro film pomocí machine learningu

Blob Storage
Container Instances
Cosmos DB
Data Science Virtual Machine
Machine Learning

V tomto ukázkovém scénáři se dozvíte, jak podniky můžou pomocí strojového učení automatizovat doporučení k produktům pro své zákazníky. Konkrétně azure Data Science Virtual Machine (DSVM) se používá pro výuku modelu v Azure, který doporučí filmy uživatelům na základě hodnocení filmů.

Individuální doporučení můžou být užitečná v různých oborech z maloobchodního prodeje až po příspěvky na média. Mezi potenciální aplikace patří poskytování doporučení k produktům ve virtuálním úložišti, poskytování novinek nebo doporučení k odeslání nebo poskytnutí doporučení pro hudbu. Místo náboru zaměstnanců, aby mohli zákazníkům dělat přizpůsobená doporučení, můžou podniky poskytovat škálovaná doporučení s využitím Azure ke školení modelů, abyste pochopili předvolby zákazníka.

Relevantní případy použití

Tento scénář zvažte v následujících případech použití:

  • Doporučení pro filmy na webu.
  • Doporučení zákaznických produktů v mobilní aplikaci.
  • Doporučení pro novinky na médiích pro streamování.

Architektura systému doporučení pro film

Architektura modelu strojového učení pro školení filmových doporučení

Tento scénář se zabývá školením a hodnocením modelu Machine Learning pomocí algoritmu Sparku s nejmenšími čtverci (ALS) pro datovou sadu hodnocení filmů. Postup pro tento scénář:

  1. Front-end web nebo služba App Service shromažďují historická data interakcí uživatelů, která jsou zastoupena v tabulce uživatele, položky a číselných řazených kolekcí členů.

  2. Shromážděná historická data jsou uložená v úložišti objektů BLOB.

  3. Data Science Virtual Machine (DSVM) se často používá pro menší úlohy k experimentování nebo vývoji produktu založeného na modelu doporučených pro Spark ALS. Model ALS je vyškolen pomocí školicí datové sady, která je vytvořena z celkové datové sady pomocí strategie rozdělení dat. Datová sada může být například rozdělena na sady náhodně, chronologicky nebo stratified v závislosti na obchodním požadavku. Podobně jako u jiných úloh strojového učení se doporučuje doporučit ověření pomocí metrik vyhodnocení (například precision@k, Recall@k, map, nDCG@k).

  4. Azure Machine Learning koordinuje experiment, jako je například mazání a správa modelů.

  5. vyškolený model je uložený ve Azure Cosmos DB, který se pak dá použít pro doporučení nejlepších filmů pro daného uživatele.

  6. Model se pak nasadí na web nebo do služby App Service pomocí Azure Container Instances nebo služby Azure Kubernetes.

Podrobný průvodce vytvářením a škálováním doporučované služby najdete v článku o Vytvoření rozhraní API pro doporučení v reálném čase v Azure.

Komponenty

  • Data Science Virtual Machine (DSVM) je virtuální počítač Azure s architekturami a nástroji pro hloubkové učení, který slouží pro strojové učení a datové vědy. DSVM má samostatné prostředí Spark, které lze použít ke spuštění funkce ALS. DSVM použijte, pokud máte menší zatížení a nepotřebujete distribuované řešení.

  • Úložiště objektů BLOB v Azure ukládá datovou sadu pro doporučení filmů.

  • Azure Machine Learning slouží k urychlení sestavování, správy a nasazení modelů strojového učení.

  • Azure Cosmos DB umožňuje globálně distribuované a databázové úložiště s více modely.

  • Azure Container Instances slouží k nasazení vyškolených modelů do webových nebo aplikačních služeb, volitelně pomocí služby Azure Kubernetes.

Alternativa k DSVM

Azure Databricks je spravovaný cluster Spark, ve kterém se provádí školení a hodnocení modelu. Spravované prostředí Spark můžete nastavit během několika minut a Automatické horizontální navýšení kapacity, které vám pomůže snižovat prostředky a náklady spojené s ručním škálováním clusterů. Další možností uložení prostředků je konfigurace neaktivních clusterů pro automatické ukončení.

Požadavky

Dostupnost

Prostředky pro aplikace založené na strojovém učení jsou obvykle rozdělené do prostředků pro školení a prostředky pro poskytování. Prostředky vyžadované pro školení obecně nepotřebují vysokou dostupnost, protože živé požadavky na produkci přímo nevyhovují těmto prostředkům. Prostředky potřebné pro obsluhu musí mít vysokou dostupnost pro poskytování požadavků zákazníků.

V rámci školení je DSVM k dispozici ve více oblastech po celém světě a splňuje smlouvu o úrovni služeb (SLA) pro virtuální počítače. Pro poskytování služeb Azure Kubernetes poskytuje infrastrukturu s vysokou dostupností . Uzly agenta se také řídí smlouvou SLA pro virtuální počítače.

Škálovatelnost

Pokud máte rozsáhlou datovou sadu, můžete DSVM škálovat na kratší dobu školení. Velikost virtuálního počítače můžete škálovat nahoru nebo dolů změnou velikosti virtuálního počítače. Vyberte velikost paměti, která je dostatečně velká, aby odpovídala vaší datové sadě v paměti, a zvyšte počet vCPU, aby se snížila doba potřebná k absolvování.

Zabezpečení

tento scénář může použít Azure Active Directory k ověřování uživatelů pro přístup k DSVM, který obsahuje váš kód, modely a data (v paměti). Data jsou uložená v Azure Storage před jejich načtením do DSVM, kde se automaticky šifrují pomocí Šifrování služby Storage. oprávnění se dají spravovat pomocí Azure Active Directory ověřování nebo řízení přístupu na základě role.

Nasazení tohoto scénáře

Požadavky: musíte mít existující účet Azure. Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Veškerý kód pro tento scénář je k dispozici v úložišti doporučených pro společnost Microsoft.

Pomocí těchto kroků spusťte Poznámkový blok ALS pro rychlý Start:

  1. Vytvoří DSVM z Azure Portal.

  2. Naklonujte úložiště ve složce poznámkových blocích:

    cd notebooks
    git clone https://github.com/Microsoft/Recommenders
    
  3. Nainstalujte závislosti conda podle postupu popsaného v souboru Setup.MD .

  4. V prohlížeči přejděte na virtuální počítač s JupyterLab a přejděte na notebooks/00_quick_start/als_pyspark_movielens.ipynb .

  5. Spusťte Poznámkový blok.

Další kroky

Další články Cetrum architektury Azure:

Zkuste použít nějaký kód: