টেনসরফ্লো জাভা ইনস্টল করুন

টেনসরফ্লো জাভা যেকোন জেভিএম-এ বিল্ডিং, প্রশিক্ষণ এবং মেশিন লার্নিং মডেল স্থাপনের জন্য চালাতে পারে। এটি গ্রাফ বা উত্সাহী মোডে সিপিইউ এবং জিপিইউ উভয় প্রয়োগকে সমর্থন করে এবং একটি জেভিএম পরিবেশে টেনসরফ্লো ব্যবহারের জন্য একটি সমৃদ্ধ এপিআই উপস্থাপন করে স্কোয়া এবং কোটলিনের মতো জাভা এবং অন্যান্য জেভিএম ভাষাগুলি প্রায়শই সারা বিশ্বের বড় এবং ছোট উদ্যোগগুলিতে ব্যবহৃত হয়, যা টেনসরফ্লো জাভাকে বৃহত্তর পর্যায়ে মেশিন লার্নিং গ্রহণের কৌশলগত পছন্দ করে তোলে।

প্রয়োজনীয়তা

টেনসরফ্লো জাভা 8 এবং তার উপরের জাভাতে চলে এবং নীচের প্ল্যাটফর্মগুলিকে বাক্সের বাইরে সমর্থন করে:

  • উবুন্টু 16.04 বা উচ্চতর; 64-বিট, x86
  • ম্যাকোস 10.12.6 (সিয়েরা) বা উচ্চতর; 64-বিট, x86
  • উইন্ডোজ 7 বা উচ্চতর; 64-বিট, x86

সংস্করণ

টেনসরফ্লো জাভার নিজস্ব প্রকাশের চক্র রয়েছে, টেনসরফ্লো রানটাইম থেকে পৃথক। ফলস্বরূপ, এর সংস্করণটি টেনসরফ্লো রানটাইম চলমান সংস্করণের সাথে মেলে না। টেনসরফ্লো রানটাইমের সাহায্যে উপলব্ধ সমস্ত সংস্করণ এবং তাদের ম্যাপিংয়ের তালিকা পেতে টেনসরফ্লো জাভা সংস্করণ টেবিলটি পরামর্শ করুন।

শিল্পকলা

আপনার প্রকল্পে টেনসরফ্লো জাভা যুক্ত করার বিভিন্ন উপায় রয়েছে । সবচেয়ে tensorflow-core-platform নির্ভরতা যুক্ত করা, যার মধ্যে টেনসরফ্লো জাভা কোর এপিআই এবং সমস্ত সমর্থিত প্ল্যাটফর্মগুলিতে চালনার জন্য নেটিভ নির্ভরতা উভয়ই রয়েছে।

আপনি খাঁটি সিপিইউ সংস্করণের পরিবর্তে নিম্নলিখিত এক্সটেনশনগুলির মধ্যে একটি নির্বাচন করতে পারেন:

  • tensorflow-core-platform-mkl : সমস্ত প্ল্যাটফর্মে tensorflow-core-platform-mkl -ডিএনএন এর জন্য সমর্থন
  • tensorflow-core-platform-gpu : লিনাক্স এবং উইন্ডোজ প্ল্যাটফর্মে CUDA® এর জন্য সমর্থন
  • tensorflow-core-platform-mkl-gpu : লিনাক্স প্ল্যাটফর্মে ইন্টেল এমকেএল-ডিএনএন এবং সিইউডিএ-র জন্য সমর্থন।

এছাড়াও, tensorflow-framework তে tensorflow-framework -ভিত্তিক মেশিন লার্নিংয়ের জন্য সমৃদ্ধ tensorflow-framework থেকে উপকারের জন্য tensorflow-framework লাইব্রেরিতে পৃথক নির্ভরতা যুক্ত করা যেতে পারে।

মাভেনের সাথে ইনস্টল করা হচ্ছে

আপনার মাভেন অ্যাপ্লিকেশনে pom.xml করতে, আপনার প্রকল্পের pom.xml ফাইলে এর শিল্পকর্মগুলির উপর নির্ভরতা যুক্ত করুন। উদাহরণ স্বরূপ,

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

নির্ভরতা সংখ্যা হ্রাস করা

এটি লক্ষণীয় গুরুত্বপূর্ণ যে tensorflow-core-platform উপর নির্ভরতা যুক্ত করা সমস্ত সমর্থিত প্ল্যাটফর্মগুলির জন্য নেটিভ লাইব্রেরি আমদানি করবে, যা আপনার প্রকল্পের আকারকে উল্লেখযোগ্যভাবে বৃদ্ধি করতে পারে।

আপনি যদি উপলব্ধ প্ল্যাটফর্মগুলির একটি উপসেট লক্ষ্য করতে চান তবে আপনি মাভেন নির্ভরতা বহির্ভূত বৈশিষ্ট্যটি ব্যবহার করে অন্যান্য প্ল্যাটফর্মগুলি থেকে অপ্রয়োজনীয় শৈলীগুলি বাদ দিতে পারেন।

আপনার অ্যাপ্লিকেশনটিতে আপনি কোন প্ল্যাটফর্মগুলি অন্তর্ভুক্ত করতে চান তা বেছে নেওয়ার আরেকটি উপায় হ'ল জাভাসিপিপি সিস্টেম বৈশিষ্ট্যগুলি আপনার ম্যাভেন কমান্ড লাইনে বা আপনার pom.xml । আরও তথ্যের জন্য দয়া করে জাভাসিপিপি ডকুমেন্টেশন দেখুন।

স্ন্যাপশট ব্যবহার করে

টেনসরফ্লো জাভা সোর্স রিপোজিটরির সর্বশেষতম টেনসরফ্লো জাভা বিকাশের স্ন্যাপশটগুলি ওএসএস সোনাটাইপ নেক্সাস রিপোজিটরিতে পাওয়া যায়। এই নিদর্শনগুলির উপর নির্ভর করতে আপনার pom.xml এ ওএসএস স্ন্যাপশট 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>

গ্রেডল দিয়ে ইনস্টল করা হচ্ছে

আপনার TensorFlow অন্তর্ভুক্ত করার জন্য Gradle আবেদন, তার উপর নির্ভরতা যোগ নিদর্শন আপনার প্রকল্পের এর build.gradle ফাইল। উদাহরণ স্বরূপ,

repositories {
    mavenCentral()
}

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

নির্ভরতা সংখ্যা হ্রাস করা

গ্রেডলের সাথে টেনসরফ্লো জাভা থেকে নেটিভ আর্টিক্টগুলি বাদ দেওয়া মাভেনের মতো সহজ নয়। আমরা আপনাকে সুপারিশ করি যে এই সংখ্যা নির্ভরতা হ্রাস করতে আপনি গ্রেডল জাভাসিপিপি প্লাগইন ব্যবহার করুন।

আরও তথ্যের জন্য দয়া করে গ্রেডল জাভাসিপিপি ডকুমেন্টেশন পড়ুন।

উত্স থেকে ইনস্টল করা

উত্স থেকে টেনসরফ্লো জাভা তৈরি করতে এবং সম্ভবত এটি কাস্টমাইজ করতে দয়া করে নীচের নির্দেশাবলীটি পড়ুন

উদাহরণ প্রোগ্রাম

এই উদাহরণটি টেন্সরফ্লো দিয়ে কীভাবে অ্যাপাচি মাভেন প্রকল্প তৈরি করবেন তা দেখায়। প্রথমে প্রকল্পের 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>
        <!-- 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.1</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

কমান্ডটি টেনসরফ্লো সংস্করণ এবং একটি সাধারণ গণনা প্রিন্ট করে।

সাফল্য! টেনসরফ্লো জাভা কনফিগার করা হয়েছে।