AI Menggunakan Python -...

Post on 14-Mar-2019

407 views 53 download

Transcript of AI Menggunakan Python -...

AI Menggunakan Python

Djoko Purwanto

Materi Presentasi

Artificial Intelligence (AI)

Machine Learning

Deep Learning

Frameworks

TensorFlow

Studi Kasus

Artificial Intelligence (AI)

Artificial Intelligence (AI) atau kecerdasan buatan adalah cara untuk membuat mesin berpikir dan berperilaku cerdas.

Mesin dikendalikan oleh perangkat lunak di dalamnya, sehingga AI memiliki banyak kaitannya dengan perangkat lunak cerdas yang mengontrol mesin tersebut.

Ilmu pengetahuan menemukan teori dan metodologi yang dapat membantu mesin memahami dunia dan dengan demikian bereaksi terhadap situasi dengan cara yang sama seperti manusia.

Tentang Artificial Intelligence (AI)

Diskripsi Artificial Intelligence

Machine Learning

Machine Learning mengajarkan mesin atau komputer untuk melakukan apa yang alami bagi manusia dan hewan yaitu “belajar dari pengalaman”.

Algoritma machine learning menggunakan metode komputasi untuk “belajar” informasi langsung dari data tanpa bergantung pada persamaan yang telah ditentukan sebagai model.

Algoritma machine learning secara adaptif meningkatkan kinerja mereka sesuai jumlah sampel yang tersedia untuk peningkatan pembelajaran (learning).

Tentang Machine Learning

Machine Learning dan Aplikasinya

Algoritma machine learning menemukan pola-pola alami dalam data yang menghasilkan wawasan dan membantu manusia membuat keputusan dan prediksi yang lebih baik.

Machine learning digunakan setiap hari untuk membuat keputusan penting dalam diagnosis medis, perdagangan saham, perkiraan beban energi, dan lainnya. Situs media bergantung pada machine learning untuk menyaring jutaan opsi untuk memberikan rekomendasi lagu atau film. Pedagang menggunakan machine learning untuk mendapatkan wawasan tentang perilaku pembelian pelanggan mereka.

Supervised Learning

Supervised learning atau pembelajaran dengan pengawasan bertujuan untuk membangun model yang membuat prediksi berdasarkan bukti dengan kondisi ketidakpastian. Algoritma supervised learning membutuhkan set data input yang diketahui dan set data respon (output) yang diketahui terhadap data input, dan melatih model untuk menghasilkan prediksi yang wajar untuk respon terhadap data baru.

Klasifikasi

Regresi

Unsupervised Learning

Unsupervised learning atau pembelajaran tanpa pengawasan bertujuan menemukan pola tersembunyi atau struktur intrinsik dalam data. Hal ini digunakan untuk menarik kesimpulan dari set data yang terdiri dari set data input tanpa data respon (output) berlabel.

Clustering adalah teknik unsupervised learning yang paling umum. Teknik ini digunakan untuk analisis data untuk menemukan pola atau pengelompokan tersembunyi dalam data.

Clustering Patterns in the Data

Clustering

Reinforcement Learning

Reinforcement learning adalah pendekatan komputasi untuk pembelajaran (learning) dengan kondisi agen (agent) mencoba untuk memaksimalkan jumlah total hadiah (reward) yang diterimanya ketika berinteraksi dengan lingkungan (environment) yang kompleks dan tidak pasti.

Implementasi Machine Learning

Machine learning dapat diimplementasikan dengan menggunakan menggunakan arsitektur jaringan saraf tiruan (artificial neural network).

Deep Learning

Deep learning adalah jenis machine learning di mana model belajar melakukan tugas-tugas klasifikasi (classifcation) langsung dari gambar, teks, atau suara. Dalam belajar biasanya diimplementasikan menggunakan arsitektur jaringan saraf tiruan (artificial neural network).

Istilah "deep" mengacu pada jumlah lapisan (layer) dalam jaringan syaraf tiruan, semakin banyak lapisan, semakin “deep” jaringan tersebut. Jaringan syaraf (neural network) tradisional hanya berisi 2 atau 3 lapisan, sementara deep neural network dapat memiliki ratusan.

Deep Learning Timeline

Deep Learning vs Machine Learning

Deep learning adalah salah satu bagian dari machine learning. Dengan machine learning, pengguna secara manual mengekstrak fitur yang relevan dari suatu gambar. Dengan deep learning, pengguna memberi gambar mentah langsung ke dalam jaringan saraf yang mempelajari fitur-fitur secara otomatis.

Pertimbangan Penggunaan Deep Learning

Singkat kata, akurasi.

Perangkat dan metoda canggih yang telah dikembangkan saat ini dan secara dramatis meningkatkan algoritma deep learning ke kemampuan inti sehingga mesin dengan deep learning saat ini dapat mengungguli manusia dalam mengklasifikasikan gambar, menang melawan pemain GO terbaik dunia, atau aktifkan kontrol suara asisten seperti Amazon Echo® dan Google Home untuk mencari dan mengunduh lagu baru yang disuka.

3 (tiga) technology enabler yang membuat tingkat akurasi saat ini bisa dicapai.

Akses mudah ke kumpulan data besar berlabelKumpulan data seperti ImageNet dan PASCAL VoC adalah gratis tersedia, dan berguna untuk pelatihan pengenalan berbagai jenis benda-benda.

Daya komputasi meningkatGPU berkinerja tinggi mempercepat pelatihan besar-besaran dalam jumlah data yang diperlukan untuk deep learning, mengurangi waktu pembelajaran dari minggu ke jam.

Pretrained Model yang dibangun oleh para ahliModel seperti AlexNet dapat dilatih ulang untuk melakukan yang baru tugas pengenalan menggunakan teknik yang disebut pembelajaran transfer (transfer learning). Sementara AlexNet dilatih pada 1,3 juta resolusi tinggi gambar untuk mengenali 1000 objek berbeda, transfer belajar yang akurat dapat dicapai dengan dataset yang jauh lebih kecil.

Aplikasi Deep Learning

Berikut ini beberapa contoh aplikasi deep learning di dunia nyata : Aplikasi ponsel cerdas memberikan terjemahan

instan tanda jalan dalam bahasa asing. Kendaraan yang mengemudi sendiri melambat

saat mendekati penyeberangan pejalan kaki. ATM menolak catatan bank palsu.

Deep learning sangat cocok untuk aplikasi identifikasi seperti pengenalan wajah, terjemahan teks,pengenalan suara, dan sistem bantuan pengemudi yang canggih, termasuk klasifikasi jalur dan pengenalan tanda lalu lintas.

Frameworks

Tentang Frameworks

Keras adalah high-level neural networksAPI, yang ditulis dengan Python dan mampu berjalan di atas TensorFlow, CNTK, atau Theano. Keras dikembangkan dengan fokus untuk memungkinkan eksperimen dengan cepat.

https://www.tensorflow.org/

https://keras.io/

https://www.microsoft.com/en-us/cognitive-toolkit/

https://caffe2.ai/

https://mxnet.apache.org/

https://pytorch.org/

Popularitas Frameworks

TensorFlow menjadi pemenang sebagai framework populer dalam sebuah survey yang dilakukan pada tahun 2018

https://towardsdatascience.com/deep-learning-framework-power-scores-2018-23607ddf297a

Cloud Platforms and Machine Learning Services

https://azure.microsoft.com/en-us/overview/ai-platform/

https://cloud.google.com/products/ai/

TensorFlow

TensorFlow™ adalah library perangkat lunak open source untuk komputasi numerik berkinerja tinggi. Arsitekturnya yang fleksibel memungkinkan penggunaan komputasi yang mudah di berbagai platform(CPU, GPU, TPU), dari desktop ke multi server maupun perangkat seluler. Awalnya dikembangkan oleh para peneliti dan insinyur dari tim Google Brain dalam organisasi Google AI, library ini hadir dengan dukungan kuat untuk machine learning, deep learning dan perhitungan numerik fleksibel yang digunakan di banyak bidang ilmiah.

https://www.tensorflow.org/

TensorFlow for Everyone

Neural Network Playgound

https://playground.tensorflow.org/

Memulai TensorFlow

https://www.tensorflow.org/tutorials/

Menjalankan Program di Cloud

https://colab.research.google.com/

Regresi Non Linier dengan TensorFlow

Tulis dan jalankan program di bawah ini, kemudian amati hasilnya.

Studi Kasus

Program untuk deteksi wajah dituliskan di bawah. Tinggi wajah dalam satuan pixel ditampilkan pada display. Pada studi kasus ini, diinginkan untuk menampilkan jarak kamera terhadap wajah. Dengan teknik regresi menggunakan machine learning, lakukan modifikasi pada program sehingga ditampilkan informasi jarak kamera terhadap wajah dalam satuan cm.

Terima kasih