Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Interfejs wiersza polecenia ML.NET automatyzuje generowanie modeli dla deweloperów platformy .NET.
Aby użyć samego interfejsu API ML.NET (bez interfejsu wiersza polecenia rozwiązania AutoML ML.NET), musisz wybrać trenera (implementację algorytmu uczenia maszynowego dla określonego zadania) oraz zestaw przekształceń danych (inżynierii cech) do zastosowania do danych. Optymalny proces będzie się różnić dla każdego zestawu danych, a wybór najlepszego algorytmu z dostępnych opcji zwiększa złożoność. Co więcej, każdy algorytm ma zestaw hiperparametrów, które mają być dostrojone. W związku z tym można spędzić tygodnie, a czasami miesiące na optymalizację modelu uczenia maszynowego, próbując znaleźć najlepsze kombinacje inżynierii cech, algorytmów uczenia i hiperparametrów.
Interfejs wiersza polecenia ML.NET upraszcza ten proces przy użyciu zautomatyzowanego uczenia maszynowego (AutoML).
Uwaga / Notatka
Ten artykuł dotyczy CLI ML.NET oraz AutoML ML.NET, które są obecnie dostępne w wersji zapoznawczej, a materiały mogą ulec zmianie.
Co to jest interfejs wiersza polecenia (CLI) ML.NET?
Interfejs wiersza polecenia ML.NET jest narzędziem .NET. Po zainstalowaniu nadasz mu zadanie uczenia maszynowego i zestaw danych uczenia maszynowego oraz generuje model ML.NET, a także kod języka C#, który ma zostać uruchomiony w celu użycia modelu w aplikacji.
Jak pokazano na poniższej ilustracji, proste jest wygenerowanie modelu ML.NET wysokiej jakości (serializowany model .zip pliku) oraz przykładowego kodu C#, aby uruchomić/ocenić ten model. Ponadto kod języka C# służący do tworzenia/trenowania tego modelu jest również generowany, dzięki czemu można badać i iterować algorytm i ustawienia używane dla tego wygenerowanego "najlepszego modelu".
Możesz wygenerować te zasoby na podstawie własnych zestawów danych bez konieczności samodzielnego kodowania, więc zwiększa to również produktywność, nawet jeśli już wiesz, ML.NET.
Obecnie zadania uczenia maszynowego obsługiwane przez interfejs wiersza polecenia ML.NET są następujące:
- klasyfikacja
- regresja
- zalecenie
- klasyfikacja obrazów
- prognozowanie
- pociąg
Interfejs wiersza polecenia ML.NET można zainstalować na podstawie systemu operacyjnego i jego architektury za pomocą następującego polecenia:
dotnet tool install --global mlnet-<OS>-<ARCH>
Na przykład można zainstalować wersję x64 systemu Windows z:
dotnet tool install --global mlnet-win-x64
Aby uzyskać więcej informacji, zobacz przewodnik Instalowanie interfejsu wiersza polecenia platformy ML.NET .
Przykład użycia (scenariusz klasyfikacji):
mlnet classification --dataset "yelp_labelled.txt" --label-col 1 --has-header false --train-time 10
Istnieje również polecenie, w którym można trenować przy użyciu pliku mbconfig . Plik mbconfig jest tworzony podczas uruchamiania sesji narzędzia Model Builder.
Można uruchomić go w taki sam sposób w programie Windows PowerShell, systemie macOS/Linux bash lub CMD systemu Windows. Jednak tabelaryczne automatyczne uzupełnianie (sugestie parametrów) nie będzie działać na cmD systemu Windows.
Wygenerowane zasoby wyjściowe
Polecenia zadań uczenia maszynowego w interfejsie wiersza polecenia generują następujące zasoby w folderze wyjściowym:
- Rozwiązanie w języku C#:
- Aplikacja konsolowa do uruchamiania/oceniania wygenerowanego modelu (w celu przewidywania w aplikacjach użytkowników końcowych za pomocą tego modelu).
- Aplikacja konsolowa z kodem trenowania używanym do generowania tego modelu (na potrzeby uczenia się lub ponownego trenowania modelu).
- Ten serializowany model ("najlepszy model") jest również udostępniany jako skompresowany plik .zip , który jest gotowy do użycia na potrzeby uruchamiania przewidywań.
- Plik mbconfig , który zawiera dane konfiguracji, które umożliwiają otwarcie modelu w narzędziu Model Builder.
- Plik dziennika, zawierający informacje o wszystkich iteracjach i cyklach w różnych ocenianych algorytmach, w tym ich szczegółowej konfiguracji oraz procesie przetwarzania strumieniowego.
Pierwsze dwa zasoby mogą być używane bezpośrednio w aplikacjach dla użytkowników końcowych (na przykład aplikacjach internetowych ASP.NET Core, usługach i aplikacjach desktopowych) do generowania przewidywań z modelu uczenia maszynowego.
Trzeci zasób, kod szkolenia, pokazuje, jaki kod interfejsu API ML.NET został użyty przez interfejs wiersza polecenia do trenowania wygenerowanego modelu. Dzięki temu można ponownie wytrenować model oraz zbadać i iterować, który konkretny trener, algorytm i hiperparametry zostały wybrane przez interfejs wiersza polecenia i AutoML za kulisami.
Zrozumienie jakości modelu
Podczas generowania "najlepszego modelu" za pomocą narzędzia CLI są wyświetlane metryki jakości (takie jak dokładność i R-kwadrat) odpowiednie dla konkretnego zadania uczenia maszynowego.
W tym miejscu te metryki są podsumowane pogrupowane według zadania uczenia maszynowego, dzięki czemu można zrozumieć jakość wygenerowanego automatycznie "najlepszego modelu".
Metryki modeli klasyfikacji
Na poniższej ilustracji przedstawiono listę metryk klasyfikacji dla pięciu najlepszych modeli znalezionych przez interfejs wiersza polecenia:
Dokładność jest popularną metryką dla problemów klasyfikacji, jednak dokładność nie zawsze jest najlepszą metryką do wybrania najlepszego modelu zgodnie z wyjaśnieniem w poniższych odwołaniach. Istnieją przypadki, w których należy ocenić jakość modelu przy użyciu dodatkowych metryk.
Aby zapoznać się z metrykami, które są danymi wyjściowymi interfejsu wiersza polecenia, zobacz Metryki oceny klasyfikacji.
Metryki dla modeli regresji i rekomendacji
Model regresji dobrze dopasowuje się do danych, jeśli różnice między wartościami obserwowanymi a wartościami przewidywanymi przez model są niewielkie i nieobciążone błędem systematycznym. Regresja może być oceniana przy użyciu określonych metryk.
Zobaczysz podobną listę metryk dla pięciu najlepszych modeli jakości znalezionych przez CLI, z tą różnicą, że pięć pierwszych jest związanych z zadaniem regresji ML:
Aby zgłębić i zrozumieć metryki, które są danymi wyjściowymi interfejsu wiersza polecenia, zobacz Metryki oceny dla regresji.