Anda di halaman 1dari 16

Mallet

MAchine Learning for LanguagE Toolkit

Introduccin

Es una librera para el procesamiento estadstico de


lenguaje natural.
Permite:

Clasificacin de documentos

Modelado de tpicos

Etiquetado secuencial

Entre otras tcnicas de Machine Learning aplicables a


texto.

Instalacin
Para la utilizacin de mallet tenemos 2 opciones:

Utilizar comandos de consola

Incluir jar en un proyecto java.


Para la primera opcin:

I. Bajar mallet-2.0.7.tar.gz
II. En la carpeta bin/ se encuentran los binarios a usar en la consola
listos para usar.
Para la segunda opcin deberemos incluir el archivo mallet.jar en
nuestro proyecto.
El archivo se encuentra en dist/

Ejemplo con un archivo de entrada

Si utilizamos los binarios, deberemos utilizar el formato


de entrada de mallet para la construccin de nuestro
clasificador.
El archivo con los datos de entrenamiento debe tener el
sig. formato:

Identificador

Clase

Lista de atributos

Ejemplo

Figura 1: Archivo con datos de texto

Figura 2: Archivo con datos numricos

Ejemplo con un archivo de entrada

Comando:

bin/mallet import-file --input textos.txt


--output textos.mallet

Ejemplo con varios archivo de


entrada

Supongamos que los textos los tenemos separados en


varios archivos.
Los textos en ingls se encuentran en una carpeta en/ y
los que estn en alemn en la carpeta de/ y ambas en
una carpeta llamada textos/.
En este caso se considera un archivo como una
instancia.
El nombre de la carpeta acta como la clase a la que
pertenece el texto y el nombre del archivo acta como
identificador de la instancia.

Comando

Comando:

bin/mallet import-dir --input textos/*


--output textos.mallet

Opciones de Stopwords
Existen opciones relacionadas con stopwords que
pueden ser de utilidad:

--remove-stopwords : remueve stopwords comunes en


ingls (524 palabras).
--extra-stopwords [f] : agrega stopwords adicionales a la
lista por defecto. Cada palabra debe estar en una lnea
distinta.
--stoplist-file [f] : remueve las stopwords que se indican
en el archivo de entrada. Sirve para trabajar con otros
idiomas distintos del ingls.

Ejemplo:

Texto de entrada:

Salidas:
bin/mallet import-file --input input.txt -print-output

bin/mallet import-file --input input.txt --print-output


-remove-stopwords

Entrenar modelo de clasificacin

Una vez importados los datos, deberemos utilizarlos para


entrenar nuestro clasificador.

El comando para entrenar es train-classifier.

Ejemplo:
bin/mallet train-classifier --input
training.mallet --output-classifier my.classifier

El archivo my.classifier contendr el modelo de


clasificacin y servir para clasificar posteriores
entradas.

Entrenar modelo de clasificacin

Existen 17 modelos de clasificacin disponibles en mallet


para entrenar.
El que se utiliza por defecto es Nave Bayes.
Si se quiere utilizar otro modelo de entrenamiento se
debe utilizar la opcin --trainer y luego el nombre del
modelo, por ejemplo:
bin/mallet train-classifier --input training.mallet
--output-classifier my.classifier --trainer MaxEnt

Clasificacin

Una vez haya terminado el proceso de entrenamiento, se


procede con el proceso de clasificacin de nuevos datos.

La instruccin para clasificar es classify-file

Ejemplo:
bin/mallet classify-file --input clasificar.txt
--output clasificacion.txt --classifier
clasificadorIdiomas.classifier

Clasificacin: Formato de entrada

El archivo a clasificar debe tener el siguiente formato:

Identificador

Lista de atributos

Anlisis de Resultados

Al utilizar el clasificador Bayesiano, este entrega la


probabilidad de que el documento clasificado pertenezca
a una clase u otra:

Mallet
MAchine Learning for LanguagE Toolkit

Anda mungkin juga menyukai