Available online at https://ejournal.almaata.ac.id/index.php/IJUBI

## Indonesian Journal of Business Intelligence
Volume 7 | Issue 1 | June (2024)
ISSN 2621-3915 (PRINT) , ISSN 2621-3923 (ONLINE) , Published by Alma Ata University Press IJUBI Indonesian Journal ---- of ----
Business Intelligence

## ANALISIS MODEL SISTEM REKOMENDASI KURSUS MOOC DENGAN METODE COLLABORATIVE FILTERING DAN INTEGRASI EXPLAINABLE AI
Nabila Muthia Putri 1* , Mugi Praseptiawan 2 , Meida Cahyo Untoro 3 1,2,3 Teknik Informatika, Fakultas Teknologi, Produksi dan Industri, Institut Teknologi Sumatera.
* nabila.120140023@student.itera.ac.id
Jalan Terusan Ryacudu Way Huwi, Bandar Lampung, Lampung, Indonesia
Keywords:
MOOC;
Recommender system;
Collaborative filtering; Explainable AI.

## Abstract
Undoubtedly, the creation of MOOCs has transformed education by making learning accessible and inexpensive for people around the world. However, users often find it difficult to choose a course that suits their needs and interests due to the large number of curricula offered by MOOCs. This paper describes how a recommender system that applies a Collaborative Filtering approach can be used to address these issues. This paper proposes a recommendation system modeling for MOOC platforms that allows users to get course recommendations based on their preferences. By using user interactions and selections, the Collaborative Filtering approach suggests courses that are specifically tailored for everyone. Utilizing a user-based method called collaborative filtering, users' preferences are predicted by comparing them with other users. The transparency and interpretability of the recommendation system is enhanced by the incorporation of XAI using LIME. By gaining an understanding of the reasoning behind course recommendations, users can build trust and make informed decisions. A quantitative assessment of the prediction accuracy is provided by the performance evaluation of the recommendation system using the RMSE measure, which is 0.24 for the entire prediction system.
Article history:
Received : 30 April 2024 Revised : 28 June 2024 Accepted : 30 June 2024

## Kata Kunci:

## MOOC;
Sistem rekomendasi; Collaborative Filtering;
Explainable AI.

## Abstrak
Tidak diragukan lagi, penciptaan MOOC telah mengubah pendidikan dengan membuat pembelajaran menjadi mudah diakses dan murah bagi orang-orang di seluruh dunia. Namun, pengguna sering kali merasa kesulitan dalam memilih kursus yang sesuai dengan kebutuhan dan minat mereka karena banyaknya kurikulum yang ditawarkan oleh MOOC. Makalah ini menjelaskan bagaimana sistem rekomendasi yang menerapkan pendekatan Collaborative Filtering dapat digunakan untuk mengatasi masalah-masalah tersebut. Makalah ini mengusulkan pemodelan sistem rekomendasi untuk platform MOOC yang memungkinkan pengguna untuk mendapatkan rekomendasi kursus berdasarkan preferensi mereka. Dengan menggunakan interaksi dan pilihan pengguna, pendekatan Collaborative Filtering menyarankan kursus yang secara khusus disesuaikan untuk semua orang. Memanfaatkan metode berbasis pengguna yang disebut penyaringan kolaboratif, preferensi pengguna diprediksi dengan membandingkannya dengan pengguna lain. Transparansi dan
kemampuan interpretasi sistem rekomendasi ditingkatkan dengan penggabungan XAI menggunakan LIME. Dengan mendapatkan pemahaman tentang alasan di balik rekomendasi kursus, pengguna dapat membangun kepercayaan dan membuat keputusan yang tepat. Penilaian kuantitatif terhadap akurasi prediksi disediakan oleh evaluasi kinerja sistem rekomendasi dengan menggunakan ukuran RMSE yang bernilai 0.24 untuk keseluruhan sistem prediksinya.

## Pendahuluan
Tidak diragukan lagi bahwa Massive Open Online Courses (MOOC) adalah terobosan sukses di bidang pendidikan karena menyediakan pilihan pembelajaran yang terjangkau dan tersedia untuk masyarakat umum [1], [2]. Rekomendasi kursus sulit untuk ditingkatkan karena kebutuhan yang beragam dan pertumbuhan halaman MOOC yang cepat. Ketika dihadapkan dengan keragaman material, mungkin sulit bagi pengguna untuk memutuskan kursus mana yang paling cocok untuk mereka karena melimpahnya sumber daya di halaman MOOC [3]. Masalah ini sering terjadi karena tidak ada ulasan pengguna di halaman MOOC seperti APTIKOM atau eLOK yang dapat membantu algoritma untuk merekomendasikan kursus lain.
Salah satu cara yang mungkin untuk membantu orang memilih kursus yang sesuai dengan mereka adalah dengan memodelkan sistem rekomendasi pada halaman MOOC [4] . Sistem rekomendasi dalam halaman MOOC membantu pengguna membuat pilihan tentang kursus yang serupa dari pilihan utama mereka [5] . Collaborative Filtering sebagai metode untuk sistem rekomendasi dapat memprediksi preferensi pengguna berdasarkan interaksi mereka dengan kursus [6] . Menurut pendekatan ini, pengguna memiliki kemampuan untuk mengekspresikan keinginan atau kebutuhan jangka pendek mereka selain preferensi jangka panjang [7].
Collaborative Filtering menerapkan teknik- tekniknya pada pemodelan sistem rekomendasi berbasis item, hibrid, dan berbasis pengguna. Jika digabungkan, ketiga teknik Collaborative Filtering ini berusaha meningkatkan akurasi saran dengan memanfaatkan interaksi dan preferensi pengguna. Al-Ghuribi [8]
menunjukkan bahwa salah satu taktik yang
efektif untuk sistem rekomendasi adalah Collaborative Filtering berbasis pengguna [9], [10] . Strategi berbasis pengguna ini, yang melibatkan pembuatan matriks kemiripan untuk setiap kursus berdasarkan riwayat penilaian pengguna, berpusat pada gagasan bahwa pengguna yang sebanding lebih memilih untuk menyukai item yang serupa dalam konteks halaman MOOC. Sistem ini dapat menghasilkan rekomendasi untuk pengguna berdasarkan interaksi mereka dengan kursus yang disukai sebelumnya dengan mengidentifikasi orang-orang yang memiliki urutan penilaian dan ulasan yang serupa dari suatu kursus. Metode ini tidak hanya memfasilitasi penemuan konten yang relevan, tetapi juga meningkatkan keterlibatan pengguna di halaman MOOC [11], [12].
Ada peningkatan kebutuhan akan sistem rekomendasi yang memberikan hasil yang akurat dan menawarkan alasan yang jelas seiring dengan berkembangnya Artificial Intelligence (AI) [13] . Hal ini juga berlaku dalam lingkungan pendidikan, di mana akan menguntungkan bagi siswa untuk memahami alasan di balik rekomendasi yang dibuat untuk kursus tertentu. Explainable AI (XAI) diintegrasikan ke model sistem rekomendasi untuk menjelaskan konteks dari saran yang diberikan oleh sistem [14] . Teknik XAI seperti Local Interpretable Model-agnostic Explanations (LIME) memainkan peran penting dalam meningkatkan transparansi dan kemampuan interpretasi dalam model Machine Learning yang kompleks [15]. LIME mengatasi sifat blackbox dari algoritma tertentu dengan menghasilkan penjelasan yang akurat dan dapat dimengerti oleh pengguna untuk memprediksi preferensi mereka terhadap suatu item [16] . Karena dapat berkonsentrasi pada nilai numerik penilaian daripada kuantitas penilaian oleh pengguna, perhitungan
Centered Cosine Similarity atau Pearson Correlation sering menjadi pertimbangan saat menganalisis pola aktivitas pengguna model sistem rekomendasi MOOC dengan metode Collaborative Filtering [17] . Sebagai metrik yang mudah dipahami, Centered Cosine Similarity memiliki rentang nilai mulai dari -1 hingga
1, dengan nilai mendekati 1 menunjukkan kemiripan yang kuat, 0 menunjukkan tidak ada kemiripan, dan -1 menunjukkan ketidakmiripan yang bertolak belakang [18] . Untuk menghitung nilai kemiripan dalam preferensi pengguna, perhitungan Centered Cosine Similarity bekerja dengan baik karena tahan terhadap sebaran yang
merupakan ciri khas matriks Collaborative Filtering [19].
Mengevaluasi sistem pemberi rekomendasi membutuhkan pemilihan metrik yang sesuai [20] . Root Mean Squared Error (RMSE), Mean Absolute Error (MAE), dan Mean Reciprocal Rank (MRR) adalah metrik yang umum digunakan. Ketika menggunakan teknik Collaborative Filtering untuk menganalisis interaksi pengguna dan sistem rekomendasi model, termasuk model yang menggunakan Centered Cosine Similarity, RMSE menawarkan penilaian kuantitatif yang komprehensif terhadap kinerja model [21] . Dengan memeriksa perbedaan antara hasil prediksi dan penilaian pengguna yang sebenarnya, metrik RMSE secara sistematis mengukur keakuratan prediksi sistem [22], [23].
Penelitian ini bertujuan untuk memahami penerapan Collaborative Filtering dalam memodelkan sistem rekomendasi kursus MOOC yang sesuai dengan kriteria pengguna berdasarkan penilaian yang telah diberikan pada suatu kursus. Selain itu, peran integrasi Explainable AI dalam pemodelan sistem untuk memberikan penjelasan terhadap rekomendasi yang diberikan oleh sistem juga harus dipahami. Selain itu, penelitian ini juga bertujuan untuk mengeksplorasi evaluasi kinerja sistem melalui metrik RMSE.

## Metode
Dataset lengkap yang digunakan untuk penelitian ini dapat dilihat pada tautan berikut: https://kaggle.com/datasets/imuhammad/co urse-reviews-on- coursera?select=Coursera_reviews.csv . Dataset
Coursera tersebut digunakan untuk pemodelan sistem sebagai contoh untuk pemodelan lain pada MOOC yang belum memiliki sistem rekomendasi namun sudah memiliki wadah bagi pengguna untuk menilai kursus yang telah diambil.

## Preprocessing
Langkah pertama untuk memulai penelitian ini adalah melakukan preprocessing terhadap dataset yang digunakan. Hal ini meliputi penghapusan label yang tidak digunakan, penggabungan dua tabel menjadi satu tabel, penghapusan data yang terduplikasi, pengalokasian label 'reviewers' yang sebelumnya bertipe data string menjadi 'user_id' bertipe data integer, pengalokasian label 'course_id' yang sebelumnya bertipe data string menjadi 'course_id_encoded' bertipe data integer, dan perhitungan analisis sentimen terhadap konsistensi ulasan dan penilaian. Langkah ini penting untuk memastikan kualitas data, mengurangi noise , dan meningkatkan proses komputasi. Label yang diperlukan untuk memodelkan sistem rekomendasi
menggunakan Collaborative Filtering berbasis pengguna adalah ID pengguna atau nama pengulas, ID atau judul kursus, dan penilaian pengguna untuk suatu kursus. ID pengguna sangat penting untuk mengidentifikasi pengguna yang ingin disarankan oleh sistem rekomendasi dan untuk mengetahui seberapa mirip pengguna target dengan pengguna lain [24]. Kursus yang direkomendasikan oleh sistem kepada pengguna target diidentifikasi secara unik oleh ID kursus. Sementara itu, kemiripan antara pengguna ditentukan dengan mempertimbangkan penilaian pengguna, yang mengungkapkan seberapa besar pengguna menyukai item tertentu [25] . Namun, sebelum menghapus label ‘ reviews ’ , perlu dilakukan perhitungan analisis sentimen untuk mengetahui isi ulasan yang sesuai dengan penilaian yang diberikan (misalnya, ulasan yang baik harus disertai dengan penilaian yang tinggi) dengan menggunakan tool TextBlob.
Selain itu, penting untuk memastikan bahwa kumpulan data tidak memiliki data duplikat. Hal ini didasarkan pada logika bahwa seorang pengguna tidak dapat menilai kursus yang sama lebih dari satu kali. Karena dataset
terindikasi memiliki ketidakstabilan semacam itu, maka duplikasi dihapus untuk subset 'reviewers' dan 'course_id' .
Untuk mengalokasikan label yang awalnya bertipe data string ke tipe data integer dapat dilakukan dengan fungsi pemetaan. Pada label 'reviewers' , perlu dilakukan penyaringan untuk pengguna yang setidaknya telah memberikan penilaian dan review untuk 2 kursus. Hal ini dilakukan untuk memudahkan perhitungan kemiripan antar pengguna. Sama halnya dengan mengalokasikan 'course_id' ke tipe data integer. Namun dalam kasus ini, fungsi label encoder digunakan untuk 'course_id' dan mengubahnya menjadi nilai yang unik. Terakhir, dua tabel data digabungkan menjadi satu tabel data untuk perhitungan lebih lanjut.
Konsistensi antara ulasan dan penilaian dalam tabel kumpulan data akhir ditentukan dengan menggunakan TextBlob, yang memerlukan beberapa langkah. TextBlob menganalisis ulasan dan menghitung skor polaritas untuk menentukan apakah sentimennya positif, negatif, atau netral. Untuk memastikan konsistensi yang tinggi, hanya ulasan dengan minimum polaritas senilai 8.0 yang dipertimbangkan. Metodologi ini menggunakan teknik NLP (Natural Language
Processing) untuk menilai sentimen ulasan dan membatasi analisis pada polaritas yang positif.

## Random Sampling
Setelah preprocessing selesai, pengambilan sampel secara acak dilakukan karena dataset asli memiliki baris yang terlalu besar untuk dikomputasi, yang dapat menyebabkan banyak waktu dan biaya komputasi.
Untuk menentukan jumlah sampel yang sesuai, digunakan rumus berikut.
� = � 2 × � × (1 − �) E 2 (1)
Di mana n adalah jumlah sampel, Z adalah Z- score terhadap tingkat kepercayaan yang diinginkan (misalnya, untuk tingkat kepercayaan 95%, nilai Z adalah 1,96), p adalah estimasi proporsi populasi (dalam perhitungan ini akan digunakan 0,5 yang menghasilkan ukuran sampel terbesar), dan E adalah margin of error (dalam perhitungan ini akan menggunakan 0,01 yang menandakan margin of error sebesar 1%).

## Collaborative Filtering
Dari jumlah sampel yang didapat, data akan dibagi menjadi data training dan data testing dengan perbandingan 70:30. Dari data training , dibuat tabel pivot antara pengguna dan item dengan penilaian sebagai nilainya. Komputasi sistem tidak dapat dilakukan jika terdapat nilai null pada tabel, sehingga perlu dilakukan pengubahan nilai null menjadi 0.
Setelah itu, perhitungan kemiripan antar pengguna dilakukan dengan Centered Cosine Similarity yang merupakan modifikasi dari Cosine Similarity. Perhitungan ini juga biasa disebut dengan Pearson Correlation yang tahan terhadap hamburan yang biasanya terjadi pada matriks Collaborative Filtering, sehingga efektif untuk menghitung nilai kemiripan preferensi pengguna. Rumus yang digunakan adalah sebagai berikut.
� = ∑ (� − �' (� − �')) ∑ � − � ' 2 . ∑ � − � ' 2 (2)
Di mana r adalah nilai kemiripan, X adalah nilai variabel pertama, Y adalah nilai variabel kedua, X' adalah rata-rata nilai X , dan Y' adalah rata-rata nilai Y . Dengan hasil yang berkisar antara -1 hingga 1, Centered Cosine Similarity memberikan ukuran yang mudah diinterpretasikan – nilai yang mendekati 1 menunjukkan kemiripan yang tinggi, 0 menunjukkan tidak ada kemiripan, dan -1 menunjukkan ketidaksamaan yang tinggi.

## Evaluasi Model
Setelah perhitungan Centered Cosine Similarity, proses dot product antara hasil dan tabel pivot dilakukan. Hal ini bertujuan untuk mengetahui hasil prediksi penilaian pengguna terhadap kursus yang belum pernah diambil oleh mereka. Hasil prediksi penilaian ini nantinya akan digunakan dalam perhitungan dengan metrik RMSE untuk mengevaluasi kinerja sistem.
���� =
�=1 � � � − � ^ � 2 � (3)
Di mana � adalah jumlah data, � adalah penilaian asli dari data pengujian, dan � adalah penilaian yang diprediksi oleh sistem.

## Integrasi LIME
XAI dengan teknik LIME (Local Interpretable Model-agnostic Explanations) digunakan karena menyediakan cara yang lebih transparan dan dapat diinterpretasikan untuk memahami dan menjelaskan rekomendasi yang dibuat oleh sistem. LIME dapat menghitung probabilitas dari setiap fitur yang mempengaruhi setiap hasil prediksi. Kemudian, LIME akan diintegrasikan ke dalam model yang telah dibuat sebelumnya dengan menggunakan Collaborative Filtering berbasis pengguna.
� � = argmin ��� (� ���� �, �, � � ���� + Ω � ) (4) � ���� �, �, � � ���� adalah fungsi kuadrat kerugian yang mengukur jarak antara f dan g dengan G mewakili kelas penjelasan model (g ∈ G ). � � ���� mewakili ukuran kedekatan di sekitar data input x yang akan dijelaskan. Gambaran yang lebih sederhana mengenai metodologi penelitian dapat dilihat melalui diagram alir berikut ini.

## Gambar 1. Diagram Alir Penelitian

## Pembahasan
1. MOOC
MOOC (Massive Open Online Course) dibangun berdasarkan prinsip akses
terbuka, mengizinkan siapapun yang memiliki koneksi internet untuk mendaftar di suatu kursus terlepas dari lokasi geografis, latar belakang pendidikan, atau status sosial mereka [2] . Kesempatan yang menyeluruh ini memperluas peluang pendidikan ke audiens global yang tidak memiliki akses ke bentuk pendidikan tinggi konvensional.
MOOC memanfaatkan teknologi untuk memberikan pengalaman belajar yang menarik dan interaktif.
2. Sistem Rekomendasi
Sistem rekomendasi adalah sistem yang memanfaatkan analisis data dan algoritma untuk menyarankan item atau konten kepada pengguna berdasarkan preferensi, perilaku, dan karakteristik mereka di waktu lampau. Sistem ini memainkan peran penting dalam meningkatkan pengalaman pengguna, memfasilitasi pengambilan keputusan, dan mempersonalisasi informasi di berbagai bidang [5].
3. Collaborative Filtering
Metode Collaborative Filtering berfokus pada interaksi pengguna terhadap suatu item, sehingga dapat menangkap interaksi pengguna terhadap suatu item (misalnya produk, film, ataupun kursus). Interaksi ini digunakan untuk mengidentifikasi pola dan kesamaan antara pengguna dan item, membentuk dasar untuk membuat rekomendasi. Collaborative Filtering unggul dalam memberikan rekomendasi yang dipersonalisasi berdasarkan perilaku pengguna [10].
4. Explainable Artificial Intelligence
Prinsip dasar Explainable AI (XAI) adalah membuat model AI yang menghasilkan hasil yang dapat dengan mudah dipahami oleh manusia. XAI melibatkan penggunaan algoritma dan teknik yang menghasilkan hasil dengan cara yang jelas dan dapat ditafsirkan, sehingga pengguna dapat memahami alasan dan cara keputusan tertentu dibuat. XAI adalah bidang yang berkembang, dan umpan balik dari pengguna
sangat penting untuk menyempurnakan penjelasan di aspek kecerdasan buatan [14].

## 5. Local
Interpretable Model-agnostic Explaination Teknik XAI seperti Local Interpretable Model-agnostic Explanations (LIME) berperan penting dalam meningkatkan transparansi dan interpretasi dalam model ML yang kompleks [40]. LIME mengatasi sifat blackbox dari algoritma tertentu dengan menghasilkan penjelasan yang akurat dan dapat dipahami oleh pengguna untuk memprediksi preferensi mereka terhadap suatu item [16].

## Hasil
Hasil penelitian meliputi serangkaian proses implementasi metode Collaborative Filtering berbasis pengguna untuk memberikan prediksi terkait rekomendasi kursus kepada pengguna MOOC. Rangkaian proses tersebut terdiri dari preprocessing , random sampling , implementasi metode, integrasi XAI dan evaluasi kinerja model menggunakan metrik RMSE.
Pada diagram alir metode pengembangan sistem, langkah pertama adalah preprocessing yang terdiri dari beberapa tahap. Tahap pertama dalam preprocessing adalah menghapus label yang tidak diperlukan. Pemodelan sistem rekomendasi dengan menggunakan metode Collaborative Filtering berbasis pengguna pada dasarnya hanya membutuhkan label ID pengguna sebagai target, ID kursus sebagai pengenal kursus, dan nilai yang dibutuhkan untuk perhitungan kemiripan antar pengguna menggunakan Centered Cosine Similarity. Setelah mendapatkan hasil tabel yang dibutuhkan, dilakukan alokasi label ‘ reviewers ’ menjadi ‘ user_id ’ untuk memudahkan pembuatan tabel pivot dan mempermudah input target pengguna untuk mendapatkan prediksi rekomendasi. Pengalokasian label juga dilakukan pada label ‘ course_id ’ yang merupakan tipe data string sehingga menjadi tipe data integer untuk kemudahan pembuatan tabel pivot. Selanjutnya, data yang duplikat dihilangkan untuk memastikan komputasi dihitung tanpa adanya inkonsistensi data. Kemudian menggabungkan kedua tabel yang telah diproses menjadi satu tabel utama yang dilanjutkan ke perhitungan analisis sentimen dengan menggunakan tool TextBlob untuk menghitung konsistensi antara ulasan dan penilaian.
Gambar 2. Dataframe yang Telah Dirapihkan
Dalam melakukan perhitungan analisis sentimen dengan tool TextBlob, terdapat 3 label yang dibutuhkan dalam perhitungan. Ketiga label tersebut antara lain polaritas, subjektivitas, dan intensitas yang dapat diperoleh dari file XML yang ada pada dokumentasi library TextBlob di Python. Salah satu contoh yang diambil untuk menggambarkan perhitungan nilai konsistensi setiap ulasan terhadap penilaiannya adalah tuple ke-0 dengan konten ulasan “ Distance traveled in 'AI learning' is very high. More examples could have been included." dan penilaian 5. Untuk menghitung nilai polaritas secara keseluruhan, perlu diketahui nilai polaritas setiap kata dari file dokumentasi XML.
Tabel 1. Nilai Polaritas dan Intensitas dari Kata “ high ”
Word Polarity Intensity high 0.0 1.0 high 0.2 1.0 high 0.0 1.0 high 0.3 1.0 high 0.3 1.0 high (average) 0.16 1.0 very 0.2 1.3 more 0.5 1.0
Nilai polaritas rata-rata dari kata " high " adalah 0.16 yang akan dihitung dengan kata " very " dengan ilustrasi sebagai berikut. Kata " very " sebagai kata pengubah tidak akan dihitung menggunakan nilai polaritasnya, tetapi kalimat " very high " dihitung dengan mengalikan nilai intensitas " very " dengan polaritas " high ".
�������� ("���� ℎ��ℎ") = 1.3 × 0.16 ≈ 0.208
Setelah mendapatkan nilai polaritas dari kalimat " very high ", kata berikutnya yang akan
diproses adalah " more ". Karena kata " more " berasal dari kalimat yang berbeda dari kalimat asli " very high ", maka dapat dihitung dengan menambahkan nilai polaritas keduanya dan membaginya dengan 2, dengan hasil sebagai berikut.
�������� ("… ���� ℎ��ℎ. ���� …" = 0.5 + 0.208
2 ≈ 0.354
Untuk menghitung konsistensi antara nilai polaritas ulasan dengan penilaian yang diberikan, ditetapkan ambang batas untuk nilai polaritas kurang dari 0 dan penilaian kurang dari 4 untuk ulasan negatif dan penilaian rendah. Sebaliknya, untuk ulasan positif dan penilaian tinggi, ambang batas untuk nilai polaritas lebih dari 0 dan penilaian lebih dari 2. Jika sebuah data memenuhi kedua syarat tersebut, maka data tersebut diklasifikasikan sebagai data yang konsisten untuk dilanjutkan ke proses selanjutnya. Pada sampel ini, ulasan tersebut konsisten karena nilai polaritas di atas 0 dan disertai dengan penilaian di atas 2.
Karena jumlah data yang masih relatif besar, maka dilakukan pengambilan sampel secara acak dengan menggunakan margin of error sebesar 1%, variabilitas maksimum 0,5, dan tingkat kepercayaan 95% yang dapat dihitung dengan penjumlahan sebagai berikut.
� = 1.96 2 × 0.5 × 1 − 0.5
0.01 2 = 9604
Dalam penerapan yang sebenarnya,
membulatkan ukuran sampel ke jumlah yang lebih mudah dikelola dan dibulatkan adalah tepat, meskipun hasilnya adalah 9.604. Patut dicatat bahwa meskipun ukuran sampel yang optimal dapat ditentukan secara tepat dengan metode statistik, penggunaan nilai yang dibulatkan akan memudahkan implementasi dalam penerapannya. Dengan margin of error 1% dan tingkat kepercayaan 95%, ukuran sampel 10.000 masih akan dianggap sebagai ukuran sampel optimal dari populasi 97.096 data yang merupakan jumlah data bersih tanpa data yang tidak memenuhi persyaratan pemodelan.
Kemudian, kita dapat melanjutkan untuk membagi dataset menjadi data training dan data testing . Data training akan berukuran 7000, sedangkan data testing akan berukuran 3000 agar sesuai dengan rasio 70:30. Data training kemudian digunakan untuk membuat tabel
pivot antara pengguna dan item dengan nilai testing . Jika ada nilai null , maka nilai tersebut akan diganti dengan nilai 0.0.
Tahapan dalam proses pemodelan termasuk membagi dataset menjadi dataset training dan dataset testing dengan rasio 70% dan 30% dari keseluruhan dataset. Dari 7000 dataset training , sebuah tabel pivot dibuat dengan ‘ user_id ’ sebagai indeks, ‘ course_id_encoded ’ sebagai kolom, dan ‘ rating ’ sebagai nilai. Pemodelan akan menggunakan dataset training untuk perhitungan Centered Cosine Similarity untuk menghasilkan output berupa prediksi untuk target pengguna, serta integrasi XAI yang menggambarkan penilaian untuk setiap indeks dari matriks kemiripan.
Untuk menghitung nilai Centered Cosine Similarity, hitung terlebih dahulu rata-rata penilaian yang diberikan oleh setiap pengguna. Setelah itu, kurangi setiap nilai yang diberikan pengguna dengan nilai rata-rata, proses ini menghasilkan
penilaian yang telah dinormalisasi sehingga dapat dilanjutkan dengan perhitungan Cosine Similarity seperti biasa. Namun, jika menggunakan library Cosine Similarity, nilai yang dihasilkan hanya berada pada rentang 0 sampai 1. Untuk mengatasi hal tersebut, dilakukan perhitungan manual tanpa library Python.
Tabel 2. Penilaian dari Tiga Sampel
course_id_encoded user_id 4 22 70 147 380 386 436 439 456 74 4 5 5 5 5 4 3 3 177 1 5 14326 5 Tabel 3. Penilaian yang Telah Dinormalisasi user_id course_id_encoded 74 177 14326 4 -1/4 22 3/4 -2 0 70 3/4 147 3/4 380 3/4 386 -1/4 436 -5/4 439 -5/4 456 2 Average 34/8 6/2 5/1
Melalui tabel penilaian dari 3 pengguna yang berbeda yang diambil dari dataset training untuk mengilustrasikan perhitungan, perhitungan dapat dilakukan untuk menghitung kemiripan antara pengguna dengan ID 74 dan 177 menggunakan rumus Cosine Similarity yang biasa digunakan.
����������
=
3 4 . ( − 2) − 1 4 2 + 3 4 2 + 3 4 2 + 3 4 2 + 3 4 2 + − 1 4 2 + − 5 4 2 + − 5 4 2 ( − 2) 2 + 2 2 ����������
= 3 2 2 × − 1 4 2 + 4 × 3 4 2 + 2 × − 5 4 2 × 8
���������� = 3 11 2 − 2 22
≈− 0.226
Setelah nilai Centered Cosine Similarity ditampilkan dalam bentuk matriks pada output sistem, dilakukan dot product dari matriks tersebut dengan tabel pivot dari dataset training untuk mendapatkan prediksi penilaian yang diberikan oleh pengguna. Agar nilainya tetap berada pada rentang yang sama pada dataset testing , maka hasil prediksi penilaian diskalakan dengan rentang 0 hingga 5. Matriks prediksi penilaian yang telah diskalakan kemudian digunakan sebagai dataframe dengan tabel pivot dari dataset training sebagai indeksnya. Berikut ini adalah ilustrasi perhitungan prediksi penilaian untuk kursus 456 dari pengguna dengan ID 74 berdasarkan nilai Centered Cosine Similarity antara pengguna dengan ID 74 dan 177. Sebagai nilai kemiripan antara pengguna u dan pengguna v , sebagai penilaian pengguna v untuk kursus i , dan sebagai nilai rata-rata penilaian pengguna u .
� �� = ∑ �∈� � �� ⋅ � �� ∑ �∈� � �� + � �
� 74, 456 = ( − 0.226 × 5) −0.226 + 17
4
� 74, 456 = −3 4 ≈ 0.75
Proses terakhir dari penerapan metode Collaborative Filtering berbasis pengguna dalam pemodelan sistem rekomendasi kursus MOOC sebelum integrasi
XAI adalah
memberikan saran kursus kepada pengguna berdasarkan hasil prediksi penilaian kursus yang belum pernah dinilai dan diulas oleh target pengguna.

## Gambar 3. Output Rekomendasi Kursus
Tahap terakhir dari pemodelan adalah evaluasi dengan menggunakan metrik RMSE. Untuk menskalakan hasil prediksi ke penilaian dari 1 hingga 5, penskalaan dilakukan dengan menggunakan Reader dari library surprise di Python. Skala ini diperlukan untuk perhitungan RMSE. Tabel pivot dibentuk untuk dataset testing sehingga memiliki bentuk yang sesuai untuk dibandingkan dengan dataframe dari hasil penilaian yang diprediksi. Kemudian, hitung nilai kuadrat error untuk mendapatkan nilai MSE, sedangkan nilai RMSE adalah hasil akar dari nilai MSE. Pada hasil yang didapatkan, nilai RMSE untuk model ini adalah 0.24 untuk selisih antara hasil prediksi dengan dataset testing , yang berarti prediksi sistem rekomendasi memiliki kesalahan sekitar seperempat poin dari skala 5 poin pada penilaian sebenarnya. Pada grafik yang disajikan, warna biru merepresentasikan penilaian aktual, sedangkan warna jingga merepresentasikan penilaian yang diprediksi oleh sistem.

## Gambar 4. Output Nilai RMSE
Setelah model selesai dibuat dan dapat memberikan rekomendasi berdasarkan hasil
prediksi, dilakukan integrasi XAI dengan menggunakan teknik LIME untuk memberikan penjelasan dari setiap hasil prediksi penilaian. Pada contoh ini, yang menjadi target adalah data ke 205840 yang merupakan data dengan prediksi penilaian sebesar 5.0, dengan kelas positif dan memiliki probabilitas sebesar 0.142 untuk hasil prediksi.

## Gambar 5. Output Integrasi LIME

## Kesimpulan dan Saran
Kesimpulan
Dalam hal personalisasi, sistem dapat memberikan rekomendasi yang disesuaikan dengan preferensi pengguna sebelumnya. Analisis sentimen juga menambah keakuratan rekomendasi yang diberikan, hal ini meningkatkan pengalaman dan keterlibatan pengguna dengan halaman MOOC. Melalui teknik preprocessing dan optimasi, sistem dapat mencapai efisiensi dalam aspek komputasi tanpa mengorbankan akurasi, sehingga dapat diskalakan untuk dataset yang besar. Selain itu, integrasi XAI juga berperan penting dalam kepercayaan sistem dalam memberikan rekomendasi. Terakhir, evaluasi metrik RMSE secara terus menerus memberikan kesempatan untuk perbaikan berulang untuk memberikan prediksi yang lebih tepat di masa depan.

## Saran
Untuk pengembangan yang berkelanjutan, dapat difokuskan lebih detil kepada XAI yang dalam model ini adalah sebagai tambahan.
Pengembangan
sistem rekomendasi menggunakan integrasi XAI belum banyak ditemukan di penelitian sebelumnya, sehingga masih membuka kesempatan untuk diteliti lebih lanjut. Teknik XAI juga semakin berkembang seiring dengan banyaknya library yang dapat digunakan sebagai tools untuk proses integrasi. Dari banyaknya library yang ada, teknik XAI tertentu dapat dipilih sesuai dengan kebutuhan pemodelan.

## Referensi
[1] S. Al Shaqsi and R. T. Syed, “Massive open online courses and entrepreneurship
education
in higher education institutions,” in Technology and Entrepreneurship Education: Adopting
Creative Digital Approaches to Learning and Teaching , 2022. doi: 10.1007/978-3-030- 84292-5_8.
[2] S. Rizvi, B. Rienties, J. Rogaten, and R. F. Kizilcec, “Beyond one-size-fits-all in
MOOCs: Variation in learning design and persistence of learners in different cultural and socioeconomic contexts,” Comput Human Behav , vol. 126, 2022, doi: 10.1016/j.chb.2021.106973.
[3] S. Bansal and N. Baliyan, “A study of recent recommender system techniques,” International Journal of Knowledge and Systems Science , vol. 10, no. 2, 2019, doi: 10.4018/IJKSS.2019040102.
[4] R. Duan, C. Jiang, and H. K. Jain, “Combining review-based collaborative filtering and matrix factorization: A solution to rating’s sparsity problem,” Decis Support Syst , vol. 156, 2022, doi: 10.1016/j.dss.2022.113748.
[5] A. Beheshti, S. Yakhchi, S. Mousaeirad, S. M. Ghafari, S. R. Goluguri, and M. A. Edrisi, “Towards cognitive recommender systems,” Algorithms , vol. 13, no. 8, 2020, doi: 10.3390/A13080176.
[6] J. Bharadiya and J. P. Bharadiya, “Machine Learning and AI in Business Intelligence: Trends and Opportunities,” International Journal of Computer (IJC) International Journal of Computer , vol. 48, no. 1, 2023.
[7] Z. Li, H. Zhao, Q. Liu, Z. Huang, T. Mei, and E. Chen, “Learning from History and Present: Next-item Recommendation via
Discriminatively Exploiting User Behaviors,” 2018, doi: 10.1145/3219819.3220014. [8] S. M. Al-Ghuribi and S. A. Mohd Noah, “Multi-Criteria Review-Based Recommender System-The State of the Art,” IEEE Access , vol. 7. 2019. doi:
10.1109/ACCESS.2019.2954861.
[9] M. Á. García-Cumbreras, A. Montejo-Ráez, and M. C. Díaz-Galiano, “Pessimists and optimists: Improving collaborative filtering through sentiment analysis,” Expert Syst Appl , vol. 40, no. 17, 2013, doi: 10.1016/j.eswa.2013.06.049.
[10] W. Zhang, G. Ding, L. Chen, C. Li, and C. Zhang, “Generating virtual ratings from chinese reviews to augment online recommendations,” ACM Trans Intell Syst Technol , vol. 4, no. 1, 2013, doi: 10.1145/2414425.2414434.
[11] S. Li et al. , “Quantification and prediction of engagement: Applied to personalized course recommendation to reduce dropout in MOOCs,” Inf Process Manag , vol. 61, no.
1, Jan. 2024, doi: 10.1016/j.ipm.2023.103536.
[12] J. Chen, X. Wang, S. Zhao, F. Qian, and Y. Zhang, “Deep attention user-based collaborative filtering for recommendation,” Neurocomputing , vol. 383, 2020, doi: 10.1016/j.neucom.2019.09.050. [13] Z. Cui et al. , “Personalized Recommendation System Based on Collaborative Filtering for IoT Scenarios,”
IEEE Trans Serv Comput , vol. 13, no. 4, 2020, doi: 10.1109/TSC.2020.2964552.
[14] L. Longo, R. Goebel, F. Lecue, P. Kieseberg, and A. Holzinger, “Explainable Artificial Intelligence: Concepts, Applications,
Research Challenges and Visions,” in Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) , 2020. doi: 10.1007/978-3- 030-57321-8_1.
[15] J. P. Gonzalo, A. Muñoz, S. Roque, J.
Portela, and G. Madrid, “EXPLAINABLE ARTIFICIAL INTELLIGENCE (XAI) TECHNIQUES BASED ON PARTIAL DERIVATIVES WITH APPLICATIONS TO
NEURAL NETWORKS,” 2023.
[16] G. Srivastava et al. , “XAI for Cybersecurity: State of the Art, Challenges, Open Issues and Future Directions,” ACM Comput. Surv ,
vol. 1, no. 1, 2022, doi:
10.1145/1122445.1122456.
[17] E. J. Chia and M. K. Najafabadi, “Solving Cold Start Problem for Recommendation System Using Content-Based Filtering,” in Proceedings - 2022 International Conference on Computer Technologies, ICCTech 2022 , 2022. doi: 10.1109/ICCTech55650.2022.00015.
[18] A. M. Ridwan, D. R. Ramdania, D. S. A. Maylawati, A. Wahana, E. Mulyana, and M.
I. Al-Amin, “Leather Product Recommendation System using Collaborative Filtering Algorithm,” in Proceeding of 2022 8th International Conference on Wireless and Telematics, ICWT 2022 , 2022. doi:
10.1109/ICWT55831.2022.9935395.
[19] R. Bharti and D. Gupta, “Recommending Top N Movies Using Content-Based Filtering and Collaborative Filtering with Hadoop and Hive Framework,” in
Advances in Intelligent Systems and Computing , vol. 740, 2019. doi: 10.1007/978- 981-13-1280-9_10.
[20] D. Shin, “How do users interact with algorithm recommender systems? The interaction of users, algorithms, and performance,” Comput Human Behav , vol.
109, 2020, doi: 10.1016/j.chb.2020.106344.
[21] I. Karabila, N. Darraz, A. El-Ansari, N. Alami, and M. El Mallahi, “Enhancing Collaborative Filtering-Based Recommender System Using Sentiment Analysis,” Future Internet , vol. 15, no. 7, 2023, doi: 10.3390/fi15070235.
[22] A. Da’u and N. Salim, “Recommendation system based on deep learning methods: a systematic review and new directions,” Artif Intell Rev , vol. 53, no. 4, 2020, doi: 10.1007/s10462-019-09744-1.
[23] G. Shani and A. Gunawardana, “Evaluating Recommendation Systems,” in Recommender Systems Handbook , 2011. doi: 10.1007/978-0-387-85820-3_8.
[24] J. Ni, Y. Cai, G. Tang, and Y. Xie, “Collaborative filtering recommendation
algorithm based on TF-IDF and user characteristics,” Applied Sciences
(Switzerland) , vol. 11, no. 20, 2021, doi:
10.3390/app11209554.
[25] Frontiers in massive data analysis . 2013. doi:
10.17226/18374.