Sterne neu ausgerichtet: Verbesserung des IMDb-Bewertungssystems

Veröffentlicht: 2022-03-11

Filmzuschauer verwenden manchmal Rankings, um auszuwählen, was sie sehen möchten. Nachdem ich das selbst gemacht hatte, bemerkte ich, dass viele der am besten bewerteten Filme demselben Genre angehörten: Drama. Das ließ mich denken, dass das Ranking eine Art Genre-Voreingenommenheit haben könnte.

Ich war auf einer der beliebtesten Seiten für Filmliebhaber, IMDb, die Filme aus der ganzen Welt und aus jedem Jahr abdeckt. Sein berühmtes Ranking basiert auf einer riesigen Sammlung von Bewertungen. Für diese IMDb-Datenanalyse habe ich beschlossen, alle dort verfügbaren Informationen herunterzuladen, um sie zu analysieren und zu versuchen, ein neues, verfeinertes Ranking zu erstellen, das ein breiteres Spektrum an Kriterien berücksichtigt.

Das IMDb-Bewertungssystem: Filterung der IMDb-Daten

Ich konnte Informationen zu 242.528 Filmen herunterladen, die zwischen 1970 und 2019 einschließlich veröffentlicht wurden. Die Informationen, die IMDb mir für jeden gegeben hat, waren: Rank , Title , ID , Year , Certificate , Rating , Votes , Metascore , Synopsis , Runtime , Genre , Gross und SearchYear .

Um genügend Informationen zum Analysieren zu haben, benötigte ich eine Mindestanzahl von Rezensionen pro Film, also habe ich als erstes Filme mit weniger als 500 Rezensionen herausgefiltert. Dies führte zu einer Reihe von 33.296 Filmen, und in der nächsten Tabelle konnten wir eine zusammenfassende Analyse ihrer Felder sehen:

Bereich Art Nullzählung Bedeuten Median
Rang Faktor 0
Titel Faktor 0
ICH WÜRDE Faktor 0
Jahr Int 0 2003 2006
Zertifikat Faktor 17587
Bewertung Int 0 6.1 6.3
Stimmen Int 0 21040 2017
Metascore Int 22350 55.3 56
Zusammenfassung Faktor 0
Laufzeit Int 132 104.9 100
Genre Faktor 0
Grob Faktor 21415
SucheJahr Int 0 2003 2006

Hinweis: In R bezieht sich Factor auf Strings. Rank und Gross sind im ursprünglichen IMDb-Datensatz so, weil sie beispielsweise Tausende von Trennzeichen haben.

Bevor ich mit der Verfeinerung des Scores begann, musste ich diesen Datensatz weiter analysieren. Zunächst einmal hatten die Felder Certificate , Metascore und Gross mehr als 50 % Nullwerte, sodass sie nicht nützlich sind. Der Rang hängt intrinsisch von der Bewertung (der zu verfeinernden Variable) ab und enthält daher keine nützlichen Informationen. Das Gleiche gilt für die ID , da es sich um eine eindeutige Kennung für jeden Film handelt.

Title und Synopsis schließlich sind kurze Textfelder. Es könnte möglich sein, sie durch einige NLP-Techniken zu verwenden, aber da es sich um eine begrenzte Textmenge handelt, habe ich mich entschieden, sie für diese Aufgabe nicht zu berücksichtigen.

Nach diesem ersten Filter blieben Genre , Rating , Year , Votes , SearchYear und Runtime übrig. Im Genre -Feld gab es mehr als ein Genre pro Film, getrennt durch Kommas. Um den additiven Effekt vieler Genres einzufangen, habe ich es mit One-Hot-Codierung transformiert. Dies führte zu 22 neuen booleschen Feldern – eines für jedes Genre – mit einem Wert von 1, wenn der Film dieses Genre hatte, oder 0 andernfalls.

IMDb-Datenanalyse

Um die Korrelationen zwischen Variablen zu sehen, habe ich die Korrelationsmatrix berechnet.

Eine Korrelationsmatrix zwischen allen verbleibenden Originalspalten und den neuen Genrespalten. Zahlen nahe Null führen zu Leerstellen im Raster. Negative Korrelationen führen zu roten Punkten und positive Korrelationen zu blauen Punkten. Die Punkte sind größer und dunkler, je stärker die Korrelation ist. (Optische Highlights sind im Hauptartikeltext beschrieben.)

Dabei steht ein Wert nahe 1 für eine starke positive Korrelation und Werte nahe -1 für eine starke negative Korrelation. Anhand dieser Grafik habe ich viele Beobachtungen gemacht:

  • Year und SearchYear sind absolut korreliert. Das bedeutet, dass sie wahrscheinlich die gleichen Werte haben und dass es dasselbe ist, beide zu haben, als nur einen zu haben, also habe ich nur Year beibehalten.
  • Einige Felder hatten positive Korrelationen erwartet, wie zum Beispiel:
    • Music mit Musical
    • Action mit Adventure
    • Animation mit Adventure
  • Gleiches gilt für negative Korrelationen:
    • Drama gegen Horror
    • Comedy vs. Horror
    • Horror vs. Romance
  • Bezogen auf die Schlüsselvariable ( Rating ) ist mir aufgefallen:
    • Es hat eine positive und wichtige Korrelation mit Runtime und Drama .
    • Es hat eine geringere Korrelation mit Votes , Biography und History .
    • Es hat eine deutlich negative Korrelation mit Horror und eine niedrigere negative Korrelation mit Thriller , Action , Sci-Fi und Year .
    • Es hat keine anderen signifikanten Korrelationen.

Es schien so zu sein, dass lange Dramen gut bewertet wurden, kurze Horrorfilme dagegen nicht. Meiner Meinung nach – ich hatte nicht die Daten, um das zu überprüfen – korrelierte es nicht mit der Art von Filmen, die mehr Gewinn generieren, wie Marvel- oder Pixar-Filme.

Es könnte sein, dass die Personen, die auf dieser Seite abstimmen, nicht die besten Vertreter des allgemeinen Personenkriteriums sind. Es ist sinnvoll, weil diejenigen, die sich die Zeit nehmen, Rezensionen auf der Website einzureichen, wahrscheinlich eine Art Filmkritiker mit einem spezifischeren Kriterium sind. Wie auch immer, mein Ziel war es, den Effekt gängiger Filmfunktionen zu beseitigen, also habe ich versucht, diese Voreingenommenheit im Prozess zu beseitigen.

Genreverteilung im IMDb Rating System

Im nächsten Schritt wurde die Verteilung der einzelnen Genres über die Wertung analysiert. Dazu habe ich ein neues Feld mit dem Namen „ Principal_Genre “ erstellt, das auf dem ersten Genre basiert, das im ursprünglichen Feld „ Genre “ vorkam. Um dies zu visualisieren, habe ich ein Geigendiagramm erstellt.

Ein Geigendiagramm, das die Bewertungsverteilung für jedes Genre zeigt.

Einmal mehr konnte ich sehen, dass Drama mit hohen Bewertungen korreliert und Horror mit niedrigeren. Diese Grafik zeigte jedoch auch, dass andere Genres gute Werte aufweisen: Biography und Animation . Dass ihre Korrelationen in der vorherigen Matrix nicht auftauchten, lag wahrscheinlich daran, dass es zu wenige Filme mit diesen Genres gab. Als Nächstes erstellte ich ein Frequenzbalkendiagramm nach Genre.

Ein Balkendiagramm, das anzeigt, wie viele Filme jedes Genres in der Datenbank waren. Comedy, Drama und Action hatten Frequenzen um 6.000 oder darüber; Verbrechen und Horror waren über 2.000; der Rest lag unter 1.000.

Tatsächlich hatten Biography und Animation nur sehr wenige Filme, ebenso wie Sport und Adult . Aus diesem Grund korrelieren sie nicht sehr gut mit Rating .

Andere Variablen im IMDb-Bewertungssystem

Danach habe ich begonnen, die kontinuierlichen Kovariablen zu analysieren: Year , Votes und Runtime . Im Streudiagramm sehen Sie die Beziehung zwischen Rating und Year .

Ein Streudiagramm der Bewertung und der Jahre.

Wie wir zuvor gesehen haben, scheint das Year eine negative Korrelation mit der Rating zu haben: Mit zunehmendem Jahr nimmt auch die Bewertungsvarianz zu und erreicht bei neueren Filmen negativere Werte.

Als nächstes habe ich den gleichen Plot für Votes erstellt.

Ein Streudiagramm von Bewertungen und Stimmen.

Hier war der Zusammenhang deutlicher: Je höher die Anzahl der Stimmen, desto höher das Ranking. Die meisten Filme hatten jedoch nicht so viele Stimmen, und in diesem Fall hatte die Rating eine größere Varianz.

Zuletzt habe ich mir die Beziehung zu Runtime angesehen.

Ein Streudiagramm zwischen Bewertung und Laufzeit.

Auch hier haben wir ein ähnliches Muster, aber noch stärker: Höhere Laufzeiten bedeuten höhere Bewertungen, aber es gab nur sehr wenige Fälle für hohe Laufzeiten.

Verfeinerungen des IMDb-Bewertungssystems

Nach all diesen Analysen hatte ich eine bessere Vorstellung von den Daten, mit denen ich es zu tun hatte, also beschloss ich, einige Modelle zu testen, um die Bewertungen basierend auf diesen Feldern vorherzusagen. Meine Idee war, dass der Unterschied zwischen meinen besten Modellvorhersagen und der realen Rating den Einfluss der gemeinsamen Merkmale beseitigen und die besonderen Merkmale widerspiegeln würde, die einen Film besser als andere machen.

Ich begann mit dem einfachsten Modell, dem linearen. Um zu beurteilen, welches Modell besser abschneidet, habe ich den quadratischen Mittelwert (RMSE) und den mittleren absoluten (MAE) Fehler beobachtet. Sie sind Standardmaße für diese Art von Aufgabe. Außerdem befinden sie sich auf der gleichen Skala wie die vorhergesagte Variable, sodass sie leicht zu interpretieren sind.

In diesem ersten Modell betrug der RMSE 1,03 und der MAE 0,78. Lineare Modelle setzen jedoch Unabhängigkeit gegenüber den Fehlern, einen Median von Null und eine konstante Varianz voraus. Wenn dies korrekt ist, sollte der Graph „Residual vs. Predicted Values“ wie eine Wolke ohne Struktur aussehen. Also beschloss ich, es grafisch darzustellen, um das zu bestätigen.

Streudiagramm für Residuen vs. vorhergesagte Werte.

Ich konnte sehen, dass es bis zu 7 in den vorhergesagten Werten eine nicht strukturierte Form hatte, aber nach diesem Wert hat es eine klare linear abfallende Form. Folglich waren die Modellannahmen schlecht, und außerdem hatte ich einen „Überlauf“ bei den vorhergesagten Werten, da die Rating in Wirklichkeit nicht größer als 10 sein kann.

In der vorherigen IMDb-Datenanalyse verbesserte sich das Rating bei einer höheren Anzahl von Votes ; Dies geschah jedoch in einigen Fällen und für eine große Anzahl von Stimmen. Dies könnte Verzerrungen im Modell verursachen und diesen Rating erzeugen. Um dies zu überprüfen, habe ich ausgewertet, was mit demselben Modell passieren würde, indem ich das Votes -Feld entfernt habe.

Streudiagramm für Residuen vs. vorhergesagte Werte, wenn das Feld „Stimmen“ entfernt wird.

Das war viel besser! Es hatte eine klarere, nicht strukturierte Form ohne Überlauf-vorhergesagte Werte. Das Feld Votes hängt auch von der Aktivität der Rezensenten ab und ist kein Feature von Filmen, daher habe ich mich entschieden, dieses Feld ebenfalls zu streichen. Die Fehler nach dem Entfernen waren 1,06 auf RMSE und 0,81 auf MAE – etwas schlimmer, aber nicht so sehr, und ich zog es vor, bessere Annahmen und eine bessere Funktionsauswahl zu haben als eine etwas bessere Leistung auf meinem Trainingssatz.

IMDb-Datenanalyse: Wie gut funktionieren andere Modelle?

Das nächste, was ich tat, war, verschiedene Modelle auszuprobieren, um zu analysieren, welche besser abschnitten. Für jedes Modell habe ich die zufällige Suchtechnik verwendet, um die Hyperparameterwerte und die 5-fache Kreuzvalidierung zu optimieren, um Modellverzerrungen zu vermeiden. In der folgenden Tabelle sind die erhaltenen geschätzten Fehler aufgeführt:

Modell RMSE MAE
Neurales Netzwerk 1.044596 0,795699
Erhöhen 1.046639 0,7971921
Inferenzbaum 1.05704 0,8054783
GAM 1.0615108 0,8119555
Lineares Modell 1.066539 0,8152524
Bestrafte lineare Reg 1.066607 0,8153331
KNN 1.066714 0,8123369
Bayesianischer Grat 1.068995 0,8148692
SVM 1.073491 0,8092725

Wie Sie sehen können, verhalten sich alle Modelle ähnlich, daher habe ich einige von ihnen verwendet, um etwas mehr Daten zu analysieren. Ich wollte wissen, welchen Einfluss die einzelnen Felder auf die Bewertung haben. Dies geschieht am einfachsten durch Beobachtung der Parameter des linearen Modells. Aber um zuvor Verzerrungen zu vermeiden, hatte ich die Daten skaliert und dann das lineare Modell neu trainiert. Die Gewichte waren wie hier abgebildet.

Ein Balkendiagramm linearer Modellgewichtungen im Bereich von fast -0,25 für Horror bis fast 0,25 für Drama.

In dieser Grafik wird deutlich, dass zwei der wichtigsten Variablen Horror und Drama sind, wobei sich die erste negativ auf die Bewertung auswirkt und die zweite positiv. Es gibt auch andere Bereiche, die sich positiv auswirken – wie Animation und Biography –, während Action , Sci-Fi und Year sich negativ auswirken. Außerdem hat Principal_Genre keinen nennenswerten Einfluss, daher ist es wichtiger, welches Genre ein Film hat, als welches das Hauptgenre ist.

Mit dem verallgemeinerten additiven Modell (GAM) konnte ich auch einen detaillierteren Einfluss für die kontinuierlichen Variablen sehen, in diesem Fall das Year .

Ein Diagramm von Year vs. s(Year) unter Verwendung des verallgemeinerten additiven Modells. Der s(Jahr)-Wert folgt einer Kurve, die 1970 bei 0,6 beginnt, 2010 unter 0 abfällt und bis 2019 wieder auf nahe 0 ansteigt.

Hier haben wir etwas Interessanteres. Es stimmte zwar, dass die Bewertung bei neueren Filmen tendenziell niedriger war, aber der Effekt war nicht konstant. 2010 hat es den niedrigsten Wert und scheint sich dann zu „erholen“. Es wäre faszinierend herauszufinden, was nach diesem Jahr in der Filmproduktion passiert ist, das diese Veränderung hätte bewirken können.

Das beste Modell waren neuronale Netzwerke, die den niedrigsten RMSE und MAE hatten, aber wie Sie sehen können, erreichte kein Modell eine perfekte Leistung. Aber das war keine schlechte Nachricht in Bezug auf meine Zielsetzung. Die verfügbaren Informationen lassen mich die Leistung einigermaßen gut einschätzen, aber es reicht nicht aus. Es gibt einige andere Informationen, die ich nicht von IMDb erhalten konnte, die dazu führen, dass Rating von der erwarteten Punktzahl basierend auf Genre , Runtime und Year abweicht. Es kann sich um Schauspielerleistungen, Drehbücher, Fotografie oder viele andere Dinge handeln.

Aus meiner Sicht sind diese anderen Merkmale das, was wirklich wichtig ist, wenn es darum geht, was man sich ansieht. Es ist mir egal, ob ein bestimmter Film ein Drama, Action oder Science-Fiction ist. Ich möchte, dass es etwas Besonderes hat, etwas, das mir Spaß macht, mich etwas lernen lässt, mich über die Realität nachdenken lässt oder mich einfach nur unterhält.

Also habe ich eine neue, verfeinerte Bewertung erstellt, indem ich die IMDb-Bewertung genommen und die vorhergesagte Bewertung des besten Modells subtrahiert habe. Auf diese Weise habe ich den Effekt von Genre , Runtime und Year entfernt und diese anderen unbekannten Informationen beibehalten, die für mich viel wichtiger sind.

Alternative zum IMDb-Bewertungssystem: Die endgültigen Ergebnisse

Mal sehen, welche die 10 besten Filme nach meiner neuen Bewertung im Vergleich zur echten IMDb-Bewertung sind:

IMDb

Titel Genre IMDb-Bewertung Raffinierte Bewertung
Ko zu Tamo Peva Abenteuer, Komödie, Drama 8.9 1,90
Dipu Nummer 2 Abenteuer, Familie 8.9 3.14
El senor de los anillos: El retorno del rey Abenteuer, Drama, Fantasy 8.9 2.67
El senor de los anillos: La comunidad del anillo Abenteuer, Drama, Fantasy 8.8 2.55
Anbe Sivam Abenteuer, Komödie, Drama 8.8 2.38
Hababam Sinifi Tatilde Abenteuer, Komödie, Drama 8.7 1.66
El senor de los anillos: Las dos torres Abenteuer, Drama, Fantasy 8.7 2.46
Mudras rufen Abenteuer, Drama, Romanze 8.7 2.34
Interessant Abenteuer, Drama, Science-Fiction 8.6 2.83
Volver al futuro Abenteuer, Komödie, Science-Fiction 8.5 2.32

Bergwerk

Titel Genre IMDb-Bewertung Raffinierte Bewertung
Dipu Nummer 2 Abenteuer, Familie 8.9 3.14
Interessant Abenteuer, Drama, Science-Fiction 8.6 2.83
El senor de los anillos: El retorno del rey Abenteuer, Drama, Fantasy 8.9 2.67
El senor de los anillos: La comunidad del anillo Abenteuer, Drama, Fantasy 8.8 2.55
Kolah ghermezi va pesar khale Abenteuer, Komödie, Familie 8.1 2.49
El senor de los anillos: Las dos torres Abenteuer, Drama, Fantasy 8.7 2.46
Anbe Sivam Abenteuer, Komödie, Drama 8.8 2.38
Los Caballeros de la Mesa Cuadrada Abenteuer, Komödie, Fantasy 8.2 2.35
Mudras rufen Abenteuer, Drama, Romanze 8.7 2.34
Volver al futuro Abenteuer, Komödie, Science-Fiction 8.5 2.32

Wie Sie sehen können, hat sich das Podium nicht radikal verändert. Dies wurde erwartet, weil der RMSE nicht so hoch war, und hier beobachten wir die Spitze. Mal sehen, was mit den unteren 10 passiert ist:

IMDb

Titel Genre IMDb-Bewertung Raffinierte Bewertung
Holnap Tortent - Ein schlüpfriger Bulvarfilm Komödie, Mysterium 1 -4,86
Cumali Ceber: Allah Seni Alsin Komödie 1 -4,57
Badang Komödie, Fantasie 1 -4,74
Yyyreek!!! Kosmiczna nominacja Komödie 1.1 -4,52
Stolzer Amerikaner Theater 1.1 -5.49
Browncoats: Unabhängigkeitskrieg Action, Sci-Fi, Krieg 1.1 -3,71
Das Wochenende, das es lebt Komödie, Horror, Mystery 1.2 -4,53
Bolivar: der Held Animation, Biographie 1.2 -5.34
Aufstieg der schwarzen Fledermaus Action, Science-Fiction 1.2 -3,65
Hatsukoi Theater 1.2 -5.38

Bergwerk

Titel Genre IMDb-Bewertung Raffinierte Bewertung
Stolzer Amerikaner Theater 1.1 -5.49
Der Weihnachtsmann und der Eishase Familie, Fantasie 1.3 -5.42
Hatsukoi Theater 1.2 -5.38
Reis Biographie, Drama 1.5 -5.35
Bolivar: der Held Animation, Biographie 1.2 -5.34
Hanum & Rangga: Glaube & Die Stadt Schauspiel, Romanze 1.2 -5.28
Nach der letzten Saison Animation, Drama, Science-Fiction 1.7 -5.27
Barschel-Mord in Genf Theater 1.6 -5.23
Rasshu Raifu Theater 1.5 -5.08
Kamifusen Theater 1.5 -5.08

Dasselbe geschah hier, aber jetzt können wir sehen, dass mehr Dramen in dem verfeinerten Fall erscheinen als in IMDbs, was zeigt, dass einige Dramen überbewertet werden könnten, nur weil sie Dramen sind.

Das vielleicht interessanteste Podium sind die 10 Filme mit dem größten Unterschied zwischen der Punktzahl des IMDb-Bewertungssystems und meiner verfeinerten. Diese Filme sind diejenigen, die mehr Gewicht auf ihre unbekannten Eigenschaften legen und den Film viel besser (oder schlechter) machen, als für seine bekannten Eigenschaften erwartet.

Titel IMDb-Bewertung Raffinierte Bewertung Unterschied
Kanashimi no Beradonna 7.4 -0,71 8.11
Jesucristo-Superstar 7.4 -0,69 8.09
Pink Floyd The Wall 8.1 0,03 8.06
Tenshi kein Tamago 7.6 -0,42 8.02
Jibon Theke Neya 9.4 1.52 7.87
El Baile 7.8 0.00 7,80
Der Weihnachtsmann und die drei Bären 7.1 -0,70 7,80
La alegre historia de Scrooge 7.5 -0,24 7.74
Piel de Asno 7 -0,74 7.74
1776 7.6 -0,11 7.71

Wenn ich ein Filmregisseur wäre und einen neuen Film produzieren müsste, könnte ich nach all dieser IMDb-Datenanalyse eine bessere Vorstellung davon haben, welche Art von Film ich machen muss, um ein besseres IMDb-Ranking zu haben. Es wäre ein langes animiertes Biographie-Drama, das ein Remake eines alten Films wäre – zum Beispiel Amadeus. Wahrscheinlich würde dies ein gutes IMDb-Ranking sicherstellen, aber ich bin mir nicht sicher, was die Gewinne angeht…

Was denkst du über die Filme, die in diesem neuen Maßstab rangieren? Magst du sie? Oder bevorzugen Sie die Originale? Lass es mich in den Kommentaren unten wissen!