Ukuran kemiripan yang diawasi

Daripada membandingkan data fitur yang digabungkan secara manual, Anda dapat mengurangi data ke representasi yang disebut embeddings, lalu membandingkan embedding yang berbeda. Embeddings dihasilkan dengan melatih neural dalam yang diawasi jaringan (DNN) pada fitur data itu sendiri. Embedding memetakan data fitur ke vektor dalam embedding ruang yang biasanya memiliki lebih sedikit dimensi daripada data fitur. Embeddings adalah yang dibahas dalam Embedding modul Kursus Singkat Machine Learning, sedangkan jaringan neural dibahas dalam Jaringan neural ruang lingkup modul ini. Menyematkan vektor untuk contoh serupa, seperti video YouTube di topik serupa yang ditonton oleh pengguna yang sama, berakhir berdekatan dalam spasi. Ukuran kemiripan yang diawasi menggunakan “kedekatan” ini untuk mengukur kesamaan untuk pasangan contoh.

Ingat, kita membahas supervised learning hanya untuk menciptakan kesamaan ukur. Ukuran kesamaan, baik manual maupun supervised, yang kemudian digunakan oleh algoritma untuk melakukan pengelompokan tanpa pengawasan.

Perbandingan Tindakan Manual dan yang Diawasi

Tabel ini menjelaskan kapan harus menggunakan kemiripan manual atau yang diawasi diukur berdasarkan kebutuhan Anda.

PersyaratanManualDiawasi
Menghilangkan informasi yang berlebihan dalam fitur terkait? Tidak, Anda perlu menyelidiki korelasi antara fitur. Ya, DNN menghilangkan informasi yang berlebihan.
Memberikan insight tentang kesamaan yang dihitung? Ya Tidak, embedding tidak dapat diuraikan.
Cocok untuk {i>dataset<i} kecil dengan sedikit fitur? Ya. Tidak, {i>dataset<i} kecil tidak menyediakan data pelatihan yang cukup untuk DNN.
Cocok untuk {i>dataset<i} besar dengan banyak fitur? Tidak, hapus informasi yang berlebihan dari beberapa fitur secara manual dan kemudian menggabungkannya sangat sulit. Ya, DNN secara otomatis menghilangkan informasi yang berlebihan dan menggabungkan fitur.

Membuat ukuran kemiripan yang diawasi

Berikut adalah ringkasan proses untuk membuat ukuran kemiripan yang diawasi:

Masukkan data fitur. Pilih DNN: autoencoder atau prediktor.
      Mengekstrak embeddings. Pilih pengukuran: Perkalian titik, kosinus, atau
      Jarak Euclidean.
Gambar 1: Langkah-langkah untuk membuat kemiripan yang diawasi ukur.

Halaman ini membahas DNN, sedangkan halaman berikut membahas langkah selanjutnya.

Pilih DNN berdasarkan label pelatihan

Kurangi data fitur menjadi embedding dimensi yang lebih rendah dengan melatih DNN yang menggunakan data fitur yang sama, baik sebagai input maupun sebagai label. Misalnya, di dalam kasus data rumah, DNN akan menggunakan fitur—seperti harga, ukuran, dan kode pos—untuk memprediksi fitur itu sendiri.

Autoencoder

DNN yang mempelajari embedding data input dengan memprediksi data input itu sendiri disebut autoencoder. Karena lapisan tersembunyi autoencoder lebih kecil daripada lapisan input dan output, autoencoder dipaksa untuk mempelajari yang terkompresi dari data fitur input. Setelah DNN dilatih, mengekstrak embeddings dari lapisan tersembunyi terkecil untuk menghitung kesamaan.

Gambar yang menunjukkan sejumlah besar node untuk node yang identik
       data input dan {i>output<i}, yang dikompresi 
menjadi tiga {i>node<i} di tengah.
       dari lima lapisan tersembunyi.
Gambar 2: Arsitektur autoencoder.

Prediktor

Autoencoder adalah pilihan paling sederhana untuk menghasilkan embedding. Namun, {i>autoencoder <i}bukan pilihan optimal ketika fitur tertentu bisa lebih lebih penting dari yang lain dalam menentukan kesamaan. Misalnya, dalam data internal, menganggap harga lebih penting daripada kode pos. Dalam kasus semacam itu, gunakan fitur penting sebagai label pelatihan untuk DNN. Karena DNN ini fitur input tertentu, bukan semua fitur input, disebut DNN prediktif. Embedding biasanya harus diekstrak dari lapisan embedding terakhir.

Gambar yang menunjukkan sejumlah besar node dalam vektor input
       dikurangi melalui tiga lapisan tersembunyi menjadi lapisan tiga {i>node<i} yang
       embedding harus diekstrak. Lapisan output terakhir adalah lapisan
       nilai label.
Gambar 3: Arsitektur prediktif.

Saat memilih fitur untuk diberi label:

  • Memilih fitur numerik daripada kategoris karena kerugian lebih mudah dihitung dan diinterpretasikan untuk fitur numerik.

  • Hapus fitur yang Anda gunakan sebagai label dari input ke DNN, atau jika tidak, DNN akan menggunakan fitur itu untuk memprediksi {i>output<i} secara sempurna. (Ini adalah contoh ekstrem dari kebocoran label.)

Tergantung pada pilihan label Anda, DNN yang dihasilkan adalah {i>autoencoder<i} atau sebuah prediktor.