RSVP for your your local TensorFlow Everywhere event today!
Bu sayfa, Cloud Translation API ile çevrilmiştir.
Switch to English

TensorFlow Java'yı yükleyin

TensorFlow Java , makine öğrenimi modellerini oluşturmak, eğitmek ve dağıtmak için herhangi bir JVM'de çalışabilir. Grafik veya istekli modda hem CPU hem de GPU yürütmeyi destekler ve bir JVM ortamında TensorFlow kullanmak için zengin bir API sunar. Scala ve Kotlin gibi Java ve diğer JVM dilleri, tüm dünyada büyük ve küçük işletmelerde sıklıkla kullanılmaktadır ve bu, TensorFlow Java'yı büyük ölçekte makine öğrenimini benimsemek için stratejik bir seçim haline getirmektedir.

Gereksinimler

TensorFlow Java, Java 8 ve üzeri sürümlerde çalışır ve kullanıma hazır şu platformları destekler:

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

Versiyonlar

TensorFlow Java, TensorFlow çalışma zamanından bağımsız olarak kendi yayın döngüsüne sahiptir. Sonuç olarak, sürümü, üzerinde çalıştığı TensorFlow çalışma zamanı sürümüyle eşleşmiyor. Mevcut tüm sürümleri ve bunların TensorFlow çalışma zamanıyla eşleştirilmesini listelemek için TensorFlow Java sürüm belirleme tablosuna başvurun.

Eserler

Projenize TensorFlow Java eklemenin birkaç yolu vardır. En kolayı, hem TensorFlow Java Core API hem de desteklenen tüm platformlarda çalışması için gereken yerel bağımlılıkları içeren tensorflow-core-platform bir bağımlılık tensorflow-core-platform .

Saf CPU sürümü yerine aşağıdaki uzantılardan birini de seçebilirsiniz:

  • tensorflow-core-platform-mkl : Tüm platformlarda Intel® MKL-DNN desteği
  • tensorflow-core-platform-gpu : Linux ve Windows platformlarında CUDA® desteği
  • tensorflow-core-platform-mkl-gpu : Linux ve Windows platformlarında Intel® MKL-DNN ve CUDA® desteği.

Ek olarak, JVM'de TensorFlow tabanlı makine öğrenimi için zengin bir yardımcı program kümesinden yararlanmak için tensorflow-framework kitaplığına ayrı bir bağımlılık eklenebilir.

Maven ile yükleme

Maven uygulamanıza TensorFlow'u dahil etmek için, projenizin pom.xml dosyasına yapıtlarına bir bağımlılık ekleyin. Örneğin,

<dependency>
  <groupId>org.tensorflow</groupId>
  <artifactId>tensorflow-core-platform</artifactId>
  <version>0.2.0</version>
</dependency>

Bağımlılık Sayısını Azaltma

Bir tensorflow-core-platform bağımlılık eklemenin, desteklenen tüm platformlar için yerel kitaplıkları içe aktaracağını ve bu da projenizin boyutunu önemli ölçüde artırabileceğini unutmamak önemlidir.

Mevcut platformların bir alt kümesini hedeflemek isterseniz, Maven Bağımlılık Hariç Tutma özelliğini kullanarak diğer platformlardan gereksiz eserleri dışlayabilirsiniz.

Uygulamanıza hangi platformları dahil etmek istediğinizi seçmenin başka bir yolu, Maven komut satırınızda veya pom.xml'nizde JavaCPP sistem özelliklerini pom.xml . Daha fazla ayrıntı için lütfen JavaCPP belgelerine bakın.

Anlık Görüntüleri Kullanma

TensorFlow Java kaynak deposundaki en son TensorFlow Java geliştirme anlık görüntüleri, OSS Sonatype Nexus deposunda mevcuttur. Bu yapılara bağlı olmak için, pom.xml OSS anlık görüntü havuzunu yapılandırdığınızdan emin olun.

<repositories>
    <repository>
        <id>tensorflow-snapshots</id>
        <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>org.tensorflow</groupId>
        <artifactId>tensorflow-core-platform</artifactId>
        <version>0.3.0-SNAPSHOT</version>
    </dependency>
</dependencies>

Gradle ile yükleme

Gradle uygulamanıza TensorFlow'u dahil etmek için, projenizin build.gradle dosyasına yapıtlarına bir bağımlılık ekleyin. Örneğin,

repositories {
    mavenCentral()
}

dependencies {
    compile group: 'org.tensorflow', name: 'tensorflow-core-platform', version: '0.2.0'
}

Bağımlılık Sayısını Azaltma

Gradle ile TensorFlow Java'dan yerel eserleri hariç tutmak Maven ile olduğu kadar kolay değildir. Bu bağımlılık sayısını azaltmak için Gradle JavaCPP eklentilerini kullanmanızı öneririz.

Daha fazla ayrıntı için lütfen Gradle JavaCPP belgelerini okuyun.

Kaynaklardan Yükleme

TensorFlow Java'yı kaynaklardan oluşturmak ve muhtemelen özelleştirmek için lütfen aşağıdaki talimatları okuyun.

Örnek Program

Bu örnek, TensorFlow ile Apache Maven projesinin nasıl oluşturulacağını gösterir. İlk olarak, TensorFlow bağımlılığını projenin pom.xml dosyasına 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>
    <!-- Minimal version for compiling TensorFlow Java is JDK 8 -->
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
    </properties>

    <dependencies>
    <!-- Include TensorFlow (pure CPU only) for all supported platforms -->
        <dependency>
            <groupId>org.tensorflow</groupId>
            <artifactId>tensorflow-core-platform</artifactId>
            <version>0.2.0</version>
        </dependency>
    </dependencies>
</project>

Kaynak dosyası src/main/java/HelloTensorFlow.java :

import org.tensorflow.ConcreteFunction;
import org.tensorflow.Signature;
import org.tensorflow.Tensor;
import org.tensorflow.TensorFlow;
import org.tensorflow.op.Ops;
import org.tensorflow.op.core.Placeholder;
import org.tensorflow.op.math.Add;
import org.tensorflow.types.TInt32;

public class HelloTensorFlow {

  public static void main(String[] args) throws Exception {
    System.out.println("Hello TensorFlow " + TensorFlow.version());

    try (ConcreteFunction dbl = ConcreteFunction.create(HelloTensorFlow::dbl);
        Tensor<TInt32> x = TInt32.scalarOf(10);
        Tensor<TInt32> dblX = dbl.call(x).expect(TInt32.DTYPE)) {
      System.out.println(x.data().getInt() + " doubled is " + dblX.data().getInt());
    }
  }

  private static Signature dbl(Ops tf) {
    Placeholder<TInt32> x = tf.placeholder(TInt32.DTYPE);
    Add<TInt32> dblX = tf.math.add(x, x);
    return Signature.builder().input("x", x).output("dbl", dblX).build();
  }
}

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

mvn -q compile exec:java

Komut şunu yazdırır: TensorFlow version and a simple calculation.

Başarılı! TensorFlow Java yapılandırıldı.