TensorFlow Java را نصب کنید

TensorFlow جاوا می توانید در هر JVM برای ساخت و ساز، آموزش و استقرار مدلهای یادگیری ماشینی را اجرا کنید. این برنامه هم از پردازنده و هم از پردازنده گرافیکی ، در نمودار یا حالت مشتاق پشتیبانی می کند و یک API غنی برای استفاده از TensorFlow در محیط JVM ارائه می دهد. جاوا و دیگر زبانهای JVM ، مانند Scala و Kotlin ، اغلب در شرکتهای بزرگ و کوچک در سراسر جهان استفاده می شوند ، که TensorFlow Java را به یک انتخاب استراتژیک برای پذیرش یادگیری ماشین در مقیاس بزرگ تبدیل می کند.

الزامات

TensorFlow Java روی جاوا 8 و بالاتر اجرا می شود و از سیستم عامل های زیر خارج از جعبه پشتیبانی می کند:

  • اوبونتو 16.04 یا بالاتر ؛ 64 بیتی ، x86
  • macOS 10.12.6 (سیرا) یا بالاتر ؛ 64 بیتی ، x86
  • ویندوز 7 یا بالاتر ؛ 64 بیتی ، x86

نسخه ها

TensorFlow جاوا چرخه انتشار خود، مستقل از زمان اجرا TensorFlow . در نتیجه ، نسخه آن با نسخه زمان اجرا TensorFlow که در آن اجرا می شود مطابقت ندارد. مشورت TensorFlow جاوا نسخه جدول لیست تمام نسخه های موجود و نقشه برداری خود را با زمان اجرا TensorFlow است.

مصنوعات

وجود دارد راه های مختلفی را برای اضافه کردن TensorFlow جاوا را به پروژه خود. ساده ترین است برای اضافه کردن یک وابستگی به tensorflow-core-platform مصنوع، که شامل هر دو API TensorFlow جاوا هسته و وابستگیهای بومی آن نیاز به اجرا در تمام سیستم عامل های پشتیبانی شده است.

همچنین می توانید یکی از برنامه های افزودنی زیر را به جای نسخه CPU خالص انتخاب کنید:

  • tensorflow-core-platform-mkl : پشتیبانی از اینتل MKL-DNN در تمام سیستم عامل
  • tensorflow-core-platform-gpu : پشتیبانی از CUDA® بر روی سیستم عامل لینوکس و ویندوز
  • tensorflow-core-platform-mkl-gpu : پشتیبانی از اینتل MKL-DNN و CUDA® بر روی پلت فرم لینوکس است.

علاوه بر این، یک وابستگی جداگانه در tensorflow-framework کتابخانه را می توان به بهره مندی از مجموعه ای غنی از آب و برق برای یادگیری ماشین بر اساس TensorFlow-در JVM اضافه شده است.

نصب با Maven

برای شامل TensorFlow در خود Maven را برنامه، اضافه کردن وابستگی به آن مصنوعات را به پروژه خود را pom.xml فایل. مثلا،

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

کاهش تعداد وابستگی ها

این مهم است که توجه داشته باشید که اضافه کردن یک وابستگی در tensorflow-core-platform مصنوع خواهد کتابخانه های بومی برای همه سیستم عامل های پشتیبانی شده، که به طور قابل توجهی می تواند به اندازه پروژه خود را افزایش دهد وارد کنید.

اگر شما می خواهید به هدف قرار دادن یک زیر مجموعه از سیستم عامل های موجود پس از آن شما می توانید مصنوعات غیر ضروری را از سیستم عامل های دیگر با استفاده از حذف خروج Maven را وابستگی ویژگی.

راه دیگر را انتخاب کنید که سیستم عامل شما می خواهید در نرم افزار خود را به خواص مجموعه ای از سیستم JavaCPP، در خط فرمان Maven را خود و یا در خود pom.xml . لطفا JavaCPP مشاهده مستندات برای جزئیات بیشتر.

استفاده از عکس های فوری

آخرین گزارشهای توسعه TensorFlow جاوا از منبع مخزن TensorFlow جاوا موجود در هستند OSS Sonatype مخزن Travian.ir :: تراوین. وابسته به این آثار، مطمئن شوید که برای پیکربندی OSS عکس های فوری مخزن در خود pom.xml .

<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.4.0-SNAPSHOT</version>
    </dependency>
</dependencies>

نصب با Gradle

برای شامل TensorFlow در خود Gradle نرم افزار، اضافه کردن وابستگی به آن مصنوعات را به پروژه خود را build.gradle فایل. مثلا،

repositories {
    mavenCentral()
}

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

کاهش تعداد وابستگی ها

حذف آثار بومی از TensorFlow Java با Gradle به آسانی با Maven آسان نیست. توصیه می کنیم از افزونه های Gradle JavaCPP برای کاهش این تعداد وابستگی استفاده کنید.

لطفا در Gradle JavaCPP به عنوان خوانده شده اسناد و مدارک برای جزئیات بیشتر.

نصب از منابع

برای ساختن TensorFlow جاوا از منابع، و احتمالا آن را سفارشی، لطفا در بر داشت زیر به عنوان خوانده شده دستورالعمل .

مثال برنامه

این مثال نحوه ساخت پروژه Apache Maven با TensorFlow را نشان می دهد. نخست، اضافه کردن وابستگی TensorFlow به پروژه 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.3.3</version>
        </dependency>
    </dependencies>
</project>

درست فایل منبع 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);
        TInt32 x = TInt32.scalarOf(10);
        Tensor dblX = dbl.call(x)) {
      System.out.println(x.getInt() + " doubled is " + ((TInt32)dblX).getInt());
    }
  }

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

کامپایل و اجرا کنید:

mvn -q compile exec:java

دستور نسخه TensorFlow و یک محاسبه ساده را چاپ می کند.

موفقیت! TensorFlow Java پیکربندی شده است.