esto es más una cuestión de algoritmos en lugar de una pregunta lenguaje específico, así que estoy feliz de recibir una respuesta en cualquier idioma - incluso pseudocódigo, incluso sólo una idea.texto limpio procedente de archivos PDF
Aquí está mi problema: Tengo que trabajar en la gran base de datos de artículos que provienen de artículos en formato PDF y que se copiaron brutalmente/pegado en .txt. Solo tengo el resultado de esta abominación, que es alrededor de 16k documentos, para 3,5 GB o texto (el corpus que estoy usando es ACL Antology Network, http://clair.si.umich.edu/clair/aan/DatasetContents.html).
El "junco" proviene de cosas como fórmulas, imágenes, tablas, etc. Simplemente aparece en medio del texto en ejecución, por lo que no puedo usar expresiones regulares para limpiarlo, y tampoco puedo pensar en ninguna forma de usar el aprendizaje automático. Ya pasé una semana en él, y luego decidí seguir adelante con una solución sucia & rápida. Ya no me importa limpiarlo por completo, no me importan los falsos negativos y positivos siempre que se eliminen la mayoría de estas áreas de texto.
Algunos ejemplos del texto: tenga en cuenta que las fórmulas contienen caracteres basura, pero las tablas y subtítulos de no hacerlo (pero todavía hacen mi sentencia muy larga, y por lo tanto no se puede analizar). Basura en negrita
fácil:
Se repitieron los experimentos, mientras que la inhibición de especialización de primero el esquema con la mayoría de expansiones, y luego los dos esquemas más expandido. Las medidas de cobertura y aceleración son importantes 1 Siempre que nos interese preservar la estructura f asignada a las oraciones, esta noción de cobertura es más estricta de lo necesario. La misma estructura f puede de hecho ser asignada por más de un análisis, de modo que en algunos casos una oración se considera fuera de cobertura incluso si la gramática especializada le asigna la estructura f correcta. 2'VPv 'y' VPverb [main] 'cubren los PV encabezados por un verbo principal. 'NPadj' cubre NP con adjetivos adjuntos. 205 La regla original: l/Pperfp - + ADVP * SE (t ADJUNTO) ($ ADV_TYPE) = t, SAdv ~/r {@M_Head_Perfp I @ M_Head_Passp} @ (Anaph_Ctrl $) {AD VP + SE ('~ ADJUNTO) ($ ADV_TYPE) = vpadv se sustituye por el siguiente: ADVP, [E (~ ADJUNTO) (.l ADV_TYPE) = vpadv l/'Pperfp - + @PPadjunct @PPcase_obl {@M.Head_Pevfp [@M.. ..Head_Passp} @ (Anaph_Ctrl ~) V {@M_Head_Perfp I @ M_Head_Passp} @ (Anaph_Ctrl ~) Figura 1: La poda de una regla de la gramática francesa real. Los signos "*" y "+" tienen la interpretación habitual como en las expresiones regulares. Una sub-expresión entre paréntesis es opcional. Las expresiones secundarias alternativas están encerradas entre llaves y separadas por el signo "[". Una "@" seguida de un identificador es un operador de expansión de macro, y finalmente se reemplaza por descripciones funcionales adicionales. Corpus - .. ,, 0.1 [Banco de árbol de Treebank desambigado Experto humano Especialización gramatical Gramática especializada Figura 2: El escenario de nuestros experimentos sobre especialización gramatical. indicadores de lo que se puede lograr con esta forma de poda gramatical. Sin embargo, podrían ser engañosos, ya que los tiempos de falla para las oraciones descubiertas podrían ser considerablemente más bajos que los tiempos de las oraciones, de no haber estado fuera de cobertura.
Duro:
Tabla 4 resume los resultados de precisión para Inglés y correferencia rumano. Los resultados indican que la correferencia de inglés es más indicativa que la correferencia rumana, pero SNIZZLE mejora la resolución de correferencia en ambos idiomas. Hubo 64% de casos cuando la correferencia inglesa fue resuelta por una heurística con mayor prioridad que la correspondiente heurística para la contraparte rumana. Este resultado explica por qué hay mejor mejora de precisión para Inglés SWIZZLE rumano en inglés SWIZZLE en rumano Nominal Pronominal 73% 89% 66% 78% 76% 93% 71 °/o 82% Tabla 4: precisión de la correferencia total 84% 72 % 87% 76% Inglés SWIZZLE rumano en inglés SWIZZLE en rumano Nominal 69% 63% 66% 61% pronominal Total 89% 78% 83% 72% 87% 77% 80% 70% Tabla 5: Coreferencia recordar la correferencia inglesa. La Tabla 5 también ilustra los resultados de recuperación. La ventaja de la resolución de correferencia basada en datos sobre otros métodos se basa en su mejor rendimiento de recuperación. Esto se explica por el hecho de que este método captura una mayor variedad de patrones de correferencia. A pesar de que otros sistemas de resolución de correferencia funcionan mejor para algunas formas específicas de sistemas, sus resultados de recuperación son superados por el enfoque de sistemas. La correferencia multilingüe a su vez mejora más la precisión que la recuperación de los sistemas de correferencia basados en datos monolingües. Además, la Tabla 5 muestra que la equivalencia en inglés resulta en un recuerdo mejor que la coreía rumana. Sin embargo, la recuperación muestra una disminución en ambos idiomas para SNIZZLE porque se eliminan los enlaces de correferencia imprecisos. Como suele ser el caso, la eliminación de datos reduce la recuperación. Todos los resultados se obtuvieron utilizando el programa automático de puntuación desarrollado para las evaluaciones MUC.
Tenga en cuenta que la tabla no contiene caracteres extraños y va justo en el medio de la frase: "Este resultado explica por qué hay una mejora de precisión para -TABLE AQUÍ- la correferencia inglesa". No puedo saber dónde estará la tabla con respecto al texto en ejecución. Puede ocurrir antes de una oración, después de ella o dentro de ella, como en este caso. También tenga en cuenta que la mierda de mesa no termina con un punto (la mayoría de los títulos en los papeles no ...) por lo que no puedo confiar en la puntuación para detectarlo. Estoy contento con los límites no precisos, por supuesto, pero todavía tengo que hacer algo con estas tablas. Algunos de ellos contienen palabras en lugar de números, y no tengo suficiente información en esos casos: no hay personajes adictos, nada. Es obvio que sólo los seres humanos: S
En lugar de etiquetas de idioma específicas, utilice la etiqueta 'language-agnostic'. –
Oh, está bien. Lo siento, no lo sé =) – Tex
Así que, para que quede claro, quieres sacar el "junco", ¿verdad? –