Mengenal Machine Learning

Beberapa tahun terakhir, banyak yang mulai mempelajari Machine Learning. Hal ini tidak lepas dari perkembangan teknologi komputasi dan penyimpanan data yang semakin murah. Namun tidak semua orang mengerti apa itu Machine Learning. Ada beberapa pertanyaan yang sering disampaikan:

  • Apa itu Machine Learning dan bagaimana bedanya dengan Big Data dan Business Analytics?
  • Apa perbedaan antara Machine Learning, Data Analysis, Data Mining, Data Science dan Artificial Intelligence?

Sekarang, mari kita ambil kesimpulan dari percakapan berikut:

A : Menurut Anda apa yang terjadi saat Anda mencari sesuatu di Google?
B : Google menampilkan laman web paling relevan yang terkait dengan pencarian tersebut.
A : Tapi apa yang sebenarnya terjadi sehingga Google bisa menampilkan halaman web yang   paling relevan untuk Anda?
B : Google melihat klik terakhir dari orang-orang untuk memahami halaman web mana yang lebih relevan untuk suatu pencarian dan kemudian menyajikan hasilnya dalam halaman pencarian tersebut.
A : Tapi, berapa banyak pencarian dan apakah semua jenis pencarian yang akan ditangani Google secara teratur?
B : Harus dalam jumlah yang besar, mungkin triliunan pencarian setiap tahunnya.
A : Jadi, menurut Anda bagaimana Google dapat melayani begitu banyak permintaan dengan akurasi seperti itu? Menurut Anda, apakah ada orang yang duduk di kantor Google dan terus menentukan hasil penelurusan mana yang relevan dan mana yang tidak?
B : Sepertinya tidak mungkin dilakukan manusia.
A : Anda benar. Disinilah Machine Learning (Pembelajaran Mesin) ikut bermain. Machine Learning adalah seperangkat teknik, yang membantu dalam menangani data yang besar dengan cara yang paling cerdas (dengan mengembangkan algoritma atau serangkauan aturan logis) untuk memperoleh wawasan yang dapat ditindaklanjuti (memberikan hasil pencarian kepada pengguna dalam kasus ini)

 

Apa itu Machine Learning?

Secara definisi, machine learning atau pembelajaran mesin adalah ilmu atau studi yang mempelajari tentang algoritma dan model statistik yang digunakan oleh sistem komputer untuk melakukan task tertentu tanpa instruksi eksplisit. Machine learning bergantung pada pola dan kesimpulan. Untuk mendapatkan pola dan kesimpulan tersebut, algoritma machine learning menghasilkan model matematika yang didasari dari data sampel yang sering disebut dengan ‘training data.’ 


Apa Perbedaan Machine Learning dengan Artificial Intelligence (AI)?

AI ini mengacu pada prosedur pemrograman komputer (machine) untuk mengambil suatu yang rasional. Apa itu rasional? Rasional adalah dasar dalam mengambil keputusan

Sebagai contoh, AI digunakan untuk memeriksa apakah parameter tertentu dalam sebuah program berperilaku Normal. Misalnya, mesin dapat menimbulkan alarm jika parameter mengatakan ‘X’ melintasi ambang batas tertentu yang pada gilirannya dapat mempengaruhi hasil proses terkait.

Penggunaan AI dalam Machine Learning

Machine Learning adalah subset dari AI dimana mesin dilatih untuk belajar dari pengalaman masa lalu. Pengalaman masa lalu dikembangkan melalui data yang dikumpulkan, kemudian menggabungkan dengan algoritma (seperti Naïve Bayes, Support Vector Machine (SVM)) untuk memberi hasil akhir.

Apa perbedaan Machine Learning dengan Statistik?

Statistik adalah cabang matematika yang memanfaatkan data baik dari keseluruhan populasi atau sampel untuk melakukan analisis dan menyajikan kesimpulan. Beberapa teknik statistik yang digunakan adalah regresi, varians, standar deviasi, probabilitas bersyarat dan lainnya.

Penggunaan Statistik dalam Machine Learning

Mari kita pahami dari contoh berikut. Misalkan, saya perlu memisahkan kiriman di inbox email saya menjajdi dua kategori, yaitu ‘spam’ dan ‘penting’. Untuk mengidentifikasi email spam, saya dapat menggunakan algoritma Machine Learning yang dikenal sebagai Naïve Bayes yang akan memeriksa frekuensi kiriman spam masa lalu. Untuk mengidentifikasi email baru sebagai spam, Naïve Bayes menggunakan teori statistik Baye’s Theorem (umumnya dikeal sebagai probabilitas bersyarat). Oleh karena itu, kita dapat mengatakan algoritma Machine Learning menggunakan konsep statistik untuk melakukan pembelajaran mesin.

Apa Perbedaan Machine Learning dengan Deep Learning?

Deep Learning dikaitkan dengan algoritma jaringan saraf tiruan –  Artificial Neural Network (ANN) yang menggunakan konsep otak manusia untuk memudahkan pemodelan fungsi yang berubah-ubah. ANN membutuhkan sejumlah besar data dan algoritma ini sangat fleksibel dalam hal menghasilkan bayak keluaran secara bersamaan. Baca artikel mengenal deep learning!

Apa Perbedaan Machine Learning dengan Data Mining?

Data Mining digunakan untuk mencari informasi yang spesifik, sedangkan Machine Learning berkonsentrasi untuk melakukan tugas tertentu. Sebagai contoh untuk membantu perbedaan antara Machine Learning dan Data Mining, mengajar seorang cara menari adalah Machine Learning, sedangkan menggunakan seseorang untuk mencari pusat tarian terbaik di kota adalah Data Mining.

Bagaimana Machine Learning Bekerja?

Machine Learning melibatkan proses struktural dimana setiap tahap membangun versi mesin yang lebih baik. Untuk penyederhanaan, proses Machine Learning bisa dibagi menjadi 3 bagian:

Mengenal Machine Learning 1

Langkah-langkah yang digunakan dalam Machine Learning
  • Mengumpulkan data
    Data mentah bisa berupa Excel, Ms Access, file teks dan lain-lain. Langkah ini membentuk dasar pembelajaran masa depan. Semakin banyak variasi, kepadatan dan volume data yang relevan, semakin baik prospek pembelajaran untuk mesin.
  • Mempersiapkan data
    Setiap proses analitis berkembang dengan kualitas data yang digunakan. Kita perlu meluangkan waktu untuk menentukan kualitas data dan kemudian mengambil langkah-langkah untuk memperbaiki masalah seperti kehilangan data dan lainnya.
  • Melatih sebuah model
    Langkah ini melibatkan pemilihan alrgoritma dan representasi data yang tepat dalam bentuk model. Data yang disiapkan dibagi menjadi dua bagian : train  dan test. Bagian pertama (training data) digunakan untuk pengembangan model. Bagian kedua (data test), digunakan sebagai referensi.
  • Mengevaluasi model
    Untuk menguji keakuratan, bagian kedua dari data (data test) digunakan. Langkah ini menentukan ketepatan dalam pemilihan algoritma berdasarkan hasil pengujian. Pengujian yang lebih baik untuk memeriksa ketepatan model adalah dengan melihat kinerjanya pada data yang tidak digunakan sama sekali selama pembuatan model.
  • Meningkatkan kinerja
    Langkah ini mungkin melibatkan pemilihan model yang berbeda atau memperkenalkan lebih banyak variabel unntuk meningkatkan efisiensi. Itulah sebabnya dibutuhkan banyak waktu untuk pengumpulan data dan persiapan data.

 

Jenis Algoritma Machine Learning

Mengenal Machine Learning 2

  • Model Supervised Learning / Predictive
    Model ini digunakan untuk memprediksi hasil masa depan berdasarkan data historis. Model prediktif biasanya diberi instruktsi yang jelas sejak awal seperti apa yang perlu dipelajari dan bagaimana itu perlu dipelajari. Algoritma pembelajaran ini disebut Supervised Learning.

    Sebagai contoh: Supervised Learning digunakan saat perusahaan pemasaran mencoba untuk mengetahui pelanggan mana yang cenderung berpindah atau mencari supplier lain. Algoritma ini juga bisa digunakan untuk memprediksi kemungkinan terjadinya bahaya seperti gempa bumi, tornaod dan lain-lain, dengan tujuan untuk mengetahui Total Nilai Asuransi. Beberapa conntoh algoritma yang digunakan adalah: Nearest Neighbour, Naïve Bayes, Decision Tree, Regression, dan lain-lain.

  • Model UnSupervised Learning/Descriptive
    Model ini digunakan untuk melatih dimana tidak ada target yang ditetapkan dan tidak ada faktor yang penting dari yang lainnya. Sebagai contoh penggunaan model unspervised learning ini, bila seorang penjual pengecer ingin mengetahui kombinasi produk apa yang cenderung lebih sering dibeli konsumen. Di industri farmasi, digunakan untuk memprediksi penyakit mana yang mungkin terjadi bersamaan dengan diabetes. Contoh algoritma yang digunakan di model ini: K-Means Clustering Algorithm.
  • Reinforcement Learning (RL)
    Model ini adalah contoh  pembelajaran mesin dimana mesin dilatih untuk mengambil keputusan spesifik berdasarkan kebutuhan bisnis dengan tujuan utama untuk memaksimalkan efisiensi (kinerja). Ide dari Reinforcement learning ini adalah mesin/perangkat lunak melatih dirinya secara terus menerus berdasarkan lingkungan yang dipengaruhinya, dan menerapkan pengetahuan yang diperkaya unntuk memecahkan masalah bisnis. Proses belajar yang terus-menerus ini memastikan lebih sedikit keterlibatan manusia sehingga akan banyak menghemat waktu.

    Contoh algoritma yang digunakan dalam RL adalah Markov Decision Process.

Untuk membedakan antara Supervised Learning dan Reinforcement Learning, dapat dicontohkan, sebuah mobil menggunakan Reinforcement learning untuk membuat keputusan rute mana yang harus ditempuh, kecepatan berapa yang harus dikemudikan, dimanan beberapa pertanyaan tersebut diputuskan setelah berinteraksi dengan lingkungan.

Sedangkan memperkirakan ongkos taksi dari satu tempat ke tempat lain adalah Supervised Learning

 

Penggunaan Machine Learning

Google dan Facebook adalah dua contoh perusahaan yang menggunakan Machine Learning secara ekstensif untuk mendorong iklan masing-masing ke pengguna yang relevan. Contoh penggunakan Machine Learning yang lainnya adalah :

  1. Layanan Perbankan & Keuangan
    Machine Learning dapat digunakan untuk memprediksi pelanggan yang cenderung gagal membayar pinjaman atau tagihan kartu kredit. Ini sangat penting karena Machine Learning akan membantu bank untuk mengidentifikasi nasabah yang dapat diberikan pinjaman dan kartu kredit.
  1. Kesehatan
    Digunakan untuk mendiagnosis penyakit mematikan (misalnya kanker) berdasarkan gejala pasien dan menghitungnya dengan data terakhir dari jenis pasien yang sama.
  1. Ritel
    Digunakan untuk mengidentifikais produk yang lebih sering dijual (bergerak cepat) dan produk yang lamban. Hal ini membantu memutuskan jenis produk yang akan ditampilkan atau dikeluarkan dari rak. Selain itu, algoritma Machine Learning dapat digunakan untuk menemukan dua atau lebih produk yang dijual bersama. Hal ini dilakukan untuk merangsang inisiatif loyalitas pelanggan yang pada gilirannya membantu para peritel untuk mengembangkan pelanggan setia.

Sumber : Article : Machine Learning basics for a newbie – www.analyticsvidhya.com

 

Jika Anda tertarik untuk menguasai machine learning, Anda dapat mengikuti Kelas Pelatihan Machine Learning di Inixindo Jogja.

Mustofa

Belajar Machine Learning Dengan Python (Bagian 1)

Belajar Machine Learning Dengan Python (Bagian 1)

Di artikel sebelumnya, sudah dibahas tentang apa itu Machine Learning. Kali ini, akan dibahas cara menerapkan Machine Learning dengan menggunakan bahasa Python.

Python adalah bahasa interpeter yang populer dan powerful. Tidak seperti R, Python adalah bahasa yang memiliki fitur yang lengkap dan memiliki platform yang dapat digunakan baik untuk riset maupun untuk membangun production system. Ada banyak modul dan library yang dapat digunakan untuk menerapkan Machine Learning di dalam Python.

Untuk memulai proyek Machine Learning, harus mengetahui langkah-langkah sebagai berikut:

  1. Mendefinisikan masalah
  2. Menyiapkan Data
  3. Mengevaluasi Algoritma
  4. Memperbarui Hasil
  5. Menyajikan Hasil

 

Langkah-langkah menerapkan Machine Learning dengan Python

  1. Instalasi Platform Python dan Scipy

Untuk mendapatkan software aplikasi Python dan Scipy, dapat mengunjungi situs scipy.org. Disana akan diberikan petunjuk yang lengkap untuk menginstall python dan library yang dibutuhkan, baik dalam platform Linux, Mac OS X maupun Windows. Ada 5 library utama yang perlu diinstall untuk tutorial ini: Scipy, Numpy, Matplotlib, Panda, dan Sklearn.

Memulai Python

Untuk memastikan lingkungan Python sudah berhasil diinstall, berikut langkah-langkah yang bisa dilakukan:

  • Buka baris perintah dan memulai python, di console command prompt
Python
  • Ketik atau copy dan paste script berikut:
# Check the versions of libraries

# Python version

import sys

print('Python: {}'.format(sys.version))

# scipy

import scipy

print('scipy: {}'.format(scipy.__version__))

# numpy

import numpy

print('numpy: {}'.format(numpy.__version__))

# matplotlib

import matplotlib

print('matplotlib: {}'.format(matplotlib.__version__))

# pandas

import pandas

print('pandas: {}'.format(pandas.__version__))

# scikit-learn

import sklearn

print('sklearn: {}'.format(sklearn.__version__))

output yang dihasilkan, seperti contoh berikut:

Python: 3.6.1 |Anaconda 4.4.0 (64-bit)| (default, May 11 2017, 13:25:24) [MSC v.1900 64 bit (AMD64)]

scipy: 0.19.0

numpy: 1.12.1

matplotlib: 2.0.2

pandas: 0.20.1

sklearn: 0.18.1

 

Data yang Digunakan

Untuk latihan proyek Machine Learning ini menggunakan dataset klasifikasi Bunga Iris. Dataset ini dikenal dengan dataset “hello world” dalam Machine Learning dan Statistik, yang dipakai oleh hampir semua orang.

Dataset ini berisi 150 pengamatan bunga Iris. Ada empat kolom pengukuran bunga dalam centimeter. Kolom kelima adalah spesies bunga yang diamati. Anda dapat mempelajari lebih lajut tentang dataset ini di Wikipedia.

 

Impor Library

Sebelum memuat dataset terlebih dahulu impor semua modul, fungsi dan obyek yang akan digunakan dalam tutorial ini.

# Load libraries

import pandas

from pandas.tools.plotting import scatter_matrix

import matplotlib.pyplot as plt

from sklearn import model_selection

from sklearn.metrics import classification_report

from sklearn.metrics import confusion_matrix

from sklearn.metrics import accuracy_score

from sklearn.linear_model import LogisticRegression

from sklearn.tree import DecisionTreeClassifier

from sklearn.neighbors import KNeighborsClassifier

from sklearn.discriminant_analysis import LinearDiscriminantAnalysis

from sklearn.naive_bayes import GaussianNB

from sklearn.svm import SVC

 

2. Memuat Dataset

Untuk memuat dataset, dapat langsung diambil dari alamat repository UCI Machine Learning. Berikut script untuk memuat dataset:

# Load dataset

url = "http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data"

names = ['sepal-length', 'sepal-width', 'petal-length', 'petal-width', 'class']

dataset = pandas.read_csv(url, names=names)

Jika tidak ada koneksi internet, file iris.data dapat download terlebih dahulu, diletakkan di file local. Untuk memuat data-nya dapat dilakukan dengan metode yang sama, dengan mengubah URL ke file local.

3. Melakukan Summary Dataset

Pada langkah ini, kita akan melihat data dari beberapa sisi yang berbeda:

  • Dimensi Dataset

Hal ini dilakukan untuk mendapatkan gambaran singkat tentang berapa banyak baris dan atribut data.

# shape

print(dataset.shape)

Selanjutnya akan terlihat output : (150,50)

Yang berarti 150 baris dan 5 atribut data

  • Melihat Isi Data

Berikut perintah untuk melihat 20 baris data pertama:

# head

print(dataset.head(20))

Belajar Machine Learning Dengan Python (Bagian 1) 3

  • Ringkasan Statistik

Berikut untuk melihat statistik data termasuk count, mean, nilai min dan max serta beberapa persentase

# descriptions

print(dataset.describe())

Belajar Machine Learning Dengan Python (Bagian 1) 4

  • Distribusi Class Data

Sekarang mari kita lihat jumlah baris untk setiap class.

# class distribution

print(dataset.groupby(‘class’).size())

Akan terlihat bahwa setiap class memiliki jumlah kasus yang sama (50 atau 33% dari kumpulan data)

class

Iris-setosa 50

Iris-versicolor 50

Iris-virginica 50

 

Bersambung ke Belajar Machine Learning Dengan Python (Bagian 2)

***

Jika Anda ingin mempelajari machine learning lebih dalam lagi, Anda bisa mengikuti kelas pelatihan machine learning di Inixindo Jogja

Mustofa

Manager Edukasi Inixindo Jogja

10 URUSAN DISKOMINFO DALAM IMPLEMENTASI E-GOVERNMENT

10 URUSAN DISKOMINFO DALAM IMPLEMENTASI E-GOVERNMENT

Rencana strategis 2015 – 2019 yang dicanangkan Kementrian Kominfo adalah menjadikan Dinas Kominfo sebagai perpanjangan tangan di daerah dalam pengelolaan pemerintahan berbasis elektronik. Dengan demikian Dinas Kominfo memiliki tugas utama untuk melakukan implementasi E-Government.

Mengusung program E-Government bukan suatu pekerjaan mudah. Dinas Kominfo yang dalam hal ini merupakan leading sector penerapan E-Government harus mampu menerjemahkan layanan apa saja yang harus dimiliki untuk mencapai predikat E-Government.

Inixindo Jogja sebagai partner pengembangan SDM Dinas Kominfo, mengundang Bapak/Ibu dalam acara community day yang akan diisi dengan sharing session mengenai :

10 URUSAN DISKOMINFO DALAM IMPLEMENTASI E-GOVERNMENT

Acara ini akan membahas mengenai 10 urusan layanan E-Government yang diturunkan menjadi kelompok tugas, petunjuk teknis dan pelaksanaan, kompetensi, serta pelatihan SDM untuk pemenuhan kompetensi.

Adapun detail pelaksanakan acara tersebut adalah sebagai berikut :

Hari/Tanggal : Kamis, 27 Juli 2017
Waktu : 14.00 – selesai
Tempat : INIXINDO Jogja, Jalan Kenari No. 69 Yogyakarta
Biaya Kontribusi : GRATIS  (undangan berlaku untuk 2 orang)

Belajar Machine Learning Dengan Python (Bagian 2)

Belajar Machine Learning Dengan Python (Bagian 2)

Pada artikel Belajar Machine Learning Dengan Python (Bagian 1) , kita telah membahas mengenai  langkah 1 sampai 3. Artikel ini adalah lanjutan langkah  untuk memulai proyek Machine Learning.

  • Visualisasi Data

Dalam melakukan visualisasi data, ada dua jenis plot:

  1. Plot Univariate

Kita mulai dengan beberapa plot univariat, yaitu plot dari masing-masing variabel individu. Mengingat bahwa variabel inputnya numerik, kita bisa membuat jenis plot box.

# box and whisker plots

dataset.plot(kind='box', subplots=True, layout=(2,2), sharex=False, sharey=False)

plt.show()

Belajar Machine Learning Dengan Python (Bagian 2) 5

Selanjutnya juga bisa membuat histogram masing-masing variabel input untuk mendapatkan ide tentang distribusi.

# histograms

dataset.hist()

plt.show()

Belajar Machine Learning Dengan Python (Bagian 2) 6

2. Plot Multivariate

Selanjutnya kita bisa melihat interaksi antar variabel. Pertama, kita lihat scatterplots dari semua pasang atribut. Hal ini dapat membantu melihat hubungan terstruktur antara variabel input

# scatter plot matrix

scatter_matrix(dataset)

plt.show()

 

Dari hasil output dapat dilihat pengelompokan diagonal beberapa pasang atribut. Hal ini menunjukkan korelasi yang tinggi dan hubungan yang dapat diprediksi.

Belajar Machine Learning Dengan Python (Bagian 2) 7

  1. Evaluasi Beberapa Algoritma

 

Langkah berikutnya adalah membuat beberapa model data dan memperkirakan akurasi mereka pada data yang tidak terlihat.

Beberapa hal yang dapat dilakukan di langkah ini adalah:

  1. Pisahkan dataset validasi
  2. Set up test harness untuk menggunakan validasi silang 10 kali lipat
  3. Bangun 5 model yang berbeda untuk memprediksi spesies dari pengukuran bunga
  4. Pilih model yang terbaik

 

  • Membuat validasi dataset

Validasi ini dilakukan untuk mengetahui bahwa model yang dibuat itu bagus. Kita akan menggunakan metode statistik untuk memperkirakan keakuratan model yang dibuat pada data yang tidak terlihat. Juga diinginkan perkiraan yang lebih konkret mengenai keakuratan model teraik pada data yang tidak terlihat dengan mengevaluasi data aktual yang tidak terlihat.

 

Artinya, kita akan menahan beberapa data yang tidak dapat dilihat oleh algoritma dan akan menggunakan data ini untuk mendapatkan informasi tentang seberapa akurat model terbaik sebenarnya.

 

Kita akan membagi datateset yang telah dimuat menjadi dua, 80% diantaranya akan digunakan untuk melatih model dan 20% digunakan untuk data validasi.

# Split-out validation dataset

array = dataset.values

X = array[:,0:4]

Y = array[:,4]

validation_size = 0.20

seed = 7

X_train, X_validation, Y_train, Y_validation = model_selection.train_test_split(X, Y, test_size=validation_size, random_state=seed)

Setelah perintah di atas dieksekusi, kita sudah memiliki dua data yaitu X_train dan Y_train untuk mempersiapkan model dan rangkaian X_validation dan Y_validation yang dapat digunakan selanjutnya.

 

  • Test Harness

 

Kita akan menggunakan validasi silang 10 kali lipat untuk memperkirakan akurasi. Untuk itu dataset dibagi menjadi 10 bagian, 9 untuk latihan dan 1 untuk pengujian dan ulangi untuk semua kombinasi.

 

# Test options and evaluation metric

seed = 7

scoring = 'accuracy'

 

Perintah di atas menggunakan metrik “accuracy” untuk mengevaluasi model. Ini adalah rasio dari jumlah kejadia yang diprediksi dengan benar dibagi dengan jumlah total kasus dalam dataset dikalikan dengan 100 untuk memberikan persentase (misalnya 95% akurat).  Kita akan menggunakan variabel penilaian saat menjalankan build dan mengevaluasi setiap model di langkah selanjutnya

 

  • Membangun Model

Kita tidak tahu algoritma mana yang bagus dalam masalah ini atau konfigurasi apa yang akan digunakan. Untuk itu kita evaluasi 6 algoritma yang berbeda:

 

  • Logistic Regression (LR)
  • Linear Discriminant Analysis (LDA)
  • K-Nearest Neighbors (KNN).
  • Classification and Regression Trees (CART).
  • Gaussian Naive Bayes (NB).
  • Support Vector Machines (SVM).
# Spot Check Algorithms

models = []

models.append(('LR', LogisticRegression()))

models.append(('LDA', LinearDiscriminantAnalysis()))

models.append(('KNN', KNeighborsClassifier()))

models.append(('CART', DecisionTreeClassifier()))

models.append(('NB', GaussianNB()))

models.append(('SVM', SVC()))







# evaluate each model in turn

results = []

names = []

for name, model in models:

kfold = model_selection.KFold(n_splits=10, random_state=seed)

cv_results = model_selection.cross_val_score(model, X_train, Y_train, cv=kfold, scoring=scoring)

results.append(cv_results)

names.append(name)

msg = "%s: %f (%f)" % (name, cv_results.mean(), cv_results.std())

print(msg)

 

  • Memilih Model Terbaik

 

Kita sudah memiliki 6 model dan estimasi akurasi untuk masing-masing. Selanjutnya perlu membandingkan model satu dengan lainnya dan pilih yang paling akurat.

 

Dari eksekusi script di atas, kita mendapatkan hasil mentah sebagai berikut:

 

LR: 0.966667 (0.040825)

LDA: 0.975000 (0.038188)

KNN: 0.983333 (0.033333)

CART: 0.975000 (0.038188)

NB: 0.975000 (0.053359)

SVM: 0.991667 (0.025000)

 

Dari hasil output di atas, kita dapat melihat bahwa SVM memiliki nilai akurasi perkiraan terbesar.

Kita juga dapat membuat plot hasil evaluasi model  dan membandingkan penyebaran dan akurasi rata-rata masing-masing model.

 

# Compare Algorithms

fig = plt.figure()

fig.suptitle('Algorithm Comparison')

ax = fig.add_subplot(111)

plt.boxplot(results)

ax.set_xticklabels(names)

plt.show()


Belajar Machine Learning Dengan Python (Bagian 2) 8

  • Membuat Prediksi

 

Setelah mengetahui model yang paling akurat yaitu SVM, selanjutnya kita dapat mencoba melakukan pengujian tentang keakuratan model SVM terhadap data yang ada.

 

# Make predictions on validation dataset

svm = SVC()

svm.fit(X_train, Y_train)

predictions = svm.predict(X_validation)

print(accuracy_score(Y_validation, predictions))

print(confusion_matrix(Y_validation, predictions))

print(classification_report(Y_validation, predictions))

 

Menghasilkan output :

Belajar Machine Learning Dengan Python (Bagian 2) 9

Confusion matrix memberikan indikasi dari tiga kesalahan yang dibuat.

Akhirnya, laporan klasifikasi (classification report) memberikan rincian setiap kelas (class-species) dengan precision, recall, f1-score dan support yang menunjukkan hasil yang sangat baik.

***

Jika Anda ingin mempelajari machine learning lebih dalam lagi, Anda bisa mengikuti kelas pelatihan machine learning di Inixindo Jogja

 

Sumber: Article “Your First Machine Learning Project in Python Step-By-Step”, http://machinelearningmastery.com

Mustofa

Manager Edukasi Inixindo Jogja

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah

Memasuki tahun 2017, Pemerintah Republik Indonesia melalui Kementerian Komunikasi dan Informatika membuat peraturan mengenai pendirian Dinas Komunikasi dan Informatika di seluruh kabupaten/kota di Indonesia. Hal ini dilakukan untuk percepatan implementasi e-government di Indonesia. Sebagai perpanjangan tangan pemerintah pusat, Dinas Komunikasi dan Informatika menjadi Organisasi Perangkat Daerah (OPD) utama dalam urusan komunikasi, informatika, dan termasuk statistik serta persandian.

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 10

Sebagi OPD baru, banyak aparatur sipil negara (ASN) yang menduduki jabatan di Dinas Kominfo belum memahami benar mengenai tugas pokok dan fungsinya dalam kegiatan sehari-hari. Inixindo Jogja bekerja sama dengan Dinas Komunikasi Informatika Statistik dan Persandian Provinsi Kalimantan Tengah dan didukung oleh Kementerian Kominfo Republik Indonesia mengadakan Forum Diskusi bertajuk “Mempersiapkan Dinas Kominfo Sebagai Leading Sector Penerapan E – Government Di Daerah” pada hari Senin, 24 Juli 2017. Bertempat di Aula Dinas Komunikasi Informatika Statistik dan Persandian Provinsi Kalimantan Tengah, acara ini dihadiri oleh seluruh perwakilan dari 14 kabupaten/kota yang ada di Provinsi Kalimantan Tengah.

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 11

Bapak Bambang Dwi Anggono atau yang akrab disapa Pak Ibenk yang merupakan Kasubdit Teknologi dan Infrastruktur e-Government Kementerian Kominfo Republik Indonesia didaulat menjadi narasumber bersama dengan Bapak Andi Yuniantoro, Direktur Inixindo Jogja. Dalam forum diskusi, Pak Ibenk banyak memaparkan mengenai anjuran pemerintah pusat tentang implementasi e-government yang menjadi tugas pokok Dinas Kominfo. Pak Ibenk juga banyak memberikan arahan mengenai pentingnya pelatihan dan pengembangan SDM untuk memenuhi kompetensi yang dibutuhkan oleh ASN Dinas Kominfo. Bapak Andi Yuniantoro selaku Direktur Inixindo Jogja memberikan paparan mengenai perkembangan dunia dan teknologi di masa kini, bagaimana informasi dapat memberikan pengaruh besar termasuk di bidang pemerintahan. Beliau juga memberikan paparan mengenai 10 urusan Dinas Kominfo yang sudah disusun oleh tim Inixindo Jogja.

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 12

Perwakilan dari masing-masing kabupaten/kota sangat antusian dan menyambut baik kegiatan yang digagas oleh Inixindo Jogja dan Dinas Komunikasi Informatika Statistik dan Persandian Provinsi Kalimantan Tengah ini. Para peserta sangat terbantu dengan paparan dan diskusi yang diadakan sehingga mereka mulai memahami mengenai tupoksi Dinas Kominfo dengan masing-masing bidang jabatannya.

Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 13 Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 14  Diskusi Bersama Persiapan Implementasi E-Government Dinas Kominfo Se-Kalimantan Tengah 15