Bayangkan Anda ingin membuat perangkat lunak untuk melakukan suatu tugas. Ada dua cara utama untuk melakukannya dan satu cara perantara.
Metode kode
Cara pertama adalah memprogram perangkat lunak untuk melakukan tugas tersebut, yang akan saya sebut sebagai "metode kode". Dalam hal ini, Anda mengetahui semua interaksi yang dapat terjadi dan mengantisipasinya dalam program Anda. Contoh paling dasar dari hal ini adalah urutan "Jika maka", di mana Anda memberi tahu komputer, jika ini terjadi, lakukan ini. Sebagai contoh, jika tombol ini diklik maka tampilkan layar ini.
Metode kode tidak menggunakan data dan tidak melibatkan pelatihan. Urutan yang diprogram terjadi secara deterministik, terlepas dari data. Untuk lebih jelasnya, program dapat dibuat menggunakan metode kode yang ditulis dengan kode yang sebenarnya atau menggunakan alat bantu visual atau sejenisnya.
Metode kereta api
Cara kedua adalah melatih perangkat lunak untuk melakukan tugas menggunakan data besar, yang akan saya sebut sebagai "metode latih". Dalam hal ini, Anda menulis sebuah algoritme, seperti jaringan syaraf, untuk memungkinkan perangkat lunak dilatih pada data. Anda kemudian melepaskan perangkat lunak pada data dan komputer belajar, melalui umpan balik, bagaimana melakukan tugas tersebut. Sebagai contoh, Anda dapat mengajarkan perangkat lunak untuk mengenali kucing dengan melatihnya pada gambar kucing.
Metode pelatihan, tentu saja, merupakan inti dari kecerdasan buatan. Metode ini dikenal sebagai pendekatan data besar karena semakin banyak data pelatihan berkualitas tinggi yang tersedia, semakin baik hasilnya. Ada data pelatihan minimum yang diperlukan untuk mendapatkan hasil yang masuk akal.
Dalam bentuknya yang paling murni, metode train dapat menggunakan data yang tidak terstruktur dan pembelajarannya sendiri terjadi dengan cara yang tidak terawasi. Artinya, manusia sama sekali tidak membantu perangkat lunak dalam proses pelatihan.
Algoritme akan belajar dari konteks implisit (bukan dari pelabelan eksplisit) apakah gambar yang diberikan adalah gambar kucing atau bukan. Sebagai contoh, pengguna biasa dari sebuah platform mungkin secara spontan dan ad hoc memasukkan kata kucing ke dalam deskripsi foto mereka, kata kucing mungkin ada di dalam artikel di mana gambar tersebut muncul, atau jika itu adalah sebuah video, orang-orang mungkin mengucapkan kata kucing ketika kucing tersebut muncul. Semua data pengguna ini tentu saja sama sekali tidak terstruktur (yang berarti berantakan), dan algoritme perlu mencari tahu apa itu kucing dari data yang berantakan ini.
Tentu saja, ada potensi keuntungan besar dari sebuah algoritma yang tidak diawasi. Hal ini berpotensi berarti sejumlah besar upaya akan dihemat oleh manusia dalam hal pelabelan dan kategorisasi data. Bukanlah hal yang sepele (atau merangsang dalam hal ini) untuk melabeli seratus ribu gambar kucing secara akurat.
Masalahnya
Salah satu masalah utama dengan metode pelatihan tidak terstruktur adalah bahwa metode ini membutuhkan lebih banyak data. Jika data tidak tersedia, maka tidak dapat dilatih dengan cara ini. Pendekatan yang diawasi juga membutuhkan banyak data, sehingga mengalami masalah yang sama.
Tentu saja, ini adalah alasan mengapa orang mencari peluang untuk menerapkan AI daripada menerapkan AI pada semua hal. Algoritme AI bekerja paling baik ketika banyak data tersedia untuk pelatihan (atau mereka dapat menghasilkan banyak data - dalam kasus game).
Masalah lain dengan pendekatan yang tidak terstruktur dan tidak terawasi adalah jauh lebih sulit untuk menulis dan menguji algoritme pada data yang ada. Algoritme harus lebih canggih untuk menangani data yang tidak terstruktur dibandingkan dengan data yang rapi dan terkategori.
Pendekatan yang diawasi menambahkan kesengajaan manusia ke dalam proses dalam hal bagaimana data dikategorikan, namun tetap saja ini adalah metode pelatihan, sebuah pendekatan data besar. Manusia dengan pemahaman tentang algoritme dapat memberi label pada data dan dengan melakukan hal tersebut, mengurangi kerja algoritme.
Metode data kecil
Ada sebuah metode yang merupakan perpaduan antara metode kode dan metode latih yang akan saya sebut sebagai "metode data kecil". Ini adalah pendekatan data kecil yang saya singgung di judul. Hal ini memungkinkan untuk menggabungkan teknik kode dan melatih untuk mengurangi jumlah data yang diperlukan untuk melatih algoritma secara besar-besaran.
Untuk metode data kecil, pengembang membuat kode model interaksi, tetapi kemudian model ini dilatih pada kumpulan data yang jauh lebih kecil daripada yang diperlukan untuk pendekatan data besar. Hal ini menghasilkan model yang dilatih jauh lebih cepat daripada yang dibutuhkan dengan metode pelatihan murni.
Tentu saja pendekatan data kecil ini akan masuk akal jika waktu yang dibutuhkan untuk membuat kode model dan melatih data jauh lebih sedikit daripada waktu yang dibutuhkan untuk mengumpulkan data dan melatih algoritme.
Ada beberapa skenario di mana solusi data kecil memungkinkan kita untuk melakukan hal-hal yang saat ini tidak memungkinkan. Metode data kecil adalah satu-satunya metode yang tersedia jika data yang diperlukan untuk metode latih tidak ada sejak awal. Dalam hal ini, algoritme perlu dilatih pada data yang dibuat secara manual. Biasanya tidak praktis untuk membuat puluhan ribu catatan dengan tangan.
Pendekatan data kecil saat ini sedang diteliti oleh perusahaan-perusahaan AI termasuk botpress.io, dan saya berharap ini akan menjadi teknik utama di tahun-tahun mendatang.
Bagikan ini:
Buat chatbot AI pribadi Anda sendiri secara gratis
Mulailah membuat bot GPT yang dipersonalisasi dengan antarmuka seret & lepas yang intuitif.
Mulailah - gratis! 🤖Tidak diperlukan kartu kredit
Terus ikuti perkembangan terbaru tentang AI chatbots