Machine Learning dengan PlaidML

By | March 19, 2021
1,028 Views

Machine Learning dengan PlaidML – PlaidML adalah kompiler tensor canggih dan portabel untuk memungkinkan kalian melakukan deep machine learning keberagam device pada laptop, perangkat tertanam-embedded, atau perangkat lain

Plaid ML merupakan favorit saya saat ini, karena sangat menjengkelkan sekali ketika menggunakan tensorflow! Tensorflow dari versi 1 loncat ke versi 2 banyak sekali perubahan! Sehingga beberapa project saya tidak bisa digunakan lagi (kecuali coding ulang bila perlu) Bayangin saja hal tersebut! Machine Learning pool banyak depencies nya, pusing kalau banyak versi.

Untuk sekarang saya sedang tertarik menggunakan PlaidML daripada tensorflow

Apa itu PlaiML (saya pakai terjemahan saja) adalah PlaidML adalah kompiler tensor canggih dan portabel untuk memungkinkan kalian melakukan deep machine learning keberagam device pada laptop, perangkat tertanam-embedded, atau perangkat lain di mana perangkat keras komputasi yang tersedia tidak didukung dengan baik atau tumpukan perangkat lunak yang tersedia berisi batasan lisensi yang tidak sesuai. serta

PlaidML works on all major operating systems: Linux, macOS, and Windows.

Cara Install PlaidML

Berhubung saya menggunakan windows serta anaconda, caranya sangat mudah

https://plaidml.github.io/plaidml/docs/install#windows

Pastikan kalian sudah setting  PIP ya serta setting PATH nya jangann lupa! Kalau sudah gunakan pip untuk install

pip install -U plaidml-keras

Serta setup PlaidML nya, panggil saja perintah

plaidml-setup

Ntar muncul pilihan untuk memilih device yang kita gunakan!

Test Bencmark PlaidML

Sekarang kalian bisa coba test PlaidML, oiya sebagai informasi saya menggunakan

  1. Python 3.8.5 (anaconda navigator 1.10.0; dan conda 4.9.2)
  2. Keras 2.2.4
  3. Numpy 1.19.2
import numpy as np
import os
import time

os.environ["KERAS_BACKEND"] = "plaidml.keras.backend"

import keras
import keras.applications as kapp
from keras.datasets import cifar10

(x_train, y_train_cats), (x_test, y_test_cats) = cifar10.load_data()
batch_size = 8
x_train = x_train[:batch_size]
x_train = np.repeat(np.repeat(x_train, 7, axis=1), 7, axis=2)
model = kapp.VGG19()
model.compile(optimizer='sgd', loss='categorical_crossentropy',
              metrics=['accuracy'])

print("Running initial batch (compiling tile program)")
y = model.predict(x=x_train, batch_size=batch_size)

# Now start the clock and run 10 batches
print("Timing inference...")
start = time.time()
for i in range(10):
    y = model.predict(x=x_train, batch_size=batch_size)
print("Ran in {} seconds".format(time.time() - start))

Saya sangat puas sekali menggunakan ini daripada menggunakan tensorflow didalam beberapa project deep machine learning.

See also  Mengenal Spark MLlib untuk Big Data dan Machine Learning

Sekedar mengingatkan! per Oktober 2021 atau yang saat ini saya gunakan masih menggunakan versi

Name: plaidml
Version: 0.7.0
Summary: PlaidML machine learning accelerator
Home-page: https://www.intel.ai/plaidml/
Author: Vertex.AI
Author-email: plaidml-dev@googlegroups.com
License: https://www.apache.org/licenses/LICENSE-2.0
Location: c:\programdata\anaconda3\lib\site-packages
Requires: six, cffi, enum34, numpy
Required-by: plaidml-keras

yang punya depencies terhadap keras versi requires keras==2.2.4

Jadi kalian harus lebih memahami depencies nya!