Zum Inhalt springen

Reine Logik - Kannst du helfen?


turntab

Empfohlene Beiträge

Moin Moin,

ich versuche gerade einen guten Algorithmus zu finden um ein Ranking aufzustellen. Dazu sind folgende Faktoren von Bedeutung

Besucher

Durchschnittsbewertung

Anzahl der Bewertungen

Aus diesen drei Faktoren muss ein Wert gebildet werden, der ein plausibles Ranking abwirft. Danach kann anhand dieses Wertes ein z.B. Top-100 Liste gebildet werden.

Nun gibt es da folgende Denkanstöße, die ich anhand von folgenden Beispieldaten erläutere:

Datensatz 1

Besucher 100

Durchschnittsbewertung 4

Anzahl der Bewertungen 100

Datensatz 2

Besucher 140

Durchschnittsbewertung 5

Anzahl der Bewertungen 2

Datensatz 3

Besucher 320

Durchschnittsbewertung 1

Anzahl der Bewertungen 200

Nach meiner subjektiven Empfindung müsste das Ranking wie folgt aussehen:

1. Platz Datensatz 1

2. Platz Datensatz 2

3. Platz Datensatz 3

Warum? Datensatz 1 hat zwar eine niedrigere Durchschnittsbewertung, aber aufgrund der Vielzahl der Bewertungen müsste es höher gewichtet werden. Also diese beiden müsste man in irgendeine Relation zueinaner setzen. Wie die Anzahl der Besucher dort einfließen könnte, dazu habe ich noch gar keine Idee.

Ich würde mich über Denkanstöße, Beispielformeln oder ein allgemeines Feedback freuen!

THANKS!

Link zu diesem Kommentar
Auf anderen Seiten teilen

100 4 100 4

140 5 2 0,071428571

320 1 200 0,625

Durschn.B.*Anz./Bes. würde ich intuitiv/spontan als Formel nutzen. Dann wäre Datensatz 2 auf P3.

Grund / Argumentation :

Desto ausgeglichener das Verhältniss zwischen Besucher und Anzahl der Bewertungen desto aussagekräftiger ist bzw., mehr Gewicht bekommt die Durchschnittsbewertung.

Gruß

Patrick

Link zu diesem Kommentar
Auf anderen Seiten teilen

Im Grunde also nur eine Formel fürs Normalisieren finden?

Erster Gedanke:

Alle drei Datensätze sind miteinander "verknüpft".

Gesamtanzahl der Bewertungen: 302

Gesamt aller Bewertungspunkte: 610

Meiste Bewertung: 200

Somit geben die Bewerter durchschnittlich ca. 2 Bewertungspunkte auf alle Seiten. Wir stellen uns also vor, die die nicht bewertet haben bewerten die Datensätze im Bereich einer 2.

Also müssen wir jetzt die Punkte hochrechnen, wenn alle Datensätze die gleiche Anzahl an Bewertungen hätten, wobei der Durchschnittsuser 2 Bewertungspunkte geben würde. Also immer so hochrechnen, als hätten alle Datensätze 200 Bewertungen.

Beispiel bei Datensatz 2 - Wir haben zwei Bewertungen und füllen die Bewertungen auf:

5 + 5 + 2 + 2 + 2 ...

und ermitteln dann den Durchschnitt.

DS1

(4 * 100 + 2 * (200-100)) / 200 = 3

DS2

(5 * 2 + (2 * 198)) / 200= 2,03

DS3

(1*200 + (2*0))/200 = 1

Wenn du weißt wie man die Besucher gewichten möchte, kannst du es ja gerne mitteilen. Dann kann man sich ja was ausdenken.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo Patrick_C64, die Formel geht nicht wirklich auf. Habe anhand dieser mal ein paar Berechnungen angestellt. Hier als Faktor 3 in einem öffentlichen Google Sheet:

https://docs.google.com/spreadsheet/ccc?key=0AknLmrD0E8bTdEhrdURWZzR3dVIxUEV0Q1dMWWdLQkE&usp=sharing

Das würde zum Beispiel zu folgenden Ranking führen:

Besucher 100 Durschnitt 3 Anzahl 500 VOR

Besucher 500 Durchschnitt 4 Anzahl 200

------------------------------------------------------------------------------------

@aras, sehr interessante Ausführung. Den Ansatz habe ich verstanden.

An sich eine sehr gute Lösung, nur ist die 200 in deinem Beispiel ja eine statische Zahl. Wenn alles auf 200 hoch oder runtergerechnet wird, wird die Formel doch früher oder später, je höher die Differnz, sehr ungenau oder?

Vielleicht verstehe ich das aber auch noch nicht so richtig.... Kanst du deine Formel vielleicht in den Sheet eintragen?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Erst einmal müsste man festlegen, ob es nach Schulnoten, oder nach Punktzahl bewertet wird. Das habe ich bisher noch nirgends hier gefunden. Die 1 kann also entweder die beste mögliche Note sein, oder aber die schlechteste mögliche Note.

Um eine sinnvolle Reihenfolge zu bekommen, kann man verschiedene Ansätze machen - je nachdem was einem halt wichtig ist.

Möglich wäre hier z.B. folgendes:

  • beste Durchschnittsbewertung (je nachdem ob Note oder Punkte halt die jeweilige Richtung)
  • höchste Anzahl an Bewertungen
  • höchste Anzahl an Besuchern
  • höchste/niedrigste Abweichung vom Gesamtdurchschnittswert
  • Gesamtbewertung, wenn alle 3 Ergebnisse in die Bewertung mit einfliessen sollen - hierbei müsste man sich dann für eine Bewertungsmatrix entscheiden, wie die einzelnen Faktoren jeweils gewichtet werden sollen. Dafür müsste man aber wissen, was am wichtigsten ist und dann, ob man dies mit Punkten, Noten, Prozentzahlen oder noch anders machen möchte.
  • diverse andere Möglichkeiten

@turntab:

Die 200 ist da nur gewählt worden, weil dies der maximalen Anzahl an Bewertungen entspricht. (quasi 100% oder die maximale Anzahl an Bewertungen pro Seite)

Bearbeitet von Crash2001
Link zu diesem Kommentar
Auf anderen Seiten teilen

Hey Crash,

bei der Durschnittsbewertung handelt es sich um eine 1-5 Sternebewertung. Also 5 ist die beste Bewertung. Zu deinen Ansätzen: Die Durschnittsbewertung gibt es ja bereits.

Diese errechnet sich logischerweise durch die Gesamtanzahl der Sterne / Anzahl der Bewerter. Was ich benötige ist eine Gesamtbewertung, wie du sie auch schon aufführst, hier sollen wie gesagt folgende drei Faktoren einfließen:

- Anzahl der Besucher (Seitenaufrufe)

- Durchschnittsbewertung (aller Bewertungen)

- Anzahl der Bewertungen

Was nach der Formel herauskommt, ob Noten, Prozentzahlen etc. ist schlicht egal. Solange man danach sortieren kann. Denn anhand dieses nicht öffentlichen Ergebnisses wird ja erst das Ranking gebildet.

Die Gewichtung könnte in etwa so aussehen:

- Anzahl der Besucher (5%)

- Durchschnittsbewertung (60%)

- Anzahl der Bewertungen (35%)

Eventuell kann man die Zahl der Besucher auch weglassen, oder nur im direktvergleich, also bei zwei gleichen Werten nach der höheren Besucherzahl sortieren. Wäre eine Alternative. Schöne wäre es jedoch den Faktor gleich mit aufzunehmen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Eine einfache Gewichtung wird dich nicht weiterbringen. Oder sind viele Einser-Bewertungen besser als wenige?

Erstell doch mal alle Kombinationen aus Besucheranzahl (100, 200, 300), Bewertung (1, 3, 5) und Anzahl (10, 20, 30) und bring sie in die deiner Meinung nach richtige Reihenfolge. Dann kann man dir weiterhelfen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Moin Klotzkopp, danke für deine Mithilfe!

Nein - viele Einser-Bewertungen sind nicht besser als wenige.

Aber ich würde sagen vierhundert 4er Bewertungen sind besser als drei 5er Bewertungen. Die Kombinationen sind ja unendlich.

0 - unendlich Besucher

1 Durchschnittsbewertung

0 - unendlich Bewertungen (theoretisch)

Das Ergebnis muss hinterher so plausibel wie möglich sein, das ist das Ziel.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Das Ergebnis muss hinterher so plausibel wie möglich sein, das ist das Ziel.
Man kann sehr viele Sortierungen "plausibel" begründen. Darunter wird sich jeder von uns etwas anderes vorstellen. So kommen wir nicht weiter.

Du hast in deinem Kopf eine mehr oder weniger diffuse Vorstellung von der richtigen Sortierung. Aber die ist eben nur dort. Solange du uns die nicht hinreichend erklärst, wird keine vorgeschlagene Formel "aufgehen".

Also bitte: Bring die Liste mit den 27 Kombinationen in die "richtige" Reihenfolge, dann bekommst du deine Formel.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi turntab,

war auch nur ganz banal, ja die 2. gebotene Lösung erscheint mir auch durchdachter, und hat daher von mir auch ein "Gefällt mir" bekommen!

Dennoch habe ich mir wie geschildert dabei schon was gedacht, und wenn mehr Bewertungen abgegeben wurden als Besucher vorhanden dann geht die Formel nicht mehr auf, wobei ich die Anzahl der Bewertungen elementbezogen und nicht systembezogen betrachtet habe!

Ist halt die Frage was für Dich im Kontext der Auswertung letzlich plausibel bedeutet, wie Klotzkopp schon aufgeführt hat.

Gruß

Patrick

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...