7 votos

En relación con el procedimiento de muestreo en Adaboost algoritmo

El algoritmo AdaBoost dice que es para entrenar un clasificador basado en los datos de entrenamiento de acuerdo a un vector de peso.

Suponga que el tamaño de los datos de entrenamiento es N, el peso vectorial es de dimensión N así. Tengo tres preguntas con respecto a este procedimiento de muestreo,

1) el tamaño de la muestra de los datos de la misma como el conjunto de datos original? 2) ¿Cuál es el vector de peso? Si se trata de una distribución, entonces la suma de ellos tiene que ser 1. Es posible tener un peso de vectores con entradas de número entero? 3) en General, el algoritmo que puede ser utilizado para una muestra de un conjunto de datos basado en un peso dado de vectores o de una distribución?

2voto

Bob Peaks Puntos 23

Hay dos métodos para la formación de Adaboost. Utilizar el peso vector directamente en la formación de los débiles alumno, o utilizar el vector de peso de la muestra de puntos de datos con la sustitución de los datos originales.

En el último caso, la muestra de un conjunto de datos es el mismo tamaño que el conjunto de datos original, y contendrá la repetición de algunos puntos de datos. El vector de peso es generalmente una distribución como se hace el dibujo de la muestra ponderada más fácil, pero cualquier vector de peso va a trabajar después de la normalización. La forma más sencilla de probar el nuevo conjunto de datos es hacer que el peso de vector de una distribución de probabilidad, calcular su función de distribución acumulativa, a continuación, generar N aleatoria de dobles en el rango de $(0,1]$. A continuación, prueba a ver lo que el intervalo de los números aleatorios.

for i = 1:N
    rnd = new Random(0.0,1.0)
    for j = 1:N
        if (cdf(j) < rnd)
            samplePoint(i) = dataPoint(j)
        end
    end
end

Hay maneras que no son $O(n^2)$, pero esto es más fácil de entender.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X