detecção e correcção parcial de problemas na conversão de formatos

45
Detec¸ ao e Correc¸ ao Parcial de Problemas na Convers˜ ao de Formatos Andr´ e Santos, [email protected] Jos´eJo~ ao Almeida, [email protected] I Workshop Per-Fide DI@UM 16 de Setembro de 2010

Upload: andrefsantos

Post on 14-Dec-2014

458 views

Category:

Technology


0 download

DESCRIPTION

Presentation given at I Workshop Per-Fide, UMinho, about GuardaLivros, an application being developed to detect and resolve problems in simple-text documents to be automatically processed (e.g., bi-text alignment) [PT].

TRANSCRIPT

Page 1: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Deteccao e Correccao Parcial deProblemas na Conversao de

Formatos

Andre Santos, [email protected] Jo~ao Almeida, [email protected]

I Workshop Per-FideDI@UM

16 de Setembro de 2010

Page 2: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 3: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 4: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

Introducao

Analise e tratamento de documentos emformato electronico de texto simples, tendo em vistaa sua normalizacao para posterior processamento(e.g., alinhamento).

varios tipos de documentos: livros, artigoscientıficos, ...

varias proveniencias

frequentemente, passado desconhecido

por vezes, resultado de traducoes

por vezes, completamente adulterados

em varias lınguas

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 5: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

Introducao

Analise e tratamento de documentos emformato electronico de texto simples, tendo em vistaa sua normalizacao para posterior processamento(e.g., alinhamento).

varios tipos de documentos: livros, artigoscientıficos, ...

varias proveniencias

frequentemente, passado desconhecido

por vezes, resultado de traducoes

por vezes, completamente adulterados

em varias lınguas

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 6: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

Introducao

Para ja...

Centrar no domınio dos livros

Idealmente, acabaremos por ter partessignificativas reutilizaveis noutros domınios

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 7: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

Descricao do problema

anterior formatacao (superior/inferior a linha,italico, ...)

paginacao (numeros, cabecalhos, rodapes, ...)

divisao em seccoes

paragrafos

notas de rodape

codificacao do texto

. . .

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 8: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Introducao

Descricao do problema - Exemplo

(. . . )

gaiement. Sur le devant s<92>’ouvrait la porte

d<92>’entree, donnant acces dans la salle commune.

Une legere veranda, qui en prote-

<96>- 86 <96>-

^Lgeait la partie anterieure contre l<92>’action

des rayons solaires, reposait sur de sveltes bambous.

Le tout etait peint d<92>’une fraıche

(. . . )

La Jangada, Jules Verne

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 9: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 10: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 11: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Primeira abordagem

Primeira abordagem

RegExp + Find & Replace

Demasiado naive

Grande confusao

Necessaria abordagem mais sistematizada

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 12: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Primeira abordagem

Primeira abordagem

RegExp + Find & Replace

Demasiado naive

Grande confusao

Necessaria abordagem mais sistematizada

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 13: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Arquitectura

Arquitectura

definicao de DSL e ontologias

ajudam na organizacao

permitem abstrair do codigo e discutir detalhesa um nıvel mais elevado (ate com pessoas deoutras areas)

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 14: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Arquitectura

Arquitectura

Montagem de uma pipeline; em cada passo lida-secom um conjunto especıfico de problemas.

1 Paginacao2 Seccoes3 Paragrafos4 Notas de rodape5 Palavras e caracteres6 . . .

7 Commit

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 15: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Arquitectura

Arquitectura

Montagem de uma pipeline; em cada passo lida-secom um conjunto especıfico de problemas.

1 Paginacao2 Seccoes3 Paragrafos4 Notas de rodape5 Palavras e caracteres6 . . .

7 Commit

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 16: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paginacao

Paginacao

Objectivo

Identificar e remover do texto elementos referentesa paginacao do livro:

numeros de pagina

cabecalhos

rodapes

quebras de pagina

Geralmente estes elementos sao factores quedestabilizam o processo de alinhamento.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 17: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paginacao

Paginacao - Exemplo

est vrai qu’il fallait etre assez chanceux pour

rencontrer le nabab, et assez audacieux pour

s’emparer de sa personne.

Page 3

^LLa maison a vapeur Jules Verne

Le faquir, - evidemment le seul entre tous

que ne surexcitat pas l’espoir de gagner la

prime, - filait au milieu des groupes, s’arretant

La Maison a Vapeur, Jules Verne

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 18: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paginacao

Paginacao - Algoritmo

1 identificar as quebras de pagina (e.g., ^L)2 nas imediacoes: candidatos a cabecalhos e

rodapes3 contam-se as ocorrencias de cada candidato

normalizado4 sao considerados cabecalhos ou rodapes

candidatos que ultrapassarem um determinadovalor de ocorrencias

5 substitui-se tudo por uma marca propria6 move-se a informacao relativa ao numero de

pagina, cabecalhos e rodapes para ficheiro aparte

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 19: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paginacao

Paginacao - Exemplo

est vrai qu’il fallait etre assez chanceux pour

rencontrer le nabab, et assez audacieux pour

s’emparer de sa personne.

Page 3

^LLa maison a vapeur Jules Verne

Le faquir, - evidemment le seul entre tous

que ne surexcitat pas l’espoir de gagner la

prime, - filait au milieu des groupes, s’arretant

La Maison a Vapeur, Jules Verne

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 20: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paginacao

Paginacao - Exemplo

est vrai qu’il fallait etre assez chanceux pour

rencontrer le nabab, et assez audacieux pour

s’emparer de sa personne. _pb2_

Le faquir, - evidemment le seul entre tous

que ne surexcitat pas l’espoir de gagner la

prime, - filait au milieu des groupes, s’arretant

La Maison a Vapeur, Jules Verne

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 21: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes

Objectivo

Identificar e normalizar as divisoes entre as variasseccoes do livro (inıcio, fim, partes, capıtulos,anexos, ...)

Para realizar esta tarefa foi criada uma ontologia detipos de obra e respectiva hierarquia de divisoes, emvarias lınguas.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 22: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes - Ontologia

Exemplocap

PT capıtulo, cap, cap. , capitulo

FR Chapitre, chap, chap.

EN Chapter, chap, chap.

NT sec

A partir desta ontologia e automaticamente geradauma parte do codigo.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 23: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes - Exemplo

PRIMEIRA PARTE

FANTINE

^LLIVRO PRIMEIRO

UM JUSTO

O abade Myriel

Em 1815, era bispo de Digne, o reverendo Carlos

Francisco Bemvindo Myriel, o qual contava setenta e

Os Miseraveis, Vitor Hugo

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 24: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes - Algoritmo

1 Procura de potenciais inıcios de seccao:linhas contendo palavras-chave (capıtulo, Cap.,chapter, Apendice, Table des Matieres, ...)paginas ou linhas contendo apenas numeracaonumeracao romana...

2 Colocar uma marca imediatamente antes daseccao encontrada.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 25: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes - Exemplo

PRIMEIRA PARTE

FANTINE

^LLIVRO PRIMEIRO

UM JUSTO

O abade Myriel

Em 1815, era bispo de Digne, o reverendo Carlos

Francisco Bemvindo Myriel, o qual contava setenta e

Os Miseraveis, Vitor Hugo

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 26: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes - Exemplo

_sec+O:PARTE=PRIMEIRA_

FANTINE

_sec+O:LIVRO=PRIMEIRO_

UM JUSTO

O abade Myriel

Em 1815, era bispo de Digne, o reverendo Carlos

Francisco Bemvindo Myriel, o qual contava setenta e

Os Miseraveis, Vitor Hugo

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 27: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Seccoes

Seccoes

A identificacao das varias partes constituintes de umdocumento:

permite posteriormente comparar as duasversoes e remover partes que estejam presentesapenas numa delas (apendices, prefacios aedicoes especıficas, etc)

permitira fazer um alinhamento estrutural

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 28: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paragrafos

Paragrafos

Objectivo

Resolver questoes relacionadas com a identificacaode paragrafos, discurso directo, etc.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 29: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paragrafos

Paragrafos - Exemplo

L’hotesse prit la defense de son cure:

- D’ailleurs, il en plierait quatre comme vous sur

son genou. Il a, l’annee derniere, aide nos gens a

rentrer la paille; il en portait jusqu’a six bottes

a la fois, tant il est fort!

- Bravo! dit le pharmacien. Envoyez donc vos filles

en confesse a des gaillards d’un temperament pareil!

Moi, si j’etais le gouvernement, je voudrais qu’on

saignat les pretres une fois par mois.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 30: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Paragrafos

Paragrafos - Algoritmo

identificacao de paragrafos baseia-se na analiseda indentacao e das linhas em brancoidentificacao (e normalizacao) de discursodirecto:

pontuacao, paragrafo, travessaotexto entre aspas

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 31: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Notas de rodape

Notas de rodape

Objectivo

Identificar e remover do documento notas de rodapee respectivas chamadas.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 32: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Notas de rodape

Notas de rodape - Exemplo

On fit un inventaire de son argent comptant, et on

le mena dans le chateau que fit construire le roi

Charles V, fils de Jean II, aupres de la rue

Saint-Antoine, a la porte des Tournelles[1].

[1] La Bastille, qui fut prise par le peuple de

Paris, le 14 juillet 1789, puis demolie. B.

Quel etait en chemin l’etonnement de l’Ingenu!

je vous le laisse a penser. Il crut d’abord

que c’etait un reve.

Oeuvres de Voltaire, Voltaire

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 33: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Notas de rodape

Notas de rodape - Algoritmo

1 Identificar chamadas para notas de rodape nomeio de frases ([1], <<2>>, ^3, ...)

2 Substituir por uma marca propria3 Identificar notas de rodape (geralmente

encontram-se no fim de paginas ou no fim dodocumento).Outras pistas: N. d(o|a|os|as) T., ...

4 Inserir uma marca propria e remover a notapara um ficheiro a parte

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 34: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Notas de rodape

Notas de rodape - Exemplo

On fit un inventaire de son argent comptant, et on

le mena dans le chateau que fit construire le roi

Charles V, fils de Jean II, aupres de la rue

Saint-Antoine, a la porte des Tournelles[1].

[1] La Bastille, qui fut prise par le peuple de

Paris, le 14 juillet 1789, puis demolie. B.

Quel etait en chemin l’etonnement de l’Ingenu!

je vous le laisse a penser. Il crut d’abord

que c’etait un reve.

Oeuvres de Voltaire, Voltaire

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 35: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Notas de rodape

Notas de rodape - Exemplo

On fit un inventaire de son argent comptant, et on

le mena dans le chateau que fit construire le roi

Charles V, fils de Jean II, aupres de la rue

Saint-Antoine, a la porte des Tournelles_fnr29_.

_fne8_

Quel etait en chemin l’etonnement de l’Ingenu!

je vous le laisse a penser. Il crut d’abord

que c’etait un reve.

Oeuvres de Voltaire, Voltaire

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 36: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Palavras e caracteres

Palavras e caracteres

translineacoes de palavras

codificacao do texto

. . .

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 37: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Relatorio e Commit

Relatorio

Os passos anteriores produzem um relatorio

Este relatorio consiste num resumo do que estaa ser assumido e do que esta a ser feito

O objectivo e permitir realizar um diagnosticoao funcionamento do programa, permitindocorrigir manualmente aquilo que estiver errado

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 38: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Relatorio e Commit

Relatorio

livros/_FR_15.pdf.txt:

footers=[’( Page) = 241’]

headers=[

"(La maison \x{e0} vapeur Jules Verne) = 241"]

ctrL=1;

pagnum_ctrL=241;

sectionsO=2;

sectionsN=30;

word_tr=58;

words=118036;

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 39: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Arquitectura e design goals Relatorio e Commit

Passo final: commit

Depois de verificado o relatorio e afinados ospormenores, e possıvel a criacao de uma copiado documento sem as marcas anteriormenteadicionadas.

Este e a ultima etapa antes da realizacao doalinhamento, e limpa tanto quanto possıvel otexto de tudo o que possa vir a afectarnegativamente o alinhador.

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 40: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Conclusoes, wish list e trabalho futuro

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 41: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Conclusoes, wish list e trabalho futuro

1 Introducao

2 Arquitectura e design goalsPrimeira abordagemArquitecturaPaginacaoSeccoesParagrafosNotas de rodapePalavras e caracteresRelatorio e Commit

3 Conclusoes, wish list e trabalho futuro

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 42: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Conclusoes, wish list e trabalho futuro

Conclusoes, wish list e trabalho futuro

Nao existe um standard para livros(documentos?) em txt

Os documentos sao bastante heterogeneos(proveniencia, tipo e quantidade notas derodape, formato da paginacao, ...)

Viva as expressoes regulares!

Tem-se verificado a regra dos 20/80

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 43: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Conclusoes, wish list e trabalho futuro

Conclusoes, wish list e trabalho futuro

Ontologias e DSLs ajudam a estruturar ideias -melhorar e completar

Conjunto de funcoes de diagnostico propoemalteracoes que podem ser tornadaspermanentes

O relatorio a gerar no fim dos diagnosticosdeve apresentar resumo inteligente da analise

Indice de “alinhabilidade”

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 44: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Conclusoes, wish list e trabalho futuro

Conclusoes, wish list e trabalho futuro

Implementacao de algoritmos de aprendizagem

Alem dos livros: poesia, legislacao, artigoscientıficos, sıtios web, . . .

Andre Santos, Jose Joao Almeida Det. e Correccao Parc. de Problemas na Conv. de Formatos

Page 45: Detecção e Correcção Parcial de Problemas na Conversão de Formatos

Deteccao e Correccao Parcial deProblemas na Conversao de

Formatos

Andre Santos, [email protected] Jo~ao Almeida, [email protected]

I Workshop Per-FideDI@UM

16 de Setembro de 2010