"Implemente la clase SpamDetector usando sklearn. La clase debe ser un estimador para la clasificación binaria de textos (correo electrónico) en dos categorías: \"HAM\", \"SPAM\". El constructor debe recibir los textos de cada categoría así como sus respectivas etiquetas. Debe implementar los métodos $fit(X, y)$ y $predict(T)$, donde $X$ es una matriz de $(nDocumentos,mPalabras)$ cuyos valores corresponden a las frecuencias. \n",
"\n",
"\n",
"Utilice como datos de ejemplo, una selección de su propio correo electrónico personal.\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 2. Validación SpamDetector\n",
"\n",
"Evalue la clase SpamDetector usando el esquema de validación cruzada con $F-measure$ como métrica de score y grafíque los valores de score para cada entrenamiento.\n",
"\n"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 3. Persistencia SpamDetector\n",
"\n",
"Evalue la clase SpamDetector usando el esquema de validación cruzada con $F-measure$ como métrica de score y guarde, de manera persistente, en un archivo pickle el mejor estimador según los resultados de la evaluación."
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## 4. Reuso SpamDetector\n",
"\n",
"Modifique la clase SpamDetector para que el constructor cargue un modelo previamente entrenado desde un archivo. Pruebe el código haciendo que se cargue el pickle del ejercicio anterior y realice la predicción de nuevos documentos no utilizados en el entrenamiento.\n"