Rabu, 11 Desember 2024

Perbedaan Utama Antara Supervised Learning dan Unsupervised Learning



Apa itu Supervised Learnig?

Supervised learning adalah suatu pendekatan dalam pembuatan AI. Disebut “supervised” karena dalam pendekatan ini, machine learning dilatih untuk mengenali pola antara input data dan label output. Tidak hanya itu, machine learning juga dilatih untuk mengidentifikasi hubungan yang mendasari koneksi input data dengan label output.

Jika diibaratkan, supervised learning adalah belajar di sekolah. Saat belajar di sekolah, Anda mempelajari materi atau mata pelajaran yang sudah ditentukan. Supervised learning pun demikian, machine learning dilatih untuk mempelajari data yang telah diberi label khusus.        

Contoh algoritma yang digunakan pada supervised learning meliputi :

  1. Clasification (Categorical) and Regression (Numerical)
  2. Logistic Regression
  3. Model Ensemble
  4. Time series

Apa itu Unsupervised Learnig?

Unsupervised learning atau pembelajaran tak terarah adalah teknik pembelajaran mesin di mana pengguna tidak perlu mengawasi modelnya. Sebaliknya, pembelajaran tak terarah memungkinkan model bekerja sendiri untuk menemukan pola dan informasi yang sebelumnya tidak terdeteksi, terutama yang berkaitan dengan data yang tidak berlabel.

Algoritma unsupervised learning memungkinkan pengguna untuk melakukan tugas pemrosesan yang lebih kompleks dibandingkan dengan supervised learning. Namun, pembelajaran tak terarah bisa lebih tidak terduga dibandingkan dengan metode pembelajaran alami lainnya. Algoritma pembelajaran tak terarah termasuk pengelompokan, deteksi anomali, jaringan saraf, dan lain-lain.

Contoh algoritma yang digunakan pada supervised learning meliputi 

  1. K-Means
  2. hierarcikal clastering
  3. DBMSCAM

perbedaan antar supervised Learning dan Unsupervised Learnig:

 Perbedaan yang paling mendasar terletak pada bagaimana algoritma komputer bekerja dalam masing-masing pendekatan. Pada supervised learning, algoritma dilatih terlebih dulu baru bisa bekerja. Sedangkan algoritma komputer unsupervised learning telah dirancang untuk bisa langsung bekerja walaupun tanpa dilatih terlebih dulu.

Untuk memudahkan Anda, berikut adalah beberapa poin yang membedakan supervised dan unsupervised learning:

1. Kegunaan

Jika dilihat dari kegunaannya, kedua pendekatan ini sangat berbeda. Supervised learning akan membantu Anda untuk mengumpulkan atau memproduksi output data dari pengalaman yang sudah pernah terjadi. Hal ini mirip dengan memori manusia. Anda baru bisa mengingat nama seseorang ketika sudah pernah berkenalan atau bertemu.

Sementara itu, unsupervised learning lebih sering digunakan untuk menemukan seluruh pola yang tidak dikenal dalam data. Contoh penerapan yang sudah sering digunakan dalam kehidupan sehari-hari adalah prediksi waktu pada peta digital. Saat menggunakan peta digital untuk mencari rute menuju lokasi tertentu, sistem akan mencantumkan prediksi waktu tempuh. Padahal, Anda belum pernah berkendara ke lokasi tersebut.

2. Proses kerja

Pada model supervised learning, Anda akan mendapatkan variabel data input dan output. Namun, hal ini tidak terjadi pada unsupervised learning. Pada pendekatan tersebut, Anda hanya akan mendapatkan data input.

Ini karena supervised learning memungkinkan Anda untuk mengumpulkan atau memproduksi output data yang didapat dari pengalaman sebelumnya. Sementara itu, unsupervised learning tidak dirancang untuk “belajar” dari pengalaman sebelumnya sehingga tidak menghasilkan output data.

3. Proses belajar

Seperti yang sudah Anda ketahui, machine learning melakukan pembelajaran untuk bisa mengenali data. Namun, proses belajar tiap pendekatan machine learning berbeda-beda. Ada yang melakukannya secara real-time, tapi ada juga yang melakukannya secara offline atau mempersiapkan materi belajar sebelum berhadapan langsung dengan data.

Pada supervised learning, algoritma komputer melakukan pembelajaran secara offline sebelum menghadapi data. Artinya, komputer “dibekali” sejumlah materi tertentu agar nanti dapat mengenali data dengan mudah.

Hal ini tidak terjadi pada unsupervised learning. Pada pendekatan ini, algoritma komputer mempelajari data secara real-time. Itu artinya, ketika komputer berhadapan dengan data, pada saat itu juga, komputer belajar mengenali data.

Kesimpulan

Baik supervised maupun unsupervised learning adalah pendekatan yang dilakukan algoritma komputer dalam mengenali pola pada data. Supervised mengenali data dari label khusus yang telah diberikan sebelumnya, sedangkan unsupervised mengenali data secara real-time begitu data disajikan.




Apa perbedaan antara DDL,DML,DCL danTCL?Apa apa saja codenya?,yuk,kita pahami bersama!




DDL (Data Definition Language)

        Command DDL (Data Definition Language) merupakan command yang berisi perintah-perintah untuk mendefinisikan skema di database, seperti untuk membuat, memodifikasi, serta menghapus struktur database. Perintah ini biasanya akan banyak digunakan saat awal pembuatan database, dan jarang digunakan oleh pengguna umum yang seharusnya mengakses database melalui aplikasi.

 Beberapa perintah yang termasuk ke dalam DDL adalah:

  • CREATE: Digunakan untuk membuat database atau objeknya (seperti tabel, indeks, function, views, store procedure, dan trigger).

  • DROP: Dapat digunakan untuk menghapus objek dari database.

  • ALTER: Perintah ini digunakan untuk mengubah struktur database.

  • TRUNCATE: Ini digunakan untuk menghapus semua record dari tabel, termasuk semua space yang dialokasikan untuk semua record yang dihapus.

  • COMMENT: Perintah ini digunakan untuk menambahkan komentar ke kamus data.

  • RENAME: Perintah ini digunakan untuk mengganti nama objek yang ada di database.


DML (Data Manipulation Language)

        Command DML (Data Manipulation Language) merupakan command yang berhubungan dengan proses manipulasi data yang ada di database, yang umumnya mencakup hampir sebagian besar statement SQL.

 Beberapa perintah yang termasuk ke dalam kategori DML adalah:

  • INSERT : Perintah ini dapat digunakan untuk memasukkan data ke dalam tabel.

  • UPDATE: Digunakan untuk memperbarui data yang ada dalam tabel.

  • DELETE : Ini bermanfaat untuk menghapus record dari tabel database.

  • LOCK: Tabel kontrol konkurensi.

  • CALL: Untuk memanggil subprogram PL/SQL atau JAVA.

  • EXPLAIN PLAN: Perintah ini digunakan untuk menjelaskan jalur akses ke data.


DCL (Data Control Language)

        Command selanjutnya adalah DCL yang merupakan singkatan dari Data Control Language. Pada dasarnya, pernyataan DCL dikelompokkan dengan pernyataan DML. Sehingga perintah yang ada di command ini berguna untuk mengontrol hak akses database (privilege) dan memanipulasi user database. 

Perintah yang termasuk ke dalam kelompok DCL adalah GANT dan REVOKE.

  • GRANT: Perintah ini berguna untuk memberi pengguna hak akses ke database.

  • REVOKE: Berguna untuk menarik hak akses pengguna yang diberikan dengan menggunakan perintah GRANT. Sederhananya, REVOKE adalah kebalikan dari GRANT.

TCL (Transaction Control Language)

Command TCL merupakan singkatan dari Transaction Control Language, yang berguna untuk mengurus berbagai transaksi dalam database. Setiap transaksi dimulai dengan tugas yang spesifik dan berakhir ketika semua tugas dalam grup berhasil diselesaikan. Jika salah satu tugas gagal, maka transaksi juga akan gagal. Karena hal itulah, hasil dari sebuah transaksi hanya memiliki dua kemungkinan, yaitu sukses atau gagal. 

Beberapa perintah yang termasuk ke dalam kelompok TCL adalah:

  • BEGIN: Digunakan untuk membuka Transaksi.

  • COMMIT: Bermanfaat untuk melakukan Transaksi.

  • ROLLBACK: Perintah ini berguna untuk mengembalikan transaksi jika terjadi kesalahan.

  • SAVEPOINT: Digunakan untuk menetapkan titik simpan dalam suatu transaksi.

  • SET TRANSACTION: Menentukan karakteristik untuk transaksi.


Mengapa harus memahami DDL,DML, dan DCL:

    Memahami DDL, DML, DCL, dan TCL sangat penting bagi siapa saja yang bekerja dengan basis data.Sistem basis data memungkinkan kita untuk menyimpan dan mengelola informasi pribadi, seperti kontak, jadwal, dan catatan pribadi dengan mudah. Misalnya, aplikasi seperti Google Contacts, Google Calendar, atau Evernote yang memungkinkan kita menyimpan dan mengakses informasi pribadi dari mana saja dan kapan saja.

 Dengan memahami bahasa-bahasa ini, kita bisa:

Merancang basis data yang efisien: Dengan menggunakan DDL, kita bisa merancang struktur basis data yang sesuai dengan kebutuhan kita. 
Mengelola data dengan efektif: Dengan menggunakan DML, kita bisa dengan mudah memasukkan, mengubah, dan menghapus data dalam basis data. 
Menjaga keamanan data: Dengan menggunakan DCL, kita bisa mengatur hak akses pengguna sehingga data kita aman dari akses yang tidak sah. 

Kesimpulan:
DDL,DML,DCL dan TCL adalah bahasa query yang digunakan untuk membuat database
Dengan memahami bahasa-bahasa ini, kita bisa mengelola basis data dengan lebih efektif dan efisien.