Mengenal Lebih Dekat Artificial Intelligence
Reno Iqbalsah
11 Juli 2023
Picture by Markus Spiske on Unsplash
Artificial Intelligence (AI) sudah menjadi state-of-the-art dalam dunia pengembangan, semua orang dan perusahaan berlomba untuk membuat AI berkualitas tinggi. Lantas, apa sebenarnya Artificial Intelligence itu?
Banyak sekali kita akhir-akhir ini mendengar tentang Artificial Intelligence (AI), mulai dari Chat-GPT dari OpenAI yang kemudian disusul oleh Google yang tak mau kalah dengan Bard, berbagai macam AI untuk membuat gambar dan ilustrasi seperti Stable Diffusion, Runway, hingga yang masih hangat di telinga kita AI Generative Fill yang dikembangkan oleh adobe dengan model Firefly.
Lantas, sebenarnya apa sih AI itu? Bagaimana AI bekerja? Dan baigaimana kita bisa membuat sebuah AI yang berkualitas?
Pengertian Artificial Intelligence
Secara umum, artificial intelligence (AI), adalah segala bentuk usaha untuk mereplika kemampuan otak manusia. Baik secara fisik seperti meniru gerakan manusia pada robot, maupaun secara akal / mental yang membuat mesin seolah-olah dapat berpikir layaknya manusia.
Di dalam ilmu artificial intelligence ini, terdapat sebuah sub-ilmu bernama machine learning yang di dalamnya mencakup deep learning, yang dapat diilustrasikan dalam gambar berikut ini.
AI yang biasa kita kenal seperti ChatGPT, Bard, Adobe Firefly, dan sebagainya jatuh ke dalam bidang ilmu deep learning.
Bagaimana AI Bekerja?
AI, atau dalam hal ini Machine Learning, adalah sebuah ilmu data (data science) yang berfokus pada pembuatan model statistika untuk memprediksi sebuah kejadian berdasarkan kejadian yang sudah lampau / sudah pernah terjadi.
Yang menarik dari machine learning adalah, bidang ini sedikit berbeda dengan bidang pemrograman yang lainnya. Pada pemrograman konvensional, kita harus menuliskan / memprogram seluruh fungsi dan instruksi agar program tersebut dapat berjalan. Sedangkan dengan machine learning, kita akan membuat sebuah “model” yang kemudian kita lakukan training dengan data berupa input dan output, yang kemudian model tersebut secara otomatis akan menyesuaikan algoritmanya sendiri untuk dapat menyelesaikan suatu tugas yang diberikan.
Agar lebih mudah, mari kita ilustrasikan proses ini sebagai proses memasak ayam bakar. Kita ilustrasikan bahwa alur proses memasak ayam bakar adalah seperti berikut ini.
Ilustrasi Pemrograman Konvensional
Bayangkan kita melihat video youtube tentang resep ayam bakar, kemudian kita mencoba membuat ayam bakar sendiri dengan mengikuti resep tersebut. Kita akan menyiapkan seluruh bahan-bahan, dan mengikuti seluruh instruksi yang diberikan, maka kita ilustrasikan proses tersebut seperti dibawah ini.
Ayam goreng yang kita hasilkan akan sangat bergantung seberapa baik kita menyiapkan bahan dan mengikuti resep yang diberikan. Sebagaimana dalam pemrograman, outputnya akan bergantung pada seberapa baik data input kita dan seberapa baik kita dalam menulis kode untuk memproses data tersebut.
Ilustrasi Proses Training AI / Machine Learning
Sekarang, kita bayangkan membeli seporsi ayam bakar, ayam bakar ini sangat enak sehingga kita ingin memakannya berkali-kali. Namun, harganya cukup mahal sehingga kita ingin mencoba memasak sendiri dengan meniru rasa dari ayam bakar yang anda beli tersebut. Kita ilustrasikan prosesnya seperti di bawah ini.
Kita akan berusaha memasak berkali-kali, menambah dan mengurangi takaran bumbu, mencoba berapa lama anda harus memasak dan melakukan marinasi, dan sebagainya hingga rasa ayam bakar yang anda buat mirip atau sama dengan ayam bakar favorit kita tersebut. Setelah kita menemukan resep yang sangat mirip dengan contoh tersebut, kita dapat menulisnya dan dapat membuat kembali ayam bakar tersebut di lain waktu.
Kualitas dari ayam bakar tersebut akan sangat bergantung pada kualitas bahan, pemilihan bahan-bahan yang tepat, dan kualitas rasa dari barang jadi yang kita gunakan sebagai contoh.
Hal ini sama dengan machine learning, kita akan memasukkan data berupa input dan output untuk melakukan training kepada sebuah model machine learning, kemudian model tersebut akan mencoba berbagai macam kemungkinan dan “belajar” bagaimana input yang kita masukkan berkaitan dengan output yang dihasilkan.
Misalnya kita ingin memprediksi apakah hari ini akan turun hujan atau tidak, kita membuat sebuah model dengan memasukkan data historis seperti kelembaban udara, suhu udara, waktu, musim yang berlangsung saat ini, dan output berupa apakah saat itu turun hujan atau tidak. Setelah training dilakukan, kita dapat melakukan evaluasi terhadap model tersebut dengan mengukur akurasi model tersebut. Hal ini dapat kita lakukan berkali-kali hingga kita mendapatkan model yang sesuai dengan kebutuhan kita.
Hal-Hal Penting dalam Pengembangan AI
Teknologi yang semakin berkembang, membuat siapapun dapat membuat AI sendiri. Namun, sebelum kita melangkah lebih jauh, ada beberapa hal yang perlu diperhatikan. Beberapa hal berikut harus kita perhatikan untuk bisa mendapatkan hasil terbaik.
1. Kualitas Data
Kualitas data merupakan hal yang paling utama dalam membuat sebuah model machine learning, kualitas dari model akan bergantung sangat besar dengan kualitas dan ketersediaan data. Berikut ini beberapa keahlian yang berkaitan untuk menghasilkan data yang berkualitas.
- Pemilihan feature / input. Feature yang kita gunakan haruslah sesuai dengan model yang akan kita buat. Misalnya kita membuat model prediksi cuaca, maka kita harus menggunakan feature yang berhubungan dengan keadaan cuaca, misalnya tekanan udara, suhu udara, kondisi musim, dan sebagainya
- Data cleansing dan preprocessing, data yang kita miliki / dapatkan mungkin belum terstruktur secara rapi, atau masih banyak missing data. Maka, sebelum kita memasukkannya dalam algoritma machine learning, kita harus melakukan cleansing dan preprocessing terlebih dahulu.
- Data visualization dan Exploratory Data Analysis (EDA), melakukan visualisasi data dan EDA dapat membantu kita menemukan insight terhadap data yang kita miliki. Misalnya seberapa besar standar deviasi dari data kita, bagaimana hubungan antar feature, dan sebagainya.
2. Kemampuan Programming
Tidak dapat dielakkan bahwa kemampuan programming sangat dibutuhkan dalam membuat sebuah AI. Bahasa pemrograman seperti Python, C, C++, Scala, Rust, dan sebagainya cukup “powerful” digunakan untuk membuat algoritma machine learning.
Kita juga dapat memanfaatkan berbagai macam library atau framework untuk mempermudah proses pengembangan AI kita. Misalnya dalam bahasa pemrograman Python, kita bisa memanfaatkan framework seperti Scikit-Learn, Pytorch, ataupun TensorFlow 2.0.
3. Pemilihan Algoritma
Ada berbagai macam algoritma yang dapat kita gunakan dalam membuat model machine learning, mulai dari regression, decision tree, hingga neural networks, semuanya memiliki kelebihan dan kekurangan masing-masing. Kita harus dapat mengidentifikasi permasalahan yang akan kita pecahkan, apakah permasalahan tersebut masuk ke dalam ranah regresi, klasifikasi, ataupun kita ingin membuat model generatif.
4. Penguasaan Bidang
Secara teori, kita dapat menyelesaikan berbagai macam permasalahan dengan menggunakan machine learning / AI. Namun, ada baiknya kita juga menguasai bidang permasalahan yang akan kita selesaikan atau setidaknya berkonsultasi dengan seseorang yang memiliki keahlian di bidang tersebut. Keahlian dalam bidang tersebut akan membantu kita memahami dan menentukan feature apa saja yang dibutuhkan dalam pengembangan AI.
Misalnya kita ingin membuat prediksi cuaca, maka ada baiknya kita berkonsultasi dengan ahli meteorologi tentang faktor apa saja yang memengaruhi kondisi cuaca, atau gejala alam seperti apa yang menunjukkan bahwa akan turunnya hujan, dan sebagainya.
Meski pada awalnya terlihat cukup rumit, tetapi pengembangan AI merupakan suatu bidang ilmu yang cukup menarik untuk ditelisik lebih dalam. Belajar pengembangan AI akan memperdalam kemampuan pemrograman dan analisis kita. Kemauan untuk belajar dan terus bereksperimen adalah kunci dalam pengembangan AI yang berkualitas.
Siapapun dapat melakukannya, termasuk kita. Sangat banyak sumber daya yang dapat kita manfaatkan secara cuma-cuma. Mari kita manfaatkan teknologi AI secara bijak, untuk mendukung dunia digital, dan menciptakan dunia yang lebih baik untuk masa mendatang.