Unlimited WordPress themes, graphics, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. Machine Learning
Code

Melatih Model Klasifikasi Teks Dengan Creat ML

by
Length:MediumLanguages:

Indonesian (Bahasa Indonesia) translation by Febri Ardian Sanjoyo (you can also view the original English article)

Machine learning sangat bagus, tetapi bisa sulit untuk diterapkan dalam aplikasi seluler. Ini terutama berlaku untuk orang-orang tanpa gelar ilmu data. Namun, dengan Core ML, Apple memudahkan menambahkan machine learning ke aplikasi iOS yang ada. Pelajari cara menggunakan platform Create ML yang baru untuk melatih custom neural yang ringan dan khusus.

Sekilas

Apa itu Machine Learning?

Machine learning adalah penggunaan analisis statistik untuk membantu komputer membuat keputusan dan prediksi berdasarkan karakteristik yang ditemukan dalam data tersebut. Dengan kata lain, itu adalah tindakan memiliki komputer mengurai aliran data untuk membentuk pemahaman abstrak tentang hal itu (disebut "model"), dan menggunakan model itu untuk membandingkan dengan data yang lebih baru.

Bagaimana Ini Digunakan?

Banyak aplikasi favorit Anda di ponsel Anda kemungkinan menggunakan machine learning. Misalnya, ketika Anda mengetik pesan, koreksi otomatis memprediksi apa yang akan Anda ketik selanjutnya menggunakan model machine learning yang terus diperbarui saat Anda mengetik. Juga, asisten virtual, seperti Siri, Alexa, dan Google Assistant sepenuhnya bergantung pada machine learning untuk meniru perilaku mirip manusia.

Persiapan

Mari bereksperimen dengan pembelajaran mesin(machine learning) dengan benar-benar membangun model! Anda harus memastikan Anda menginstal Xcode 10, bersama dengan macOS Mojave yang berjalan di development Mac Anda. Selain itu, saya akan menganggap Anda sudah memiliki pengalaman dengan pengembangan Swift, Xcode, dan iOS secara umum.

Image Recognition (Pengenalan Gambar)

Jika Anda belum melakukannya, lihat tutorial saya yang lain yang akan membawa Anda selangkah demi selangkah melalui pelatihan model klasifikasi gambar untuk digunakan di aplikasi Anda. Setelah tutorial itu, Anda akan dapat melatih model yang dapat membedakan berbagai varietas tanaman, jenis anjing, dan dapat mengidentifikasi objek secara akurat. Anda dapat melihatnya di sini:

1. Dataset dan JSON

Anda mungkin bertanya-tanya: dalam model text classification, seperti apa dataset itu? Jawaban atas pertanyaan itu terletak pada tujuan Anda. Misalnya, jika Anda ingin melatih model yang memberi tahu Anda apakah suatu string teks adalah spam atau tidak, Anda akan memiliki sejumlah string yang sudah diklasifikasikan sebelumnya.

Mengunduh File

Untuk menyelamatkan kita karena harus secara manual membuat data pelatihan untuk model analisis sentimen kita, teman-teman kita di Universitas Carnegie Melon telah memberi kita set data gratis yang luar biasa. Saya telah mengambil waktu untuk mengubahnya menjadi JSON untuk Anda gunakan. (Tentu saja, Anda selalu dapat menggunakan dataset Anda sendiri jika Anda ingin membuatnya sendiri.)

Silakan dan unduh file JSON data pelatihan dari repo GitHub kita. Klik unduh dan simpan file ke komputer Anda sendiri.

Siip! Sekarang sudah ada di komputer Anda, mari kita lihat lebih dekat apa yang ditunjukkan file tersebut kepada Anda.

Membedah JSON

Jika Anda belum terbiasa dengan JSON, itu sederhana. JSON adalah akronim untuk Java Script Object Notation, dan seperti namanya, ini berguna untuk mewakili objek dan properti masing-masing.

Dalam file yang baru saja Anda unduh, Anda akan melihat bahwa setiap item memiliki dua properti:

  • label memberi tahu Anda apakah kalimat atau frasa yang ditentukan positif atau negatif.
  • text adalah string teks yang analisisnya harus dilakukan.

Beberapa label item mengatakan Pos dan beberapa mengatakan Neg. Seperti yang mungkin sudah Anda duga, masing-masing singkatan dari Positive dan Negative.

2. Mempersiapkan Data

Jadi, mari selami dan benar-benar membuat model. Anda mungkin terkejut mendengar bahwa sebagian besar pekerjaan Anda sudah selesai! Sekarang, yang harus kita lakukan adalah menulis beberapa kode dan menempatkan Swift dan Xcode untuk melakukan keajaiban bagi kita.

Membuat Playground Baru

Sementara kebanyakan dari kita terbiasa membuat aplikasi iOS yang sebenarnya, kita akan menuju playground kali ini untuk membuat model machine learning kita. Menarik, bukan? Jika Anda memikirkannya, itu benar-benar masuk akal — Anda tidak memerlukan semua file tambahan itu tetapi sebaliknya hanya perlu yang bersih untuk memberi tahu Swift cara membuat model Anda. Silakan dan buat playground macOS untuk memulai.

Pertama, buka Xcode.

Figure 2 Open Xcode

Kemudian buat playground baru.

Figure 3 Create a Playground

Dan berikan nama yang berguna.

Figure 4 Naming the Playground

Mengimpor Framework

Tentu saja, sebelum kita mulai, kita perlu mengimpor framework yang sesuai. Jika Anda pernah melihat tutorial saya sebelumnya tentang melatih model klasifikasi gambar, Anda akan melihat bahwa pernyataan impor kita akan sedikit berbeda. Mengapa? Karena kita tidak memiliki interface pengguna untuk digunakan kali ini — hanya kode murni!

Hapus semua kode starter di taman bermain dan masukkan yang berikut ini:

Alasan kita membutuhkan keduanya adalah bahwa kita akan menggunakan URL untuk memberi tahu Creat ML di mana dataset kita berada dan di mana kita ingin model hasil kita disimpan, dan URL tersedia di dalam framework Foundation.

Menyiapkan Dataset

Sekarang, saatnya untuk menyiapkan semua data dan siap untuk melatih model.

Mengubah JSON menjadi MLDataTable

Pertama dan terutama, kita harus memberi tahu Creat ML di mana ia dapat menemukan file JSON kita. Dalam contoh ini, milik saya ada di folder Downloads saya, dan kemungkinan Anda juga.

Masukkan baris kode berikut:

Namun, Anda harus memastikan bahwa parameter fileURLWithPath Anda diatur ke tempat file JSON Anda berada, bukan di tempat milik saya. Di sini, kita membuat tabel data menggunakan informasi yang ditemukan dalam file JSON yang disediakan dan menyimpannya dalam dataset yang disebut dataset.

Memisahkan Data

Seperti yang saya sebutkan dalam Pelatihan Model Klasifikasi Gambar Dengan Creat ML, praktik yang baik untuk membagi kumpulan data Anda menjadi dua kategori: satu untuk melatih model dan satu untuk pengujian. Karena Anda ingin memberi perhatian pada model aktual Anda, 80% dari dataset Anda harus digunakan untuk pelatihan, dan Anda harus menyimpan 20% lainnya untuk memastikan semuanya berfungsi sebagaimana mestinya. Lagipula, itu juga penting!

Jika Anda telah melihat tutorial sebelumnya, Anda mungkin menemukan konsep ini familier. Ini cukup disertakan di sini jika Anda belum. Intinya, kita akan memisahkan data dengan menggunakan metode randomSplit(by:seed:) dari MLDataTable.

Paste baris kode berikut ke playground Anda:

Melihat dokumentasi, randomSplit(by:seed:) mengembalikan tuple, yang berisi dua MLDataTables. Kita akan menyimpannya sebagai (trainingData, testingData), menempatkan 80% dari dataset di trainingData dan 20% di testingData.

3. Training dan Testing

Sekarang setelah semua data Anda ter-setup dan siap, sekarang saatnya untuk melatihnya dan menguji model yang Anda hasilkan.

Metadata

Percaya atau tidak, training adalah bagian yang paling mudah dari keseluruhan proses. Pertama, Anda perlu mendefinisikan metadata menggunakan MLModelMetadata. Anda dapat melakukan ini dengan menulis baris kode berikut:

Di sini, Anda dapat meletakkan nama Anda sebagai author, description yang berguna, dan version number juga. Data ini akan ditampilkan ketika Anda melihat pratinjau model dalam Xcode.

Training dan Writing

Sekarang, Anda harus membuat classifier dari dataset. Anda harus memasukkan baris kode berikut:

Ini menggunakan keyword try untuk mencoba membuat instance MLTextClassifier dan memberi tahu bahwa kolom teks disebut "text" dan kolom label disebut "label". Ini merujuk pada nama field yang ada di file JSON kita.

Terakhir, Anda harus menulis classifier ke lokasi di komputer Anda. Lokasi yang Anda pilih untuk langkah ini adalah tempat Anda akan menemukan file .mlmodel Anda jika semuanya berjalan lancar. Masukkan baris kode berikut:

Kita membungkus metode write(to:) dalam do-catch block sehingga kita sadar jika terjadi kesalahan. Atau, Anda bisa call try dan panggil metode ini, karena kedua cara ini berfungsi. Jangan lupa, Anda kemungkinan tidak memiliki pengguna bernama vardhanagrawal di komputer Anda, jadi pastikan untuk mengubah jalur file ke tempat Anda ingin model pembelajaran mesin Anda disimpan.

Testing Model

Setelah selesai berlatih, Anda akan melihat beberapa output di konsol playground Anda. Akan terlihat seperti ini:

Apa yang pada dasarnya ini memberitahu Anda adalah bahwa ia mem-parsing data dari file JSON Anda, melatihnya dengan akurasi tertentu, dan menyimpan model Anda di lokasi yang ditentukan. Karena Anda sudah menyisihkan beberapa dataset untuk pelatihan sebelumnya, model sudah memberi tahu Anda keakuratan dalam cuplikan konsol ini.

Dalam proyek Xcode, yang perlu Anda lakukan adalah menyeret model Anda, dan masukkan baris kode berikut untuk mendapatkan output dari model Anda:

Ini akan memungkinkan Anda untuk menguji model Anda dan menggunakannya di aplikasi Anda.

Kesimpulan

Dalam tutorial ini, Anda belajar cara mengimpor file JSON, membuat classifier teks khusus, dan kemudian menggunakannya dalam proyek Xcode. Untuk mempelajari lebih lanjut tentang topik ini, dan tinjau apa yang Anda pelajari di sini, Dokumentasi Apple merekomendasikan untuk memeriksa

Dan saat Anda di sini, lihat beberapa konten machine learning hebat kami lainnya di Envato Tuts +!

Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.