Rozpocznij pracę z TensorFlow.js

TensorFlow.js to biblioteka JavaScript służąca do uczenia i wdrażania modeli uczenia maszynowego w przeglądarce internetowej oraz w Node.js. W tym samouczku pokazano, jak rozpocząć pracę z TensorFlow.js, ucząc minimalny model w przeglądarce i używając modelu do przewidywania.

Przykładowy kod jest dostępny na GitHubie .

Warunki wstępne

Aby ukończyć ten samouczek, w środowisku programistycznym musisz zainstalować:

Zainstaluj przykład

Pobierz kod źródłowy i zainstaluj zależności:

  1. Sklonuj lub pobierz repozytorium tfjs-examples .
  2. Przejdź do katalogu getting-started : cd tfjs-examples/getting-started .
  3. Zainstaluj zależności: yarn install .

Jeśli spojrzysz na plik package.json , możesz zauważyć, że TensorFlow.js nie jest zależnością. Dzieje się tak, ponieważ przykład ładuje TensorFlow.js z sieci CDN. Oto pełny kod HTML z pliku index.html :

<html>
  <head>
    <script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs@latest"> </script>
  </head>
  <body>
    <h4>Tiny TFJS example<hr/></h4>
    <div id="micro-out-div">Training...</div>
    <script src="./index.js"> </script>
  </body>
</html>

Element <script> w nagłówku ładuje bibliotekę TensorFlow.js, a element <script> na końcu treści ładuje skrypt uczenia maszynowego.

Aby zapoznać się z innymi sposobami uzależnienia od TensorFlow.js, zapoznaj się z samouczkiem dotyczącym instalacji .

Uruchom przykład

Uruchom przykład i sprawdź wyniki:

  1. W katalogu tfjs-examples/getting-started uruchom yarn watch .
  2. Przejdź do http://127.0.0.1:1234 w swojej przeglądarce.

Powinieneś zobaczyć tytuł strony, a pod nim liczbę, np. 38.31612014770508 . Dokładna liczba będzie się różnić, ale powinna być bliska 39.

Co się właśnie stało?

Po załadowaniu index.js trenuje model tf.sequential przy użyciu wartości $ x $ i $ y $, które spełniają równanie $ y = 2x - 1 $.

// Create a simple model.
const model = tf.sequential();
model.add(tf.layers.dense({units: 1, inputShape: [1]}));

// Prepare the model for training: Specify the loss and the optimizer.
model.compile({loss: 'meanSquaredError', optimizer: 'sgd'});

// Generate some synthetic data for training. (y = 2x - 1)
const xs = tf.tensor2d([-1, 0, 1, 2, 3, 4], [6, 1]);
const ys = tf.tensor2d([-3, -1, 1, 3, 5, 7], [6, 1]);

// Train the model using the data.
await model.fit(xs, ys, {epochs: 250});

Następnie przewiduje wartość $ y $ dla niewidocznej wartości $ x $ 20 i aktualizuje DOM, aby wyświetlić prognozę.

// Use the model to do inference on a data point the model hasn't seen.
// Should print approximately 39.
document.getElementById('micro-out-div').innerText =
    model.predict(tf.tensor2d([20], [1, 1])).dataSync();

Wynik 2 $ * 20 - 1 $ to 39, więc przewidywana wartość $ y $ powinna wynosić w przybliżeniu 39.

Co dalej

W tym samouczku przedstawiono minimalny przykład użycia TensorFlow.js do uczenia modelu w przeglądarce. Bardziej szczegółowe wprowadzenie do uczenia modeli za pomocą JavaScript można znaleźć w przewodniku TensorFlow.js.

Więcej sposobów na rozpoczęcie

Oto więcej sposobów na rozpoczęcie pracy z TensorFlow.js i web ML.

Obejrzyj kurs Web ML TensorFlow.js

Jeśli jesteś programistą internetowym i szukasz praktycznego wprowadzenia do uczenia maszynowego w sieci, obejrzyj kurs wideo Google Developers Machine Learning for Web Developers. Kurs pokazuje, jak używać TensorFlow.js w swoich witrynach internetowych i aplikacjach.

Przejdź do internetowego kursu ML

Koduj programy ML bez bezpośredniego zajmowania się tensorami

Jeśli chcesz rozpocząć naukę maszynową bez zarządzania optymalizatorami i manipulacją tensorem, sprawdź bibliotekę ml5.js.

Zbudowana na bazie TensorFlow.js biblioteka ml5.js zapewnia dostęp do algorytmów i modeli uczenia maszynowego w przeglądarce internetowej za pomocą zwięzłego, przystępnego interfejsu API.

Sprawdź ml5.js

Zainstaluj TensorFlow.js

Zobacz jak zainstalować TensorFlow.js do wdrożenia w przeglądarce internetowej lub Node.js.

Zainstaluj TensorFlow.js

Konwertuj wstępnie wytrenowane modele na TensorFlow.js

Dowiedz się, jak konwertować wstępnie wyszkolone modele z języka Python do TensorFlow.js.

Model Kerasa Model GraphDef

Ucz się na podstawie istniejącego kodu TensorFlow.js

Repozytorium tfjs-examples zawiera małe przykładowe implementacje różnych zadań ML przy użyciu TensorFlow.js.

Zobacz przykłady tfjs w serwisie GitHub

Wizualizuj zachowanie swojego modelu TensorFlow.js

tfjs-vis to mała biblioteka do wizualizacji w przeglądarce internetowej przeznaczona do użytku z TensorFlow.js.

Zobacz tfjs-vis na GitHub Zobacz wersję demonstracyjną

Przygotuj dane do przetwarzania za pomocą TensorFlow.js

TensorFlow.js obsługuje przetwarzanie danych przy użyciu najlepszych praktyk ML.

Zobacz dokumentację