PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cara Menggunakan Model Machine Learning KNN dengan 2UDA – PostgreSQL dan Orange (Bagian 1)

Artikel ini memberikan panduan langkah demi langkah untuk memanfaatkan kemampuan Machine Learning dengan 2UDA. Dalam artikel ini, kami akan menggunakan contoh Hewan untuk memprediksi apakah mereka mamalia, Burung, Ikan, atau Serangga.

Versi perangkat lunak

Kami akan menggunakan 2UDA versi 11.6-1 untuk mengimplementasikan model Machine Learning. 2UDA versi 11.6-1 menggabungkan:

  1. PostgreSQL 11.6
  2. Oranye 3.23.0

Anda dapat menemukan versi terbaru 2UDA di sini.

Langkah 1:Muat set data pelatihan ke dalam PostgreSQL

Kumpulan data sampel yang digunakan untuk melatih model kami tersedia di repositori resmi Orange GitHub di sini.

Ikuti langkah-langkah ini untuk memuat data pelatihan ke dalam tabel PostgreSQL:

  1. Hubungkan ke PostgreSQL melalui psql, OmniDB, atau alat lain yang Anda kenal.
  2. Buat tabel untuk menyimpan data pelatihan our . Ini namanya training_data.
CREATE TABLE training_data(
name VARCHAR (100), hair integer, feathers integer, eggs integer, milk integer, airborne integer, aquatic integer, predator integer, toothed integer, backbone integer, breathes integer, venomous integer, fins integer, legs integer, tail integer, domestic integer, catsize integer, type VARCHAR (100) 
);
  1. Memasukkan data pelatihan ke dalam tabel melalui kueri SALIN. Sebelum menjalankan kueri SALIN, pastikan bahwa PostgreSQL telah mewajibkan izin baca pada file data jika tidak, operasi SALIN akan gagal.

    CATATAN: Pastikan Anda mengetikkan tab spasi di antara tanda kutip tunggal setelah pembatas kata kunci.

COPY training_data FROM 'Path_to_training_data_file’ with delimiter '	' csv header;

Silakan temukan tangkapan layar set data pelatihan di bawah

CATATAN: Baris dua dan tiga dari kumpulan data pelatihan di .tab file berisi beberapa informasi meta. Karena tidak diperlukan pada saat ini, itu telah dihapus dari file.

Langkah 2:Buat alur kerja dengan Oranye

  1. Buka desktop dan klik dua kali pada ikon Oranye.
  2. Inilah tampilan halaman awal. Pilih Baru opsi dan itu akan membuat proyek kosong.

Sekarang Anda siap untuk menerapkan model Machine Learning pada set data.

Langkah 3:Pilih model Machine Learning untuk melatih data

Untuk artikel ini, k-terdekat tetangga (KNN) Model Machine Learning digunakan untuk melatih data. Setelah proses pelatihan data selesai, Pada langkah selanjutnya data pengujian diteruskan ke Prediksi widget untuk memeriksa keakuratan prediksi.

Langkah 4:Impor data pelatihan dari PostgreSQL ke Orange

Kumpulan data pelatihan ini akan digunakan untuk melatih model Machine Learning.

  1. Tarik dan Lepas Tabel SQL widget dari Data Tidak bisa.
  2. Ganti nama widget (opsional)
    1. Klik kanan pada SQL Table widget.
    2. Pilih Ganti Nama .
  3. Hubungkan dengan PostgreSQL untuk memuat set data pelatihan:
    1. Klik dua kali pada Data pelatihan widget.
    2. Masukkan kredensial untuk terhubung ke database PostgreSQL.
    3. Tekan tombol muat ulang untuk memuat semua tabel yang tersedia dari database yang diberikan.
    4. Pilih tabel training_data dari menu Drop-down dan tutup pop-up.

Langkah 5:Tambahkan kolom Target

Langkah ini penting karena model Machine Learning akan mencoba memprediksi data untuk variabel/kolom target ini:

  1. Seret dan lepas Pilih Kolom widget dari data menu.
  2. Klik dua kali pada Pilih Kolom widget.
  3. Telusuri kolom target Anda di bawah label Fitur. Di sini, jenis digunakan sebagai variabel target karena kita perlu melihat jenis hewan yang diberikan.
  4. Seret dan lepas di bawah Variabel Target kotak dan tutup pop-up.

Langkah 6:Peringkat kolom

Anda dapat memberi Peringkat atau Skor pada variabel/kolom pelatihan sesuai dengan korelasinya dengan kolom target.

  1. Tarik dan lepas Peringkat widget dari data menu.
  2. Gambar garis tautan dari Pilih kolom widget ke Peringkat widget .
  3. Klik dua kali pada Peringkat widget untuk melihat kolom yang paling terkait di tabel data pelatihan. Ini akan memilih 5 kolom teratas secara default.

Langkah 7:Pelatihan data

Pada langkah ini, Model Machine Learning (KNN) akan dilatih dengan dataset pelatihan. Silakan ikuti langkah-langkah berikut:

  1. Seret dan lepas KNN widget dari Model menu.
  2. Gambar garis tautan dari Peringkat widget ke KNN widget.

Langkah 8:Muat kumpulan data pengujian ke dalam PostgreSQL

Kumpulan data pengujian terpisah dibuat untuk melakukan prediksi. Silakan ikuti langkah-langkah untuk memuat dataset uji ke dalam tabel PostgreSQL.

  1. Buat tabel untuk menyimpan data pengujian our . Ini namanya test_data.
CREATE TABLE test_data(
name VARCHAR (100), hair integer, feathers integer, eggs integer, milk integer, airborne integer, aquatic integer, predator integer, toothed integer, backbone integer, breathes integer, venomous integer, fins integer, legs integer, tail integer, domestic integer, catsize integer, type VARCHAR (100)
);
  1. Memasukkan data pengujian ke dalam tabel pengujian melalui COPY pertanyaan. Sebelum menjalankan COPY query pastikan bahwa PostgreSQL memerlukan izin baca pada file data jika tidak, operasi SALIN akan gagal.

CATATAN: Pastikan Anda mengetikkan tab spasi di antara tanda kutip tunggal setelah pembatas kata kunci. Tanda tanya sengaja ditempatkan di jenis kolom kumpulan data pengujian karena kita perlu mengetahui jenis hewan tertentu dengan model Pembelajaran Mesin kami.

COPY test_data FROM 'Path_to_test_data_file’ with delimiter '	' csv header;

Silakan temukan tangkapan layar set data uji di bawah

Langkah 9:Impor data pengujian dari PostgreSQL ke Oranye

Silakan ikuti langkah-langkah berikut untuk menerapkan prediksi.

  1. Tarik dan lepas Tabel SQL widget dari data Tidak bisa.
  2. Ganti nama widget (Opsional)
    1. Klik kanan pada SQL Table widget.
    2. Pilih Ganti Nama .
  3. Hubungkan dengan PostgreSQL untuk memuat data pengujian.
    1. Klik dua kali pada Data uji widget.
    2. Hubungkan dengan Data uji tabel dari PostgreSQL.

Sekarang kita siap untuk melakukan prediksi.

Langkah 10:Prediksi

Prediksi widget akan mencoba memprediksi data pengujian berdasarkan data pelatihan dari KNN .

  1. Tarik dan lepas Prediksi widget dari Evaluasi menu.
  2. Gambar bentuk garis tautan Data uji widget ke Prediksi widget.
  3. Gambar garis tautan dari KNN widget ke Prediksi widget.

Langkah 11:Hasil

Klik dua kali pada Prediksi widget untuk melihat hasilnya.

Memahami Hasil

Anda akan melihat 2 tabel utama di jendela prediksi. Tabel di sebelah kiri menunjukkan hasil prediksi, sedangkan tabel di sebelah kanan menunjukkan data pengujian asli, yang disediakan untuk prediksi.

Sejak KNN model digunakan untuk melatih data sehingga Anda akan melihat satu kolom bernama KNN yang mencantumkan hasil.

Seperti yang kita ketahui:

  1. Kuda adalah Mamalia
  2. Ikan Ikan Trout adalah Ikan
  3. Turki adalah Burung

Sehingga KNN dapat menentukan semua jenis dengan benar.

Akurasi Prediksi

Jika Anda melihat tabel di sebelah kiri dalam output widget prediksi, tabel tersebut memiliki beberapa angka sebelum tipe prediksi, yaitu 1,00. 0,00 Angka-angka ini menunjukkan keakuratan jenis yang diprediksi.

Kami telah menggunakan 7 jenis hewan dalam dataset pelatihan, sehingga menunjukkan jumlah total 7 kolom dengan nilai akurasi setiap kolom akan mewakili 1 jenis hewan. Anda dapat memeriksa kolom mana yang mewakili jenis hewan dengan melihat daftar yang tersedia di sisi kiri layar Anda di bawah Prediksi probabilitas untuk label. Jika Anda melihat baris pertama yang bertuliskan Turki adalah Burung . Kita bisa melihat akurasinya 1.00 (100% dari kolom ke-2). Sama halnya dengan contoh lain Trout adalah Ikan dan akurasinya 1.00 (100% dari kolom ke-3).

Pada artikel ini, kami telah menggunakan algoritma k-nearest neighbor' (KNN) untuk mengimplementasikan model Machine Learning. Di blog berikutnya, kita akan menggunakan Support Vector Machine (SVM) model.

Untuk pertanyaan atau komentar, silakan hubungi menggunakan formulir kontak di sini.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana memahami ANALISIS JELASKAN

  2. Kolom tabel kenaikan otomatis

  3. Upgrade Berbasis Pemicu Kustom untuk PostgreSQL

  4. Hitung jam kerja antara 2 tanggal di PostgreSQL

  5. Apa perilaku yang diharapkan untuk beberapa fungsi pengembalian set dalam klausa SELECT?