Configuración de las opciones para las entidades personalizadas
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, la ruta de la prueba y los archivos de entrada, además de una palabra clave para anotar las entidades personalizadas.
modelName
: nombre del modelo personalizadomodelType
: tipo del modelo personalizado (que es CustomEntity).modelDescription
: descripción del modelo personalizadoinputFilePath
: ruta del archivo etiquetado utilizado para capacitar el modelo (archivo de entrada)testFilePath
: ruta del archivo utilizado para probar el modelo- magicWord: palabra clave utilizada para anotar las entidades personalizadas
- idioma: el idioma utilizado en el texto. Nota: Se admite el inglés. El holandés, el francés, el alemán y el español están en la etapa de desarrollo beta.
Características de capacitación
Puede usar estas características de capacitación para crear las entidades personalizadas
- Características lingüísticas: para especificar las propiedades de idioma
- POSTagger: etiquete para identificar partes del discurso, como sustantivos, pronombres, adjetivos y verbos.
<trainingFeature> <featureName>POSTagger</featureName> </trainingFeature>
- POSTagger: etiquete para identificar partes del discurso, como sustantivos, pronombres, adjetivos y verbos.
- Características ortográficas: para especificar las propiedades estructurales
CaseIdentifier
: identifica si las entidades personalizadas están completamente en mayúsculas, en minúsculas o en una combinación de ambas.<trainingFeature> <featureName>CaseIdentifier</featureName> </trainingFeature>
NumericIdentifier
: identifica si las entidades personalizadas son numéricas o alfanuméricas.<trainingFeature> <featureName>NumericIdentifier</featureName> </trainingFeature>
1st2ndIdentifier
: identifica si las entidades personalizadas son ordinales, como 1.a, 2.a y 3.a.<trainingFeature> <featureName>1st2ndIdentifier</featureName> </trainingFeature>
PatternMatcher
: compara palabras con uno o más patrones con expresiones regulares. Cuando se proporcionan múltiples expresiones, incluye la condición de combinaciónAND
para todas las expresiones oOR
(valor predeterminado) para cualquier expresión.<trainingFeature> <featureName>PatternMatcher</featureName> <featureParams> <entry> <key>RegEx1</key> <value>b[aeiou]t</value> </entry> <entry> <key>RegEx2</key> <value>b[xyz]t</value> </entry> <entry> <key>JoinCondition</key> <value>AND</value> </entry> </featureParams> </trainingFeature>
- Características de palabras clave: para definir la lista de palabras clave
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>
Substring
: extrae parte de una cadena como se especifica en los parámetros. También puede utilizarse para las extracciones de prefijo y sufijos.StartLocation
: izquierda o derecha. La posición en la que debe extraerse la subcadena. El valor predeterminado es Izquierda.StartPosition
: la posición de inicio de la subcadena. El valor predeterminado es 0.EndPosition
: la posición final para la subcadena. El valor predeterminado es 3.MinLength
: la longitud mínima de la palabra para la cual debe aplicarse esta función. El valor predeterminado es 3.
<trainingFeature> <featureName>Substring</featureName> <featureParams> <entry> <key>StartLocation</key> </entry> <entry> <key>StartPosition</key> <value>1</value> </entry> <entry> <key>EndPosition</key> <value>4</value> </entry> <entry> <key>MinLength</key> </featureParams> </trainingFeature>
- Características léxicas: para especificar las propiedades de lexema
- FeatureWindow: especifica la ventana para la generación de características
<trainingFeature> <featureName>FeatureWindow</featureName> <!-- Number of preceding tokens used to create the feature set. Default is 3 --> <entry> <key>Before</key> <value>1</value> </entry> <!-- Number of succeeding tokens used to create the feature set. Default is 3 --> <entry> <key>After</key> <value>2</value> </entry> </trainingFeature>
- FeatureWindow: especifica la ventana para la generación de características
A continuación encontrará un archivo completo de opciones de capacitación de ejemplo para entidades personalizadas:
<trainingOptions>
<modelName>CustomModel</modelName>
<modelType>CustomEntity</modelType>
<modelDescription>CustomDiagnosesModel</modelDescription>
<inputFilePath>C:/SpectrumIE/custom_model/Custom_Input.csv</inputFilePath>
<testFilePath>C:/SpectrumIE/custom_model/Custom_Test.txt</testFilePath>
<magicWord>DIAGNOSIS</magicWord>
<language>English</language>
<trainingFeatures>
<!-- Lexical features-->
<trainingFeature>
<featureName>FeatureWindow</featureName>
<featureParams>
<entry>
<key>Before</key>
<value>1</value>
</entry>
<entry>
<key>After</key>
<value>2</value>
</entry>
</featureParams>
</trainingFeature>
<!-- Orthographic features-->
<trainingFeature>
<featureName>CaseIdentifier</featureName>
</trainingFeature>
<trainingFeature>
<featureName>NumericIdentifier</featureName>
</trainingFeature>
</trainingFeatures>
</trainingOptions>