Cómo dar un peso diferente a los conjuntos de características mientras se entrena un clasificador con Scikit

Gracias por la A2A

Es posible que no pueda “ponderar” una función durante la tarea de clasificación en sí. Eso en esencia perturba el aprendizaje. Sin embargo, como alternativa, puede hacer otra cosa.

Es productivo estudiar cuáles de sus características ayudan a su tarea de clasificación y cuáles no. En los modelos lineales, las características redundantes tienden a retrasar la convergencia.

Python tiene un espectro de métodos para hacer esto. En general, si ha escalado bien sus características (si tienen escalas de medición diferentes) y se ha asegurado de que haya una buena variación, debe tener un buen conjunto.

En la documentación de Scikit

1.13. Selección de características

El método más cercano a lo que usted habla podría ser la eliminación de funciones recursivas (RFE). Puede evaluar de forma recursiva conjuntos de características más pequeños hasta que se alcance el número óptimo de características. De manera figurativa, sabrá qué características omitir, si las métricas de clasificación de precisión son consistentes incluso sin ellas. ¡Buena suerte!

No puedes y no debes hacer eso.

Los pesos de las características son exactamente lo que un clasificador (o un regresor) “aprende” cuando ajusta un modelo. Si conocía los pesos de las características de antemano, entonces no necesitaría entrenar el modelo en absoluto.

El SGD es un clasificador lineal, lo que significa que hace predicciones calculando el producto de puntos de los pesos de las características y los valores de muestra, y luego aplicando el umbral en ellos. Suponga que una de sus muestras de datos es el vector [math] x [/ math], entonces la predicción tendrá la forma:

[matemáticas] y = f_ {trilla} (\ sum_ {i = 0} ^ {k} w_ {i} x_ {i} + b) [/ matemáticas]

Donde [math] x_ {i} [/ math] es la característica [math] i [/ math] th de la muestra de entrada y [math] w_ {i} [/ math] es el peso asociado con ella. Entonces, lo que se espera del aprendizaje, en realidad, es el conjunto de pesos [matemáticas] w [/ matemáticas] y el sesgo [matemáticas] b [/ matemáticas].

Si establece estos valores usted mismo, se pierde todo el sentido del uso del aprendizaje automático.

More Interesting

¿Cuánto tiempo debo pasar aprendiendo Python antes de pasar a otros aspectos de la ciencia de datos (análisis práctico, matemáticas, etc.)?

¿Qué debe hacer un estudiante de diploma para aprender software o aprendizaje automático?

¿Cómo funcionan las redes interbancarias?

¿Puede un autoencoder sobreajustar cuando tiene una cantidad mucho menor de neuronas de capa oculta que la capa de entrada y también se usa la deserción?

¿Puedo usar la agrupación (k-means, etc.) en un gran conjunto de datos para automatizar el proceso de búsqueda de similitudes y hacer recomendaciones?

¿Qué campos de la robótica tienen mucho espacio para la investigación (mucho antes de la madurez)?

¿Cómo se usa el aprendizaje automático en la ciencia de los materiales?

Inferencia bayesiana: si tuviera que trazar un millar de correos electrónicos basados ​​en "spaminess" utilizando un algoritmo simple de Naive Bayes para establecer la probabilidad de "spaminess" para el eje x, ¿cuál debería ser mi eje y?

¿Qué se sabe sobre la eficiencia de la agrupación espectral en caso de que los datos no estén completamente conectados?

¿Qué algoritmo de aprendizaje automático puede dar la mejor solución para la clasificación no lineal?

¿Qué significa decir que dos clasificadores son independientes?

¿Qué lenguaje de programación debería elegir junto a Python si estoy interesado en el aprendizaje automático?

¿Cuál es el mejor método de extracción de características para OCR en texto chino escrito a mano?

¿Cuántos datos necesitamos para pensar siquiera en aplicar el aprendizaje profundo?

¿Cómo podemos interpretar el coeficiente para cierta variable independiente en regresión lineal simple y para el mismo en regresión lineal múltiple?