Permítanme decir desde el principio que soy muy nuevo en aprendizaje automático y no soy muy bueno en matemáticas. Entiendo lo que hace TF-IDF, pero en el libro que estoy leyendo también menciona lo siguiente (está discutiendo cómo hace las cosas scikit-learn):
Ambas clases [TfidfTransformer y TfidfVectorizer] también aplican normalización L2 después de calcular la representación tf-idf; en otras palabras, rescalan la representación de cada documento para que tenga una norma euclidiana de 1. Al rescalar de esta manera, significa que la longitud de un documento (el número de palabras) no cambia la representación vectorizada.
Eso es todo lo que tiene que decir sobre el tema. Lo que creo que significa, y avíseme si estoy equivocado, es que escalamos los valores para que, si todos fueran al cuadrado y sumados, el valor sería 1 (tomé esta definición de http://kawahara.ca/how-to-normalize-vectors-to-unit-norm-in-python/).
Entonces, la idea es que los valores de las características se vuelven proporcionales entre sí. Aún no estoy seguro de cómo eso sería útil para el modelo, sin embargo. ¿Ayuda al clasificador general aprender si algunos ejemplos no tienen un mayor número total de "características activadas" que otros?
También, aquí va una pregunta básica: ¿La normalización L2 tiene alguna relación con la regularización L2? ¿Quizás es solo que ambos implican cuadrar y sumar términos?
¡Cualquier información que puedas compartir sería muy apreciada!