AutoML Entity Extraction for Healthcare te proporciona un punto de partida para entrenar modelos personalizados de Healthcare Natural Language.
Prepara tus datos de entrenamiento
Para entrenar un modelo AutoML Entity Extraction for Healthcare, proporciona muestras representativas del tipo de texto médico que deseas analizar, anotadas con etiquetas que identifiquen los tipos de entidades que deseas que tengan tu modelo personalizado para identificar. Ten en cuenta las siguientes recomendaciones cuando compiles datos de entrenamiento:
- Debes proporcionar entre 50 y 100,000 muestras de texto médico para entrenar tu modelo personalizado.
- Puedes etiquetar el texto médico con una o 100 etiquetas únicas para anotar las entidades que quieres aprenda el modelo para extraer.
- Cada anotación es un intervalo de texto y una etiqueta asociada.
- Los nombres de las etiquetas pueden tener entre 2 y 30 caracteres.
- Cada etiqueta puede anotar entre una y 10 palabras.
- Para entrenar un modelo de manera eficaz, tu conjunto de datos de entrenamiento debe usar cada etiqueta al menos 200 veces.
Si anotas un tipo de documento estructurado o semiestructurado, como una factura médica o un formulario de consentimiento, AutoML Natural Language puede considerar la posición de una anotación en la página como un factor que contribuye a la asignación de la etiqueta adecuada.
Dar formato a los documentos de entrenamiento
Para formatear documentos de entrenamiento, sube los datos de entrenamiento a AutoML Natural Language como archivos JSONL que contienen el texto de muestra y los documentos. Cada línea en el archivo es un documento de entrenamiento único, especificado en una de las siguientes formas:
- El contenido completo del documento, con una longitud de entre 10 y 10,000 bytes (codificación UTF-8)
- El URI de un archivo PDF de un bucket de Cloud Storage asociado con tu proyecto
Puedes anotar los documentos de texto directamente antes de subirlos, en la IU de AutoML Natural Language después de subir documentos no anotados, o agregar anotaciones a documentos anotados con anterioridad en la IU.
Documentos JSONL
Para ayudarte a crear archivos de entrenamiento JSONL, AutoML Natural Language ofrece una secuencia de comandos de Python que convierte archivos de texto sin formato en archivos JSONL con el formato adecuado. Mira los comentarios en la secuencia de comandos para obtener más detalles.
Cada documento del archivo JSONL tiene uno de los siguientes formatos:
Para los documentos no anotados:
{ "text_snippet": {"content": string} }
Para los documentos anotados:
{ "annotations": [ { "text_extraction": { "text_segment": { "end_offset": number, "start_offset": number } }, "display_name": string }, { "text_extraction": { "text_segment": { "end_offset": number, "start_offset": number } }, "display_name": string }, ... ], "text_snippet": {"content": string} }
En los archivos JSONL de muestra:
- Cada elemento
text_extraction
identifica una anotación dentro detext_snippet.content
.text_extraction
indica la posición del texto anotado mediante la especificación del número de caracteres desde el comienzo detext_snippet.content
hasta el principio (start_offset
) y el final (end_offset
) del texto. display_name
es la etiqueta de la entidad.start_offset
yend_offset
son compensaciones de caracteres, no compensaciones de bytes. El carácter deend_offset
no está incluido en el segmento de texto.
Para obtener más información, consulta TextSegment
Los elementos text_extraction
son opcionales. Puedes omitirlos si planeas anotar el documento con la IU de AutoML Natural Language. Cada anotación puede abarcar hasta diez tokens, por lo general, palabras. No pueden superponerse, es decir, el start_offset
de una anotación no puede estar entre el start_offset
y el end_offset
de otra anotación en el mismo documento.
En el siguiente documento de entrenamiento de ejemplo, se identifican las enfermedades específicas mencionadas en un resumen del corpus del NCBI:
{ "annotations": [ { "text_extraction": { "text_segment": { "end_offset": 67, "start_offset": 62 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 158, "start_offset": 141 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 330, "start_offset": 290 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 337, "start_offset": 332 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 627, "start_offset": 610 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 754, "start_offset": 749 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 875, "start_offset": 865 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 968, "start_offset": 951 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 1553, "start_offset": 1548 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 1652, "start_offset": 1606 } }, "display_name": "CompositeMention" }, { "text_extraction": { "text_segment": { "end_offset": 1833, "start_offset": 1826 } }, "display_name": "DiseaseClass" }, { "text_extraction": { "text_segment": { "end_offset": 1860, "start_offset": 1843 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 1930, "start_offset": 1913 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 2129, "start_offset": 2111 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 2188, "start_offset": 2160 } }, "display_name": "SpecificDisease" }, { "text_extraction": { "text_segment": { "end_offset": 2260, "start_offset": 2243 } }, "display_name": "Modifier" }, { "text_extraction": { "text_segment": { "end_offset": 2356, "start_offset": 2339 } }, "display_name": "Modifier" } ], "text_snippet": { "content": "10051005\tA common MSH2 mutation in English and North American HNPCC families: origin, phenotypic expression, and sex specific differences in colorectal cancer .\tThe frequency , origin , and phenotypic expression of a germline MSH2 gene mutation previously identified in seven kindreds with hereditary non-polyposis cancer syndrome (HNPCC) was investigated . The mutation ( A-- > T at nt943 + 3 ) disrupts the 3 splice site of exon 5 leading to the deletion of this exon from MSH2 mRNA and represents the only frequent MSH2 mutation so far reported . Although this mutation was initially detected in four of 33 colorectal cancer families analysed from eastern England , more extensive analysis has reduced the frequency to four of 52 ( 8 % ) English HNPCC kindreds analysed . In contrast , the MSH2 mutation was identified in 10 of 20 ( 50 % ) separately identified colorectal families from Newfoundland . To investigate the origin of this mutation in colorectal cancer families from England ( n = 4 ) , Newfoundland ( n = 10 ) , and the United States ( n = 3 ) , haplotype analysis using microsatellite markers linked to MSH2 was performed . Within the English and US families there was little evidence for a recent common origin of the MSH2 splice site mutation in most families . In contrast , a common haplotype was identified at the two flanking markers ( CA5 and D2S288 ) in eight of the Newfoundland families . These findings suggested a founder effect within Newfoundland similar to that reported by others for two MLH1 mutations in Finnish HNPCC families . We calculated age related risks of all , colorectal , endometrial , and ovarian cancers in nt943 + 3 A-- > T MSH2 mutation carriers ( n = 76 ) for all patients and for men and women separately . For both sexes combined , the penetrances at age 60 years for all cancers and for colorectal cancer were 0 . 86 and 0 . 57 , respectively . The risk of colorectal cancer was significantly higher in males than females ( 0 . 63 v 0 . 30 and 0 . 84 v 0 . 44 at ages 50 and 60 years , respectively ) . For females there was a high risk of endometrial cancer ( 0 . 5 at age 60 years ) and premenopausal ovarian cancer ( 0 . 2 at 50 years ) . These intersex differences in colorectal cancer risks have implications for screening programmes and for attempts to identify colorectal cancer susceptibility modifiers .\n " } }
Documentos PDF
Cada documento debe ocupar una línea en el archivo JSONL. En el siguiente ejemplo, se incluyen saltos de línea para facilitar la lectura. Debes quitarlos en el archivo JSONL.
Para obtener más información, consulta jsonlines.org. Para subir un archivo PDF como documento, incluye la ruta del archivo dentro de un elemento JSONL document
como se muestra en el siguiente ejemplo:
{ "document": { "input_config": { "gcs_source": { "input_uris": [ "gs://cloud-ml-data/NL-entity/sample.pdf" ] } } } }
El valor del elemento input_uris
es la ruta de acceso a un archivo PDF en un depósito de Cloud Storage asociado con tu proyecto. El tamaño máximo del archivo PDF es de 2 MB.