Java için TensorFlow'u yükleyin

TensorFlow, Python ile oluşturulan modelleri yüklemek ve bunları bir Java uygulaması içinde çalıştırmak için kullanışlı bir Java API'si sunar.

Geceleyin yayınlanan Libtensorflow Java paketleri

Libtensorflow JNI paketleri her gece derlenir ve desteklenen tüm platformlar için GCS'ye yüklenir. Bu paketler libtensorflow-nightly GCS kovasına yüklenir ve işletim sistemi ve derleme tarihine göre indekslenir.

Desteklenen Platformlar

TensorFlow for Java aşağıdaki sistemlerde desteklenmektedir:

  • Ubuntu 16.04 veya üzeri; 64 bit, x86
  • macOS 10.12.6 (Sierra) veya üzeri
  • Windows 7 veya üzeri; 64 bit, x86

Android'de TensorFlow kullanmak için TensorFlow Lite'a bakın.

Apache Maven ile TensorFlow

TensorFlow'u Apache Maven ile kullanmak için, projenizin pom.xml dosyasına aşağıdaki bağımlılığı ekleyin:

<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>tensorflow</artifactId>
  <version>2.4.0</version>
</dependency>

GPU desteği

Sisteminizde GPU desteği varsa, aşağıdaki TensorFlow bağımlılıklarını projenin pom.xml dosyasına ekleyin:

<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>libtensorflow</artifactId>
  <version>2.4.0</version>
</dependency>
<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>libtensorflow_jni_gpu</artifactId>
  <version>2.4.0</version>
</dependency>

Örnek program

Bu örnek, TensorFlow ile bir Apache Maven projesinin nasıl oluşturulacağını göstermektedir. Öncelikle, projenin pom.xml dosyasına TensorFlow bağımlılığını ekleyin:

<project>
  <modelVersion>4.0.0</modelVersion>
  <groupId>org.myorg</groupId>
  <artifactId>hellotensorflow</artifactId>
  <version>1.0-SNAPSHOT</version>
  <properties>
    <exec.mainClass>HelloTensorFlow</exec.mainClass>
    <!-- The sample code requires at least JDK 1.7. -->
    <!-- The maven compiler plugin defaults to a lower version -->
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
  </properties>
  <dependencies>
    <dependency>
      <groupId>org.tensorflow</groupId>
      <artifactId>tensorflow</artifactId>
      <version>1.14.0</version>
    </dependency>
  </dependencies>
</project>

Kaynak dosyayı oluşturun ( src/main/java/HelloTensorFlow.java ):

import org.tensorflow.Graph;
import org.tensorflow.Session;
import org.tensorflow.Tensor;
import org.tensorflow.TensorFlow;

public class HelloTensorFlow {
  public static void main(String[] args) throws Exception {
    try (Graph g = new Graph()) {
      final String value = "Hello from " + TensorFlow.version();

      // Construct the computation graph with a single operation, a constant
      // named "MyConst" with a value "value".
      try (Tensor t = Tensor.create(value.getBytes("UTF-8"))) {
        // The Java API doesn't yet include convenience functions for adding operations.
        g.opBuilder("Const", "MyConst").setAttr("dtype", t.dataType()).setAttr("value", t).build();
      }

      // Execute the "MyConst" operation in a Session.
      try (Session s = new Session(g);
          // Generally, there may be multiple output tensors,
          // all of them must be closed to prevent resource leaks.
          Tensor output = s.runner().fetch("MyConst").run().get(0)) {
        System.out.println(new String(output.bytesValue(), "UTF-8"));
      }
    }
  }
}

Derleyin ve çalıştırın:

mvn -q compile exec:java  # Use -q to hide logging

Komutun çıktısı: Hello from version

JDK ile TensorFlow

TensorFlow, Java Yerel Arayüzü (JNI) aracılığıyla JDK ile birlikte kullanılabilir.

İndirmek

  1. TensorFlow JAR arşivini ( libtensorflow.jar ) indirin.
  2. İşletim sisteminiz ve işlemcinizin desteklediği Java Yerel Arayüzü (JNI) dosyasını indirin ve çıkarın:
JNI sürümü URL
Linux
Linux CPU yalnızca https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-linux-x86_64-2.4.0.tar.gz
Linux GPU desteği https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-linux-x86_64-2.4.0.tar.gz
macOS
macOS işlemcisi yalnızca https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-darwin-x86_64-2.4.0.tar.gz
Windows
Yalnızca Windows CPU'su https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-windows-x86_64-2.4.0.zip
Windows GPU desteği https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-windows-x86_64-2.4.0.zip

Derle

Önceki örnekteki HelloTensorFlow.java dosyasını kullanarak TensorFlow kullanan bir program derleyin. libtensorflow.jar dosyasının classpath erişilebilir olduğundan emin olun:

javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java

Koşmak

Bir TensorFlow Java programını çalıştırmak için, JVM'nin libtensorflow.jar ve çıkarılan JNI kütüphanesine erişmesi gerekir.

Linux / macOS

java -cp libtensorflow-2.4.0.jar:. -Djava.library.path=./jni HelloTensorFlow

Windows

java -cp libtensorflow-2.4.0.jar;. -Djava.library.path=jni HelloTensorFlow

Komutun çıktısı: Hello from version

Kaynak koddan derle

TensorFlow açık kaynaklıdır. TensorFlow'un Java ve yerel kütüphanelerini kaynak koddan derlemek için talimatları okuyun.