Help protect the Great Barrier Reef with TensorFlow on Kaggle Join Challenge

ติดตั้ง TensorFlow สำหรับ Java

TensorFlow มี Java API ซึ่งมีประโยชน์สำหรับการโหลดโมเดลที่สร้างด้วย Python และรันภายในแอปพลิเคชัน Java

แพ็คเกจ Java Libtensorflow ตอนกลางคืน

แพ็คเกจ Libtensorflow JNI สร้างขึ้นทุกคืนและอัปโหลดไปยัง GCS สำหรับแพลตฟอร์มที่รองรับทั้งหมด อัปโหลดไปยังที่ เก็บข้อมูล GCS libtensorflow ทุกคืน และจัดทำดัชนีโดยระบบปฏิบัติการและวันที่สร้าง

แพลตฟอร์มที่รองรับ

TensorFlow สำหรับ Java ได้รับการสนับสนุนบนระบบต่อไปนี้:

  • Ubuntu 16.04 หรือสูงกว่า 64 บิต x86
  • macOS 10.12.6 (Sierra) หรือสูงกว่า
  • Windows 7 หรือสูงกว่า 64 บิต x86

หากต้องการใช้ TensorFlow บน Android โปรดดู TensorFlow Lite

TensorFlow กับ Apache Maven

ในการใช้ TensorFlow กับ Apache Maven ให้เพิ่มการอ้างอิงลงในไฟล์ pom.xml ของโปรเจ็ก pom.xml :

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

รองรับ GPU

หากระบบของคุณ รองรับ GPU ให้เพิ่มการอ้างอิง TensorFlow ต่อไปนี้ในไฟล์ pom.xml ของโปรเจ็ก pom.xml :

<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>

ตัวอย่างโปรแกรม

ตัวอย่างนี้แสดงวิธีการสร้างโปรเจ็กต์ Apache Maven ด้วย TensorFlow ขั้นแรกให้เพิ่มการพึ่งพา pom.xml ไฟล์ pom.xml ของโปรเจ็ก pom.xml :

<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>

สร้างไฟล์ต้นฉบับ ( 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"));
      }
    }
  }
}

รวบรวมและดำเนินการ:

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

เอาต์พุตคำสั่ง: Hello from version

TensorFlow กับ JDK

TensorFlow สามารถใช้กับ JDK ผ่าน Java Native Interface (JNI)

ดาวน์โหลด

  1. ดาวน์โหลด TensorFlow Jar Archive (JAR): libtensorflow.jar
  2. ดาวน์โหลดและแตกไฟล์ Java Native Interface (JNI) สำหรับระบบปฏิบัติการและการสนับสนุนโปรเซสเซอร์ของคุณ:
รุ่น JNI URL
ลินุกซ์
Linux CPU เท่านั้น https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-linux-x86_64-2.4.0.tar.gz
รองรับ Linux GPU https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-linux-x86_64-2.4.0.tar.gz
macOS
macOS CPU เท่านั้น https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-darwin-x86_64-2.4.0.tar.gz
Windows
Windows CPU เท่านั้น https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-cpu-windows-x86_64-2.4.0.zip
รองรับ Windows GPU https://storage.googleapis.com/tensorflow/libtensorflow/libtensorflow_jni-gpu-windows-x86_64-2.4.0.zip

รวบรวม

ใช้ไฟล์ HelloTensorFlow.java จาก ตัวอย่างก่อนหน้านี้ รวบรวมโปรแกรมที่ใช้ TensorFlow ตรวจสอบให้แน่ใจว่า libtensorflow.jar สามารถเข้าถึง classpath ของคุณได้:

javac -cp libtensorflow-2.4.0.jar HelloTensorFlow.java

วิ่ง

ในการรันโปรแกรม TensorFlow Java JVM ต้องเข้าถึง libtensorflow.jar และไลบรารี JNI ที่แยกออกมา

ลินุกซ์ / 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

เอาต์พุตคำสั่ง: Hello from version

สร้างจากแหล่งที่มา

TensorFlow เป็นโอเพ่นซอร์ส อ่าน คำแนะนำ ในการสร้าง Java และไลบรารีเนทีฟของ TensorFlow จากซอร์สโค้ด