“Mengapa kita memerlukan sistem rekomendasi untuk Blog?”

Sistem pemberi rekomendasi adalah bagian penting dari algoritme pembelajaran mesin yang menawarkan saran “relevan” kepada pengguna. Netflix, YouTube, Flipkart, dan Amazon adalah beberapa contoh sistem pemberi rekomendasi.

Algoritme pembelajaran mesin dalam sistem pemberi rekomendasi biasanya diklasifikasikan ke dalam dua kategori — metode pemfilteran berbasis konten dan kolaboratif, meskipun pemberi rekomendasi modern menggabungkan kedua pendekatan yang disebut sebagai sistem rekomendasi hibrid.

Metode berbasis konten didasarkan pada kesamaan atribut item dan metode kolaboratif menghitung kesamaan dari interaksi pengguna.

Pendahuluan

Mari selami dunia sistem rekomendasi yang menakjubkan dengan bantuan contoh sistem rekomendasi blog menengah.

Untuk memulainya, mari kita mulai dengan memahami mengapa media memerlukan sistem rekomendasi untuk blognya.

· Ada sekitar 18.00.000 artikel baru yang diposting di Medium.com setiap bulannya.

· Saat ini terdapat lebih dari 2.50.000 penulis di Medium.

dan jumlah ini terus bertambah dari hari ke hari. Jadi, merekomendasikan cerita yang tepat kepada pengguna yang tepat adalah penting untuk memberikan pengalaman terbaik kepada pembacanya.

Sama seperti sistem rekomendasi produk yang ada untuk membantu meningkatkan pendapatan perusahaan, demikian pula sistem Rekomendasi Blog adalah untuk meningkatkan popularitas blog dan memberikan pengalaman yang baik. Di bagian berikut, kami akan mempertimbangkan fitur-fitur yang tersedia di platform Medium untuk merancang metodologi kami.

Definisi Data

Seperti yang kita pahami bahwa data adalah bahan mentah terpenting untuk membangun model pembelajaran mesin apa pun. Jadi kita juga perlu mengumpulkan beberapa data untuk melanjutkan proses membangun sistem rekomendasi blog. Medium memiliki data masing-masing penggunanya baik pembaca maupun penulis. Dari situ, kami dapat mengekstrak beberapa fitur yang sesuai dengan tujuan kami.

1. Data Pengguna:- usia, jenis kelamin, lokasi, bio pengguna, jumlah pengikut.

2. Data Konten:- Judul blog, tanggal-waktu terbit, kategori, penulis, publikasi blog, tag, jumlah reaksi, jumlah penayangan, rata-rata waktu membaca, perkiraan waktu membaca

3. Interaksi Pengguna-Konten:- jumlah tepuk tangan, komentar.

Lalu ada perlunya menyiapkan fitur-fitur tersebut sesuai dengan kebutuhan kita. Jadi mari kita mulai dengan bagian rekayasa fitur.

Rekayasa Fitur

Saat membangun model pembelajaran mesin apa pun, memilih serangkaian fitur yang tepat adalah suatu keharusan, begitu pula dengan sistem pemberi rekomendasi. Jadi, setelah mengumpulkan data Pengguna, data Konten, dan interaksi Konten Pengguna, kami menjelajahi semua fitur dan juga merekayasa beberapa fitur baru dengan menggabungkannya.

Kami datang dengan fitur-fitur berikut:

Judul:

Judul blog merupakan faktor penting pada media yang memungkinkan pembaca menemukan blog tersebut dan membuat mereka ingin mengekliknya untuk membaca lebih lanjut. Membuat berita utama yang menarik perhatian pengunjung dan membangkitkan rasa ingin tahu mereka akan mendorong mereka untuk bertahan lebih lama dan kembali lagi.

judul blog

Kami dapat mengekstrak judul setiap postingan blog dan dengan menerapkan teknik NLP yang relevan, kami dapat membuat vektor fitur ini dan selanjutnya menggunakannya dalam sistem rekomendasi kami.

Tag:

Dalam hal membuat blog diperhatikan, tag adalah hal terpenting kedua setelah judul blog. Memilih tag yang tepat dapat membuat perbedaan antara artikel menjadi populer dan artikel mati saat dikirimkan. Orang umumnya menulis tag topik sehubungan dengan konten yang mereka tulis dan dalam medianya dibatasi hingga 5 tag.

Tag

Tag merupakan fitur penting yang dapat digunakan dalam sistem rekomendasi ini untuk mengelompokkan artikel dengan tag masing-masing.

Tepuk tangan dan Komentar:

Tepuk tangan dan komentar sehubungan dengan setiap blog mencerminkan keterlibatan Pembaca dengan blog tersebut dan pada dasarnya mencerminkan popularitas sebuah blog. Kita dapat menggunakan kedua fitur ini untuk membuat fitur baru bernama Reaksi pembacayang merupakan kombinasi dari kedua fitur tersebut.

Tepuk tangan dan Komentar

Waktu Baca Artikel dan Waktu Membaca Rata-rata:

Waktu baca dan waktu membaca anggota adalah dua fitur penting dari blog medium.

· Waktu Baca atau Waktu Baca Artikel, muncul di bagian atas artikel Medium mana pun dan merupakan perkiraan berapa lama waktu yang dibutuhkan pembaca untuk menyelesaikan sebuah artikel. Hal ini didasarkan pada kecepatan membaca rata-rata orang dewasa (kira-kira 265 WPM). Medium mengambil jumlah total kata dari sebuah postingan dan menerjemahkannya menjadi menit, dengan penyesuaian yang dilakukan untuk gambar.

Perkiraan Waktu Baca

· Waktu Membaca Rata-rata adalah cara Medium mengukur berapa lama pembaca terlibat aktif dengan sebuah artikel. Ini adalah jumlah rata-rata waktu yang dihabiskan semua pembaca (anggota dan non-anggota) untuk membaca blog.

Kita dapat menggabungkan kedua fitur ini untuk menghasilkan fitur baru yang disebut Keterlibatan pembacayang merupakan rasio waktu membaca rata-rata dan waktu Membaca.

Pemodelan Sistem

Rekomendasi Popularitas

Di medium, tren ini juga dapat dilihat di kolom postingan blog medium. Rekomendasi ini sepenuhnya didasarkan pada tepuk tangan, pengikut, penayangan, waktu baca rata-rata yang dapat digunakan untuk memperoleh skor interaksi pengguna-blog, dan 6 blog teratas direkomendasikan.

Rekomendasi ini tidak bergantung pada konten yang biasa berinteraksi dengan pengguna dan topik yang diikuti pengguna. Ini adalah rekomendasi umum untuk semua orang berdasarkan blog yang sedang tren.

Rekomendasi berdasarkan popularitas

Rekomendasi yang dipersonalisasi:

Rekomendasi ini berbeda untuk setiap pembaca berdasarkan interaksi mereka dengan blog di media. Kami secara umum memiliki dua tipe dalam hal ini.

Yang pertama adalah pemfilteran kolaboratif. Ini adalah metode untuk mendapatkan prediksi otomatis (penyaringan) tentang minat pengguna dengan mengumpulkan informasi preferensi atau selera dari sejumlah besar pengguna (berkolaborasi). Menemukan pola di antara banyak pembaca adalah hal yang diperlukan dalam konteks media.

Jika sekelompok artikel menarik perhatian banyak pembaca, kemungkinan besar pembaca yang mulai membaca salah satu artikel tersebut ingin membaca artikel lain dalam grup tersebut. Akibatnya, saran ditawarkan kepada individu yang sebanding berdasarkan perilaku membaca pembaca lain.

1. Berbasis memori

2. Berbasis Model

Berbasis memori:

Pendekatan ini menghitung kesamaan pengguna berdasarkan blog tempat mereka berinteraksi (pendekatan berbasis pengguna) atau menghitung kesamaan blog berdasarkan pengguna yang pernah berinteraksi dengan mereka (pendekatan berbasis blog) (pendekatan berbasis item).

Berbasis model :

Algoritme ini menggunakan matriks item pengguna dengan kekuatan yang dihitung dari tepukan, komentar, dan waktu membaca: waktu yang diharapkan. Blog dapat direkomendasikan kepada pengguna tertentu berdasarkan kekuatan blog tersebut.

Yang lainnya adalah mesin rekomendasi berbasis konten. Mereka berbeda karena memberikan rekomendasi berdasarkan artikel blog dan kata-kata yang disertakan di dalamnya (kebanyakan tag). Jika seseorang membaca artikel yang menyertakan istilah Pembelajaran mesin dan Ilmu Data, kemungkinan besar pengguna tersebut senang membaca artikel tambahan yang menyertakan istilah tersebut.

Tiga artikel relevan lainnya diberikan kepada pengguna sebagai saran untuk terus membaca di media membaca berkelanjutan untuk setiap artikel. Artikel yang disarankan baru-baru ini diterbitkan oleh publikasi yang sama dan berisi salah satu tag dari artikel pengguna saat ini.

Rekomendasi yang Dipersonalisasi

Pemfilteran kolaboratif memeriksa kebiasaan membaca pengguna, bukan konten artikel itu sendiri. Jadi, jika pengguna yang membaca entri blog tentang mesin rekomendasi juga membaca postingan tentang algoritme ML lainnya, meskipun konten artikel lainnya sangat berbeda, pemfilteran kolaboratif akan mempromosikan artikel tambahan kepada pengguna tersebut.

Pemfilteran kolaboratif memiliki kelemahan karena memerlukan sejumlah besar data perilaku membaca pengguna sebelumnya untuk mendeteksi pola ini. Rekomendasi berbasis konten dapat dibuat dengan sedikit atau tanpa data sebelumnya, sehingga lebih mudah diterapkan. Kita dapat melihat bahwa ini adalah teknik hibrid yang menggunakan pemfilteran kolaboratif dan berbasis konten dalam medianya.

Medium menggunakan pendekatan hybrid

Metrik Evaluasi:

Ada 2 cara utama untuk memeriksa apakah sistem rekomendasi Anda berfungsi sesuai harapan.

1. Pengujian A/B Online

2. Metrik Evaluasi Offline

Metrik online adalah hasil empiris yang diamati dalam interaksi pengguna Anda dengan rekomendasi real-time yang diberikan dalam lingkungan langsung. Cara paling efektif untuk melakukannya adalah dengan melakukan pengujian A/B. Dalam lingkungan langsung, Anda memiliki Kontrol: sistem Anda yang ada dan Versi adalah sistem rekomendasi Anda yang sedang diuji. Hal ini karena perilaku pengguna adalah ujian akhir dari pekerjaan kami.

Pengujian A/B untuk sistem membantu memahami perilaku pengguna

Lalu mengapa menggunakan teknik offline untuk evaluasi?

Karena ini adalah SATU-SATUNYA indikator yang dapat Anda lihat saat mengembangkan sistem rekomendasi Anda. Selalu memilih menggunakan metrik online untuk mengumpulkan perilaku pengguna dan menilai sistem Anda adalah hal yang mahal dan memakan waktu. Selain itu, ketika pengguna terus-menerus meminta umpan balik, mereka mungkin menjadi lebih ragu untuk menggunakan platform kami dan tidak menggunakannya sama sekali. Akurasi yang baik dalam metrik offline diikuti dengan skor A/B online yang bagus adalah hal yang Anda cari.

Akurasi dalam metode di atas bergantung pada data historis dan mencoba memprediksi apa yang sudah dilihat oleh pengguna sebenarnya. Jika data yang dikumpulkan terlalu lama, betapapun tingginya keakuratannya, data tersebut tidak akan berarti apa-apa karena minat Anda di tahun lalu tidak akan sama dengan minat Anda di tahun yang akan datang!

Beberapa teknik evaluasi offline adalah sebagai berikut:

Kesalahan Root Mean Squared (RMSE):

RMSE mirip dengan MAE tetapi satu-satunya perbedaan adalah nilai absolut dari residu (lihat gambar di atas) dikuadratkan dan akar kuadrat dari keseluruhan suku diambil untuk perbandingan.

Keuntungan menggunakan RMSE dibandingkan MAE adalah ia memberikan penalti yang lebih besar pada istilah tersebut ketika kesalahannya tinggi. (Perhatikan bahwa RMSE selalu lebih besar dari MAE)

Rumus Skor RMSE

Rasio Klik:

Hit Rate adalah alternatif yang lebih baik untuk MAE atau RMSE. Untuk mengukur Rasio Hit, pertama-tama kami membuat N rekomendasi teratas untuk semua pengguna dalam kumpulan data pengujian kami. Jika N rekomendasi teratas yang dihasilkan berisi sesuatu yang diberi peringkat oleh pengguna — 1 klik! Ada berbagai versi mengenai rasio hit kumulatif.

MAP@K / MAR@K:

Sistem pemberi rekomendasi biasanya menghasilkan daftar rekomendasi yang diurutkan untuk setiap pengguna di set pengujian. MAP@K memberikan wawasan tentang seberapa relevan daftar item yang direkomendasikan, sedangkan MAR@K memberikan wawasan tentang seberapa baik pemberi rekomendasi mampu mengingat semua item yang dinilai positif oleh pengguna dalam set pengujian.

Metrik penting lainnya mencakup Cakupan yang merupakan persentase item dalam data pelatihan yang dapat direkomendasikan model pada set pengujian. Personalisasi menggunakan ketidaksamaan (kesamaan 1- kosinus) antara daftar rekomendasi pengguna. Semakin tinggi skornya, semakin tinggi pula ketidaksamaannya yang berarti memberikan lebih banyak personalisasi.

Penerapan

Jika kita tidak dapat membuat model pembelajaran mesin berfungsi dalam produksi, model tersebut tidak ada gunanya. Ini seperti blog tertulis yang tidak pernah dipublikasikan. Oleh karena itu penerapan model merupakan salah satu langkah terpenting untuk mendapatkan manfaat dari model yang dikembangkan. Oleh karena itu, kita juga perlu menerapkan sistem pemberi rekomendasi setelah pengujian dan penyetelan model selesai.

Ada beberapa fitur yang membedakan penerapan sistem pemberi rekomendasi, yaitu Skalabilitas sistem, Latensi sistem, Sistem Offline atau Sistem Online, dll. Mari kita lihat beberapa fitur ini. Skalabilitas model menentukan bagaimana model akan merespons ketika jumlah pengguna dan jumlah konten meningkat. Masalah skalabilitas telah meningkat secara signifikan seiring dengan pesatnya pertumbuhan industri e-commerce: mesin rekomendasi modern diperlukan untuk menghasilkan hasil real-time untuk aplikasi berskala besar. Dengan kata lain, performa model rekomendasi diukur berdasarkan throughput (jumlah inferensi per detik) dan latensi (waktu untuk setiap inferensi).

Faktor terpenting selama produksi

Kesimpulan

Metodologi lengkap untuk merancang Sistem Rekomendasi Blog telah kami bahas di artikel ini. Ada perbaikan dan modifikasi lain yang dapat dilakukan dalam metodologi desain ini. Kami telah menyebutkan beberapa perbaikan yang dapat dilakukan pada sistem ini di bagian rencana masa depan blog ini. Di blog selanjutnya, kami berencana untuk mengintegrasikan pembelajaran mendalam, visi komputer, dan teknik canggih lainnya untuk meningkatkan efisiensi Sistem Rekomendasi Blog.

Ruang Lingkup Masa Depan

1. Jelajahi berbagai teknik DL untuk memanfaatkan data gambar dan video yang merupakan bagian integral dari blog.

2. Memanfaatkan konten blog seperti kata kunci, referensi, dll untuk memberikan rekomendasi yang lebih baik.

Referensi

1. https://www.themarketingtechnologist.co/building-a-recommendation-engine-for-geek-setting-up-the-prerequisites-13/

2. https://www.themarketingtechnologist.co/a-recommendation-system-for-blogs-content-based-similarity-part-2/

3. https://www.algolia.com/blog/ai/the-anatomy-of-high-performance-recommender-systems-part-1/

4. https://medium.com/fnplus/evaluating-recommender-systems-with-python-code-ae0c370c90be