Buscando un algoritmo de clasificación que favorezca nuevas entradas

9

Estoy trabajando en un sistema de clasificación que clasificará las entradas en función de los votos emitidos durante un período de tiempo. Estoy buscando un algoritmo que calcule un puntaje que sea como un promedio, sin embargo, me gustaría favorecer puntajes más nuevos sobre los más antiguos. Estaba pensando en algo en la línea de:

sCormi1+ 2sCormi2 + + nortesCorminorte1+2++norte

Me preguntaba si había otros algoritmos que generalmente se usan para situaciones como esta y, de ser así, ¿podría explicarlos?

Logan Besecker
fuente

Respuestas:

7

Puede usar cualquier función que otorgue un peso menor a las entradas más antiguas. Por ejemplo, si los datos consisten en puntajes, , donde el índice corresponde al 'tiempo de llegada' de la entrada, es decir, las entradas más nuevas tienen índices más grandes, entonces podría usar una función de peso que aumente como i aumenta. Entonces, cualquier función 'creciente' servirá. Ejemplos incluyen:s1,...,snorteyo

  • F(X)=miX
  • F(X)=Iniciar sesiónX
  • F(X)=X
  • F(X)=X2

etc.

Entonces tu función será

.yo=1nortesyoF(yo)yo=1norteF(yo)

En realidad, tiene más sentido dar a la entrada más reciente el índice más bajo y hacer que la función de peso disminuya. De esta manera, puede ajustarlo configurando la ponderación que desea dar al primer elemento.

Wikipedia tiene una entrada sobre funciones de peso , algunos ejemplos se pueden encontrar en la página sobre medios ponderados .

Dave Clarke
fuente
muchas gracias, esto era lo que estaba buscando. Muy informativo
Logan Besecker
Tengo una pregunta rápida, sé que '∑i' es la suma de 'i' y 'f (i)' es la función (como 'f (x) = logx') con respecto a 'i'. Pero, ¿qué representa 'si'? muchas gracias por tu ayuda
Logan Besecker
1
syo