Stars Realigned: Meningkatkan Sistem Peringkat IMDb
Diterbitkan: 2022-03-11Pengamat film terkadang menggunakan peringkat untuk memilih apa yang akan ditonton. Setelah melakukan ini sendiri, saya perhatikan bahwa banyak film dengan peringkat terbaik memiliki genre yang sama: drama. Ini membuat saya berpikir bahwa peringkat bisa memiliki semacam bias genre.
Saya berada di salah satu situs paling populer untuk pecinta film, IMDb, yang mencakup film dari seluruh dunia dan dari tahun mana pun. Peringkatnya yang terkenal didasarkan pada banyak koleksi ulasan. Untuk analisis data IMDb ini, saya memutuskan untuk mengunduh semua informasi yang tersedia di sana untuk menganalisisnya dan mencoba membuat peringkat baru yang disempurnakan yang akan mempertimbangkan rentang kriteria yang lebih luas.
Sistem Peringkat IMDb: Memfilter Data IMDb
Saya dapat mengunduh informasi tentang 242.528 film yang dirilis antara tahun 1970 dan 2019. Informasi yang diberikan IMDb kepada saya untuk masing-masing adalah: Rank
, Title
, ID
, Year
, Certificate
, Rating
, Votes
, Metascore
, Synopsis
, Runtime
, Genre
, Gross
, dan SearchYear
.
Untuk mendapatkan informasi yang cukup untuk dianalisis, saya memerlukan jumlah minimum ulasan per film, jadi hal pertama yang saya lakukan adalah menyaring film dengan kurang dari 500 ulasan. Ini menghasilkan satu set 33.296 film, dan di tabel berikutnya, kita bisa melihat ringkasan analisis bidangnya:
Bidang | Jenis | Hitungan Null | Berarti | median |
---|---|---|---|---|
Pangkat | Faktor | 0 | ||
Judul | Faktor | 0 | ||
pengenal | Faktor | 0 | ||
Tahun | ke dalam | 0 | 2003 | 2006 |
Sertifikat | Faktor | 17587 | ||
Peringkat | ke dalam | 0 | 6.1 | 6.3 |
Suara | ke dalam | 0 | 21040 | 2017 |
Metaskor | ke dalam | 22350 | 55.3 | 56 |
Ringkasan | Faktor | 0 | ||
Waktu tayang | ke dalam | 132 | 104.9 | 100 |
Aliran | Faktor | 0 | ||
Bruto | Faktor | 21415 | ||
CariTahun | ke dalam | 0 | 2003 | 2006 |
Catatan: Dalam R, Factor
mengacu pada string. Rank
dan Gross
seperti itu dalam dataset IMDb asli karena memiliki, misalnya, ribuan pemisah.
Sebelum mulai memperbaiki skor, saya harus menganalisis lebih lanjut dataset ini. Sebagai permulaan, bidang Certificate
, Metascore
, dan Gross
memiliki lebih dari 50% nilai nol sehingga tidak berguna. Peringkat secara intrinsik bergantung pada Peringkat (variabel yang akan disempurnakan), oleh karena itu, tidak ada informasi yang berguna. Hal yang sama berlaku dengan ID
karena itu adalah pengidentifikasi unik untuk setiap film.
Akhirnya, Title
dan Synopsis
adalah bidang teks pendek. Mungkin saja untuk menggunakannya melalui beberapa teknik NLP, tetapi karena jumlah teksnya terbatas, saya memutuskan untuk tidak memperhitungkannya untuk tugas ini.
Setelah filter pertama ini, tersisa Genre
, Rating
, Year
, Votes
, SearchYear
, dan Runtime
. Di bidang Genre
, ada lebih dari satu genre per film, dipisahkan dengan koma. Jadi untuk menangkap efek tambahan karena memiliki banyak genre, saya mengubahnya menggunakan enkode one-hot. Ini menghasilkan 22 bidang boolean baru—satu untuk setiap genre—dengan nilai 1 jika film memiliki genre ini atau 0 sebaliknya.
Analisis Data IMDb
Untuk melihat korelasi antar variabel, saya menghitung matriks korelasi.
Di sini, nilai yang mendekati 1 menunjukkan korelasi positif yang kuat, dan nilai yang mendekati -1 menunjukkan korelasi negatif yang kuat. Dengan grafik ini, saya membuat banyak pengamatan:
-
Year
danSearchYear
benar-benar berkorelasi. Ini berarti bahwa mereka mungkin memiliki nilai yang sama dan memiliki keduanya sama dengan hanya memiliki satu, jadi saya hanya menyimpanYear
. - Beberapa bidang telah mengharapkan korelasi positif, seperti:
-
Music
denganMusical
-
Action
denganAdventure
-
Animation
denganAdventure
-
- Sama untuk korelasi negatif:
-
Drama
vs.Horror
-
Comedy
vs.Horror
-
Horror
vs.Romance
-
- Terkait dengan variabel kunci (
Rating
) saya perhatikan:- Ini memiliki korelasi positif dan penting dengan
Runtime
danDrama
. - Ini memiliki korelasi yang lebih rendah dengan
Votes
,Biography
, danHistory
. - Ini memiliki korelasi yang sangat negatif dengan
Horror
dan negatif yang lebih rendah denganThriller
,Action
,Sci-Fi
, danYear
. - Itu tidak memiliki korelasi signifikan lainnya.
- Ini memiliki korelasi positif dan penting dengan
Tampaknya drama panjang memiliki rating yang baik, sedangkan film horor pendek tidak. Menurut saya—saya tidak punya data untuk memeriksanya—tidak ada korelasinya dengan jenis film yang menghasilkan lebih banyak keuntungan, seperti film Marvel atau Pixar.
Bisa jadi orang yang memberikan suara di situs ini bukanlah perwakilan terbaik dari kriteria masyarakat umum. Masuk akal karena mereka yang meluangkan waktu untuk mengirimkan ulasan di situs mungkin adalah semacam kritikus film dengan kriteria yang lebih spesifik. Bagaimanapun, tujuan saya adalah menghilangkan efek fitur film umum, jadi saya mencoba menghilangkan bias ini dalam prosesnya.
Distribusi Genre dalam Sistem Rating IMDb
Langkah selanjutnya adalah menganalisis distribusi masing-masing genre berdasarkan peringkat. Untuk melakukan itu, saya membuat bidang baru bernama Principal_Genre
berdasarkan genre pertama yang muncul di bidang Genre
asli. Untuk memvisualisasikannya, saya membuat grafik biola.
Sekali lagi, saya bisa melihat bahwa Drama
berkorelasi dengan rating tinggi dan Horror
dengan rating rendah. Namun, grafik ini juga mengungkapkan genre lain yang memiliki skor bagus: Biography
dan Animation
. Bahwa korelasi mereka tidak muncul dalam matriks sebelumnya mungkin karena terlalu sedikit film dengan genre ini. Jadi selanjutnya saya membuat plot bar frekuensi berdasarkan genre.
Secara efektif, Biography
and Animation
hanya memiliki sedikit film, seperti halnya Sport
and Adult
. Untuk alasan ini, mereka tidak berkorelasi dengan baik dengan Rating
.
Variabel Lain dalam Sistem Peringkat IMDb
Setelah itu, saya mulai menganalisis kovariabel kontinu: Year
, Votes
, dan Runtime
. Di plot pencar, Anda dapat melihat hubungan antara Rating
dan Year
.
Seperti yang kita lihat sebelumnya, Year
tampaknya memiliki korelasi negatif dengan Rating
: Seiring bertambahnya tahun, varian peringkat juga meningkat, mencapai lebih banyak nilai negatif pada film-film baru.
Selanjutnya, saya membuat plot yang sama untuk Votes
.
Di sini, korelasinya lebih jelas: semakin tinggi jumlah suara, semakin tinggi peringkatnya. Namun, sebagian besar film tidak memiliki banyak suara, dan dalam hal ini, Rating
memiliki varian yang lebih besar.
Terakhir, saya melihat hubungannya dengan Runtime
.
Sekali lagi, kami memiliki pola yang serupa tetapi bahkan lebih kuat: Runtime yang lebih tinggi berarti peringkat yang lebih tinggi, tetapi hanya ada sedikit kasus untuk runtime yang tinggi.
Penyempurnaan Sistem Peringkat IMDb
Setelah semua analisis ini, saya memiliki gagasan yang lebih baik tentang data yang saya tangani, jadi saya memutuskan untuk menguji beberapa model untuk memprediksi peringkat berdasarkan bidang ini. Ide saya adalah bahwa perbedaan antara prediksi model terbaik saya dan Rating
sebenarnya akan menghilangkan pengaruh fitur umum dan mencerminkan karakteristik tertentu yang membuat film lebih baik daripada yang lain.
Saya mulai dengan model paling sederhana, model linier. Untuk mengevaluasi model mana yang berkinerja lebih baik, saya mengamati kesalahan root-mean-square (RMSE) dan mean absolute (MAE). Mereka adalah ukuran standar untuk tugas semacam ini. Juga, mereka berada pada skala yang sama dengan variabel yang diprediksi, sehingga mudah untuk ditafsirkan.
Pada model pertama ini, RMSE adalah 1,03, dan MAE 0,78. Tetapi model linier mengandaikan independensi atas kesalahan, median nol, dan varians konstan. Jika ini benar, grafik “nilai sisa vs. prediksi” akan terlihat seperti awan tanpa struktur. Jadi saya memutuskan untuk membuat grafik untuk menguatkan itu.
Saya dapat melihat bahwa hingga 7 dalam nilai prediksi, ia memiliki bentuk yang tidak terstruktur, tetapi setelah nilai ini, ia memiliki bentuk penurunan linier yang jelas. Akibatnya, pengandaian modelnya buruk, dan juga, saya memiliki "kelimpahan" pada nilai prediksi karena pada kenyataannya, Rating
tidak boleh lebih dari 10.
Dalam analisis data IMDb sebelumnya, dengan jumlah Votes
yang lebih tinggi, Rating
meningkat; namun, ini terjadi dalam beberapa kasus dan untuk sejumlah besar suara. Hal ini dapat menyebabkan distorsi pada model dan menghasilkan Rating
overflow. Untuk memeriksa ini, saya mengevaluasi apa yang akan terjadi dengan model yang sama ini, menghapus bidang Votes
.

Ini jauh lebih baik! Itu memiliki bentuk yang lebih jelas dan tidak terstruktur tanpa nilai prediksi overflow. Bidang Votes
juga bergantung pada aktivitas pengulas dan bukan merupakan fitur film, jadi saya memutuskan untuk menghapus bidang ini juga. Kesalahan setelah menghapusnya adalah 1,06 pada RMSE dan 0,81 pada MAE — sedikit lebih buruk, tetapi tidak terlalu banyak, dan saya lebih suka memiliki anggapan dan pemilihan fitur yang lebih baik daripada kinerja yang sedikit lebih baik pada set pelatihan saya.
Analisis Data IMDb: Seberapa Baik Model Lain Bekerja?
Hal berikutnya yang saya lakukan adalah mencoba berbagai model untuk menganalisis mana yang berkinerja lebih baik. Untuk setiap model, saya menggunakan teknik pencarian acak untuk mengoptimalkan nilai hyperparameter dan validasi silang 5 kali lipat untuk mencegah bias model. Pada tabel berikut adalah estimasi error yang didapat:
Model | RMSE | MAE |
---|---|---|
Jaringan syaraf | 1.044596 | 0,795699 |
meningkatkan | 1.046639 | 0.7971921 |
Pohon Inferensi | 1.05704 | 0.8054783 |
GAM | 1.0615108 | 0.8119555 |
Model Linier | 1.066539 | 0.8152524 |
Reguler Linear yang Dihukum | 1.066607 | 0.8153331 |
KNN | 1.066714 | 0.8123369 |
Bukit Bayesian | 1.068995 | 0.8148692 |
SVM | 1.073491 | 0.8092725 |
Seperti yang Anda lihat, semua model bekerja dengan cara yang sama, jadi saya menggunakan beberapa di antaranya untuk menganalisis lebih banyak data. Saya ingin tahu pengaruh masing-masing bidang terhadap peringkat. Cara paling sederhana untuk melakukannya adalah dengan mengamati parameter model linier. Tetapi untuk menghindari distorsi pada mereka sebelumnya, saya telah menskalakan data dan kemudian melatih kembali model linier. Bobotnya seperti yang digambarkan di sini.
Dalam grafik ini, jelas terlihat bahwa dua variabel terpenting adalah Horror
dan Drama
, di mana yang pertama berdampak negatif pada rating dan yang kedua berdampak positif. Ada juga bidang lain yang berdampak positif—seperti Animation
dan Biography
—sementara Action
, Sci-Fi
, dan Year
berdampak negatif. Selain itu, Principal_Genre
tidak memiliki dampak yang cukup besar, jadi lebih penting genre mana yang dimiliki sebuah film daripada yang utama.
Dengan Generalized Additive Model (GAM), saya juga bisa melihat dampak yang lebih detail untuk variabel kontinu, yang dalam hal ini adalah Year
.
Di sini, kami memiliki sesuatu yang lebih menarik. Memang benar bahwa untuk film-film baru-baru ini, peringkatnya cenderung lebih rendah, efeknya tidak konstan. Ini memiliki nilai terendah pada tahun 2010 dan kemudian tampaknya "pulih." Akan menarik untuk mengetahui apa yang terjadi setelah tahun itu dalam produksi film yang dapat menghasilkan perubahan ini.
Model terbaik adalah jaringan saraf, yang memiliki RMSE dan MAE terendah, tetapi seperti yang Anda lihat, tidak ada model yang mencapai kinerja sempurna. Tapi ini bukan berita buruk dalam hal tujuan saya. Informasi yang tersedia izinkan saya memperkirakan kinerjanya dengan baik, tetapi itu tidak cukup. Ada beberapa informasi lain yang tidak saya dapatkan dari IMDb yaitu membuat Rating
berbeda dari skor yang diharapkan berdasarkan Genre
, Runtime
, dan Year
. Mungkin penampilan aktor, skrip film, fotografi, atau banyak hal lainnya.
Dari sudut pandang saya, karakteristik lain inilah yang benar-benar penting dalam memilih apa yang harus ditonton. Saya tidak peduli apakah film yang diberikan adalah drama, aksi, atau fiksi ilmiah. Saya ingin itu memiliki sesuatu yang istimewa, sesuatu yang membuat saya bersenang-senang, membuat saya belajar sesuatu, membuat saya merenungkan kenyataan, atau hanya menghibur saya.
Jadi saya membuat peringkat baru yang disempurnakan dengan mengambil peringkat IMDb dan mengurangi peringkat yang diprediksi dari model terbaik. Dengan melakukan ini, saya menghapus efek Genre
, Runtime
, dan Year
dan menyimpan informasi lain yang tidak diketahui ini yang jauh lebih penting bagi saya.
Alternatif Sistem Peringkat IMDb: Hasil Akhir
Mari kita lihat sekarang mana 10 film terbaik menurut peringkat baru saya vs. menurut peringkat IMDb yang sebenarnya:
IMDb
Judul | Aliran | Peringkat IMDb | Peringkat Halus |
---|---|---|---|
Ko ke tamo peva | Petualangan,Komedi,Drama | 8.9 | 1.90 |
Dipu Nomor 2 | Petualangan, Keluarga | 8.9 | 3.14 |
El senor de los anillos: El retorno del rey | Petualangan, Drama, Fantasi | 8.9 | 2.67 |
El senor de los anillos: La comunidad del anillo | Petualangan, Drama, Fantasi | 8.8 | 2.55 |
Anbe Sivam | Petualangan,Komedi,Drama | 8.8 | 2.38 |
Hababam Sinifi Tatilde | Petualangan,Komedi,Drama | 8.7 | 1.66 |
El senor de los anillos: Las dos torres | Petualangan, Drama, Fantasi | 8.7 | 2.46 |
Panggilan Mudra | Petualangan, Drama, Romansa | 8.7 | 2.34 |
Tertarik | Petualangan, Drama, Fiksi Ilmiah | 8.6 | 2.83 |
Volver al futuro | Petualangan, Komedi, Fiksi Ilmiah | 8.5 | 2.32 |
Milikku
Judul | Aliran | Peringkat IMDb | Peringkat Halus |
---|---|---|---|
Dipu Nomor 2 | Petualangan, Keluarga | 8.9 | 3.14 |
Tertarik | Petualangan, Drama, Fiksi Ilmiah | 8.6 | 2.83 |
El senor de los anillos: El retorno del rey | Petualangan, Drama, Fantasi | 8.9 | 2.67 |
El senor de los anillos: La comunidad del anillo | Petualangan, Drama, Fantasi | 8.8 | 2.55 |
Kolah ghermezi va pesar khale | Petualangan,Komedi,Keluarga | 8.1 | 2.49 |
El senor de los anillos: Las dos torres | Petualangan, Drama, Fantasi | 8.7 | 2.46 |
Anbe Sivam | Petualangan,Komedi,Drama | 8.8 | 2.38 |
Los caballeros de la mesa cuadrada | Petualangan,Komedi,Fantasi | 8.2 | 2.35 |
Panggilan Mudra | Petualangan, Drama, Romansa | 8.7 | 2.34 |
Volver al futuro | Petualangan, Komedi, Fiksi Ilmiah | 8.5 | 2.32 |
Seperti yang Anda lihat, podium tidak berubah secara radikal. Ini diharapkan karena RMSE tidak begitu tinggi, dan di sini kita melihat puncaknya. Mari kita lihat apa yang terjadi dengan 10 terbawah:
IMDb
Judul | Aliran | Peringkat IMDb | Peringkat Halus |
---|---|---|---|
Torten Holnap - Film bulvar yang nakal | Komedi, Misteri | 1 | -4,86 |
Cumali Ceber: Allah Seni Alsin | Komedi | 1 | -4.57 |
Badang | Komedi, Fantasi | 1 | -4,74 |
yyyreek!!! Kosmiczna nominacja | Komedi | 1.1 | -4.52 |
Orang Amerika yang Bangga | Drama | 1.1 | -5.49 |
Browncoats: Perang Kemerdekaan | Aksi, Fiksi Ilmiah, Perang | 1.1 | -3.71 |
Akhir Pekan Itu Hidup | Komedi, Horor, Misteri | 1.2 | -4,53 |
Bolivia: el heroe | Animasi, Biografi | 1.2 | -5.34 |
Bangkitnya Kelelawar Hitam | Aksi, Fiksi Ilmiah | 1.2 | -3.65 |
hatsukoi | Drama | 1.2 | -5.38 |
Milikku
Judul | Aliran | Peringkat IMDb | Peringkat Halus |
---|---|---|---|
Orang Amerika yang Bangga | Drama | 1.1 | -5.49 |
Santa dan Kelinci Es Krim | Keluarga, Fantasi | 1.3 | -5.42 |
hatsukoi | Drama | 1.2 | -5.38 |
Reis | Biografi, Drama | 1.5 | -5.35 |
Bolivia: el heroe | Animasi, Biografi | 1.2 | -5.34 |
Hanum & Rangga: Iman & Kota | Drama, Romantis | 1.2 | -5.28 |
Setelah Musim Lalu | Animasi, Drama, Fiksi Ilmiah | 1.7 | -5.27 |
Barschel - Mord di Genf | Drama | 1.6 | -5.23 |
Rashu raifu | Drama | 1.5 | -5.08 |
Kamifusen | Drama | 1.5 | -5.08 |
Hal yang sama terjadi di sini, tetapi sekarang kita dapat melihat bahwa lebih banyak drama muncul dalam kasus yang disempurnakan daripada di IMDb, yang menunjukkan bahwa beberapa drama dapat di-over-ranking hanya untuk menjadi drama.
Mungkin podium yang paling menarik untuk dilihat adalah 10 film dengan perbedaan terbesar antara skor sistem peringkat IMDb dan yang saya haluskan. Film-film ini adalah film-film yang memiliki bobot lebih pada karakteristiknya yang tidak diketahui dan membuat film tersebut jauh lebih baik (atau lebih buruk) dari yang diharapkan untuk fitur-fiturnya yang diketahui.
Judul | Peringkat IMDb | Peringkat Halus | Perbedaan |
---|---|---|---|
Kanashimi no beradonna | 7.4 | -0,71 | 8.11 |
Superstar Yesus | 7.4 | -0,69 | 8.09 |
Tembok Pink Floyd | 8.1 | 0,03 | 8.06 |
Tenshi no tamago | 7.6 | -0.42 | 8.02 |
Jibon Theke Neya | 9.4 | 1.52 | 7.87 |
El baile | 7.8 | 0.00 | 7.80 |
Santa dan Tiga Beruang | 7.1 | -0,70 | 7.80 |
La alegre historia de Gober | 7.5 | -0,24 | 7.74 |
Piel de asno | 7 | -0,74 | 7.74 |
1776 | 7.6 | -0,11 | 7.71 |
Jika saya adalah seorang sutradara film dan harus membuat film baru, setelah melakukan semua analisis data IMDb ini, saya dapat memiliki gagasan yang lebih baik tentang jenis film apa yang harus dibuat untuk mendapatkan peringkat IMDb yang lebih baik. Itu akan menjadi drama biografi animasi panjang yang akan menjadi remake dari film lama—misalnya, Amadeus. Mungkin ini akan memastikan peringkat IMDb yang bagus, tapi saya tidak yakin tentang keuntungan…
Apa pendapat Anda tentang film-film yang mendapat peringkat dalam ukuran baru ini? Anda menyukai mereka? Atau lebih suka yang original? Beri tahu saya di komentar di bawah!