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 sağlar.

Gecelik Libtensorflow Java paketleri

Libtensorflow JNI paketleri her gece oluşturulur ve desteklenen tüm platformlar için GCS'ye yüklenir. Bunlar , libtensorflow-nightly GCS grubuna yüklenir ve işletim sistemine ve oluşturulma tarihine göre dizine eklenir.

Desteklenen Platformlar

Java için TensorFlow aşağıdaki sistemlerde desteklenir:

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

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

Apache Maven ile TensorFlow

TensorFlow'u Apache Maven ile kullanmak için bağımlılığı projenin pom.xml dosyasına ekleyin:

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

GPU desteği

Sisteminizde GPU desteği varsa projenin pom.xml dosyasına aşağıdaki TensorFlow bağımlılıklarını 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österir. Öncelikle TensorFlow bağımlılığını projenin pom.xml dosyasına 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

Komut çı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 (JAR) indirin: libtensorflow.jar
  2. İşletim sisteminiz ve işlemci desteğiniz için Java Yerel Arayüzü (JNI) dosyasını indirin ve çıkarın:
JNI sürümü URL'si
Linux
Yalnızca Linux CPU'su 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
Yalnızca macOS CPU https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-darwin-x86_64-2.4.0.tar.gz
Windows
Yalnızca Windows CPU 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 tarafından erişilebilir olduğundan emin olun:

javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java

Koşmak

Bir TensorFlow Java programını yürütmek için JVM'nin libtensorflow.jar ve çıkarılan JNI kitaplığına 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

Komut çıktısı: Hello from version

Kaynaktan derle

TensorFlow açık kaynaktır. Kaynak kodundan TensorFlow'un Java ve yerel kitaplıklarını oluşturmaya yönelik talimatları okuyun.