Opciones de configuración
Esto involucra la creación de un archivo de Opciones de capacitación que contiene información sobre su modelo y las opciones que puede aplicar para la capacitación del modelo. Este archivo debe estar en formato XML con codificación UFT-8 y debe incluir este encabezado y las características de capacitación requeridas:
Encabezado en el archivo Opciones de capacitación
El encabezado menciona detalles del modelo, su tipo y la ruta de la prueba y los archivos de entrada.
- modelName: nombre del modelo
- modelType: el tipo del modelo (que es TC, lo que significa categorización de texto en este caso)
- modelDescription: descripción del modelo
- inputFilePath: ubicación del archivo de entrada utilizado para capacitar el modelo
- testFilePath: ubicación del archivo de pruebaNota:algoritmo: el algoritmo de Machine Learning utilizado para capacitar el modelo (el valor predeterminado es MaxEnt)
El archivo de prueba mide la eficacia de un modelo. Este determina el comportamiento del modelo personalizado con diversos parámetros de capacitación. Como una buena práctica, debe usar distintos archivos de entrada y de prueba en la capacitación o la evaluación de sus modelos personalizados.
Características de capacitación
Estas son características de capacitación que puede usar para crear una nueva categoría.- Característica lingüística: para especificar las propiedades de idioma
- Stemming: reduce las palabras a su raíz. Por ejemplo, "aseguradora", "asegurado" y "asegurar" se pueden reducir a la raíz "seguro".
<trainingFeature> <featureName>Stemming</featureName> </trainingFeature>
- Stemming: reduce las palabras a su raíz. Por ejemplo, "aseguradora", "asegurado" y "asegurar" se pueden reducir a la raíz "seguro".
- Características de palabras clave: para definir la lista de palabras clave
- IgnoreWords: también denominadas palabras irrelevantes, esta función filtra las palabras comunes que no afectan la categorización, como "el/la", "y", "pero". Estas palabras se deben separar solo por una coma, sin espacios. También puede usar la clave Adjuntar con esta característica, que cuando la define en "Verdadero", se agrega a la lista existente de palabras irrelevantes.
<trainingFeature> <featureName>IgnoreWords</featureName> <featureParams> <entry> <key>WordList</key> <value> and,the,for,with,still,tri,rep,cust,keep,get,req,call </value> </entry> <entry> <key>Append</key> <value>True</value> </entry> </featureParams> </trainingFeature>
CategoryKeywords
: identifica una categoría para una lista de palabras clave que pertenecen a múltiples listas personalizadas. Por ejemplo, Días de semana en la lista CategoryKeywords contiene Palabras clave como Lunes, Martes, Miércoles, Jueves y Viernes.Puede especificar esta característica en forma opcional si el cruce debe distinguir entre mayúsculas y minúsculas. Cuando la usa, el valor predeterminado es
true
.<trainingFeature> <featureName>CategoryKeywords</featureName> <featureParams> <entry> <key>Weekdays</key> <!-- List of weekdays --> <value>Monday,Tuesday,Wednesday,Thursday,Friday</value> </entry> <entry> <key>WeekendDays</key> <!-- List of weekend days --> <value>Saturday,Sunday</value> </entry> <entry> <key>CaseSensitive</key> <value>True</value> </entry> </featureParams> </trainingFeature>
KeyWords
: busca las palabras que especificó como pertenecientes a una lista personalizada, como DaysOfWeek o Month. De forma opcional, también especifica si el cruce debe distinguir mayúsculas de minúsculas; cuando se utiliza, el valor predeterminado es "verdadero".<trainingFeature> <featureName>KeyWords</featureName> <featureParams> <entry> <key>KeyWordList</key> <value>Monday,Tuesday</value> </entry> <entry> <key>CaseSensitive</key> <value>False</value> </entry> </featureParams> </trainingFeature>
- IgnoreWords: también denominadas palabras irrelevantes, esta función filtra las palabras comunes que no afectan la categorización, como "el/la", "y", "pero". Estas palabras se deben separar solo por una coma, sin espacios. También puede usar la clave Adjuntar con esta característica, que cuando la define en "Verdadero", se agrega a la lista existente de palabras irrelevantes.
- Característica léxica: para especificar las propiedades de lexema
- NGram: busca parte de una cadena más larga, donde "n" representa el número de palabras que se buscarán. Por ejemplo, si buscara la frase "ser o no ser", podría buscar un unigrama de "ser" o "no", o un bigrama de "ser o" o "no ser", un trigrama de "ser o no" o "o no ser", etc.
<trainingFeature> <featureName>NGram</featureName> <featureParams> <entry> <key>Count</key> <value>3</value> </entry> </featureParams> </trainingFeature>
- NGram: busca parte de una cadena más larga, donde "n" representa el número de palabras que se buscarán. Por ejemplo, si buscara la frase "ser o no ser", podría buscar un unigrama de "ser" o "no", o un bigrama de "ser o" o "no ser", un trigrama de "ser o no" o "o no ser", etc.
<trainingOptions>
<modelName>modelone</modelName>
<modelType>TC</modelType>
<modelDescription>modelOne</modelDescription>
<inputFilePath>C:/SpectrumIE/textclassification/train_Input.csv</inputFilePath>
<testFilePath>C:/SpectrumIE/textclassification/train_Test.txt</testFilePath>
<algorithm>SVM</algorithm>
<trainingFeatures>
<!-- Keyword features -->
<trainingFeature>
<featureName>IgnoreWords</featureName>
<featureParams>
<entry>
<key>WordList</key>
<value>
and,the,for,with,still,tri,rep,cust,keep,get,req,call
</value>
</entry>
<entry>
<key>Append</key>
<value>True</value>
</entry>
</featureParams>
</trainingFeature>
<trainingFeature>
<featureName>CategoryKeywords</featureName>
<featureParams>
<entry>
<key>Category1/key>
<value>CategoryKeyword1,CategoryKeyword2</value>
</entry>
<entry>
<key>Category2/key>
<value>CategoryKeyword3,CategoryKeyword4</value>
</entry>
</featureParams>
</trainingFeature>
<trainingFeature>
<featureName>KeyWords</featureName>
<featureParams>
<entry>
<key>KeyWordList</key>
<value>
jam,misfeed,install,help,mechanical,failure,jam,pc,connection
</value>
</entry>
</featureParams>
</trainingFeature>
<!-- Linguistic feature -->
<trainingFeature>
<featureName>Stemming</featureName>
</trainingFeature>
<!-- Lexical feature -->
<trainingFeature>
<featureName>NGram</featureName>
<featureParams>
<entry>
<key>Count</key>
<value>3</value>
</entry>
</featureParams>
</trainingFeature>
</trainingFeatures>
</trainingOptions>