• Nenhum resultado encontrado

4.2 WRITER

4.2.1 TRANSFORMAÇÃO DO GRAF EM EAF

Para isto foi criado uma classe Writer proveniente da classe abstrata BaseWriter da biblioteca Poio API. Para que exista a possibilidade de fazer a transformação devem ser passadas por parâmetro do método write( ) as seguintes variáveis: graf_graph – objeto com o grafo de anotações; tier_hierarchies – a lista hierárquica de camadas contém o nome das camadas que estão presentes nos elementos <TIER> do objeto meta_information; primary_data – objeto com a informação sobre os dados primários; por fim, meta_information – objeto que contém a informação sobre a estrutura do ficheiro EAF.

O funcionamento deste writer é realizado na totalidade pelo método write( ) que primeiro faz a chamada a um método auxiliar que vai mapear os valores dos TIME_SLOTs para um

dicionário, de modo a que mais tarde seja possível fazer uma correspondência dos valores das regiões dos nós com os TIME_SLOT_ID de cada anotação. Depois de realizado um nivelamento à lista hierárquica de camadas, é iniciado um ciclo que vai percorrer todas as camadas. Este ciclo primeiramente tenta encontrar o elemento <TIER> na meta_information que tenha o mesmo TIER_ID que a camada atual e, no caso de ser positivo, procura no grafo de anotações os nós correspondentes à camada e, por conseguinte, pesquisa pelas anotações desses mesmos nós. Quando encontradas as anotações, é gerado um novo elemento <ANNOTATION> e adicionado ao elemento <TIER> em causa. No fim do ciclo é efetuada a escrita do ficheiro EAF, que antes faz uma atualização do elemento <HEADER> sobre dados primários.

Conclusão e Trabalho Futuro

O número de línguas ameaçadas e minoritárias têm vindo a aumentar nestes últimos 20 anos, no entanto, verifica-se, paralelamente a este aumento, o crescimento significativo do número de interessados e especialistas na preservação e revitalização destas línguas. Este grande interesse evidenciado faz com que as línguas não sejam extinguidas e causa o aumento do número de utilizadores de softwares de processamento linguístico e, por sua vez, o número de desenvolvimentos para novas estruturas e formatos de dados, possibilitando a evolução dos estudos de investigação nas diversas áreas da linguística.

Neste sentido, entende-se que os grafos GrAF podem ter um papel importante na implementação de workflows científicos na área da linguística, sendo determinantes para a dinâmica inerente ao processamento de linguagem.

O objetivo inicial do presente projeto consistia na obtenção de um processo que fizesse a transformação do formato de dados ELAN para o modelo de dados GrAF. No entanto, foi possível apurar a possibilidade de efetuar a transformação de outros tipos de formatos de dados e ficheiros. Deste modo, de acordo com o apresentado no capítulo Casos de Uso, alusivo à explicação e demonstração do funcionamento da biblioteca Poio API, existe a possibilidade de fazer um workflow com dois sentidos, isto é, de um formato de dados para GrAF e posteriormente, de GrAF para um novo formato, que no caso verificado foi o Elan Annotation Format (EAF). Esta consecução ajudou a provar a interoperabilidade que pode existir com a utilização do GrAF e dos vários formatos de ficheiros e, por conseguinte, as expectativas iniciais foram, de certa forma, superadas.

Neste sentido, considerando os objetos GrAF gerados pelo Poio API, os dados resultantes podem ser conduzidos para bibliotecas científicas em Python, tais como networkx, numpy ou scipy, de modo a possibilitar a comparação ou cruzamento de dados linguísticos ou outros, em projetos analíticos, como já é aplicado no projeto QuantHistLing36.

Foi ainda constatado que a conversão de formatos de ficheiros personalizados através do Poio API podem servir como um ponto de entrada para as estruturas oferecidas pela American National Corpus (ANC), e suportar a união de dados e anotações de múltiplas fontes de dados heterogéneos para análises posteriores.

Numa perspetiva futura, visto que ainda se denotam determinadas lacunas que poderão ser corrigidas, designadamente a nível de performance de alguns dos parsers existentes, pressupõe-se que o trabalho futuro centrar-se-ia na criação de um parser generalizado, capaz de fazer a leitura e transformação de um formato qualquer de dados e ficheiros para o modelo de dados GrAF. Para além disso, seria também importante explorar a possibilidade de fazer um processo inverso ao exposto anteriormente, ou seja, transformar objetos GrAF em formatos de dados e ficheiros aleatórios.

Bibliografia

[1] UNESCO Ad Hoc Expert Group on Endangered Languages. In International Expert Meeting on UNESCO Programme Safeguarding of Endangered Languages, Março 2003.

[2] WG 3: Linguistic Fieldwork, Anthropology and Language Typology, http://clarin- d.net/en/discipline-specific-working-groups/wg-3-linguistic-fieldwork-

anthropology-language-typology.html, Agosto 2013.

[3] Jerome Feldman e George Lakoff, 2006, Neural Theory of Language and Thought, http://icbs.berkeley.edu/natural_theory_lt.php, Agosto 2013.

[4] Luc Steels e Joachim de Beule. A (very) Brief Introduction to Fluid Construction Grammar. In Proceedings of the Third Workshop on Scalable Natural Language Understanding, pp. 73 – 80, 2006.

[5] Nancy C. Chang e Benjamin K. Bergen. Embodied Construction Grammar in Simulation-Based Language Understanding. In Construction Grammars: Cognitive Grounding and Theoretical Extensions, pp. 147 – 190, 2005.

[6] Computational Issues in Fluid Construction Grammar, http://www.fcg- net.org/sample-page/computational-issues-in-fluid-construction-grammar, Março 2013.

[7] Blog oficial da Google, The Endangered Languages Project: Supporting language

preservation through technology and collaboration,

http://googleblog.blogspot.pt/2012/06/endangered-languages-project- supporting.html, Fevereiro 2013.

[8] Features Accentuate.us, http://accentuate.us/features.html, Fevereiro 2013.

[9] Kevin Scannell and Michael Schade, 2010. Accentuate Us!. In Saint Louis University, http://borel.slu.edu/pub/a.us.mathcs.pdf, Agosto 2013.

[11] Indigenous Tweets Blog, http://indigenoustweets.blogspot.pt/2011/03/welcomefailte.html, Fevereiro 2013. [12] Nancy Ide , Laurent Romary and Eric de la Clergerie . International

Standard for a Linguistic Annotation Framework. In Journal Natural Language Engineering, Vol. 10, Issue 3-4, pp. 211 - 225, Setembro 2004.

[13] Steven Bird and Mark Liberman. A formal framework for linguistic annotation. In Speech Communication, Vol. 33, Issues 1 – 2, pp. 1 – 2, 23 – 60, 2001.

[14] ISO 24612:2012: Language resource management – Linguistic annotation framework (LAF) International Organization for Standardization, http://www.iso.org/iso/catalogue_detail.htm?csnumber=63732, Geneva, Switzerland, Agosto 2012.

[15] Nancy Ide and Laurent Romary. Representing Linguistic Corpora and Their Annotations. In Proceedings of the Fifth Language Resources and Evaluation Conference (LREC), Genoa, Italy, 2006.

[16] Nancy Ide and Keith Suderman. GrAF: A graph-based format for linguistic annotations. In Proceedings of the Linguistic Annotation Workshop, pp. 1 – 8, Prague, Czech Republic, Junho 2007.

[17] Nancy Ide, Collin Baker, Christiane Fellbaum, Charles Fillmore and Rebecca Passonneau. MASC: A Community Resource For and By the People. In Proceedings of Association for Computational Linguistics (ACL 2010), pp. 68 – 73, Uppsala, Sweden, Julho 2010.

[18] Nancy Ide and Keith Suderman. Bridging the gaps: interoperability for GrAF, GATE, and UIMA. In Proceedings of the Third Linguistic Annotation Workshop, pp. 27 – 34, Suntec, Singapore, Agosto 2009.

[19] Vera Ferreira, Peter Bouda and António Lopes. Poio API - An annotation framework to bridge Language Documentation and Natural Language Processing. In Proceedings of the Annotation of Corpora for Research in the Humanities (ACRH-2), Universidade Nova de Lisboa, 2012.

[21] The Language Archive - Language Data, http://tla.mpi.nl/home/language- data/, Agosto 2013.

[22] The Language Archive - Data Archive, http://tla.mpi.nl/resources/data- archive/, Agosto 2013.

[23] Elan Annotation Framework,

http://www.mpi.nl/tools/elan/EAF_Annotation_Format.pdf, Agosto 2013.

[24] Marie Hinrichs, Thomas Zastrow and Erhard Hinrichs. WebLicht: Web- based LRT Services in a Distributed eScience Infrastructure. In Proceedings of the Seventh International Conference on Language Resources and Evaluation (LREC’10), Valletta, Malta, May, 2010.

[25] Geoffrey Haig and Stefan Schnell, 2011. Annotations using GRAID, http://www.linguistik.uni-kiel.de/GRAIDmanuall, Agosto 2013.

[26] brat standoff format, http://brat.nlplab.org/standoff.html, Agosto 2013.

[27] The TCF Format, http://weblicht.sfs.uni-

tuebingen.de/weblichtwiki/index.php/The_TCF_Format, Agosto 2013.

[28] WebLicht services with Servlet tutorial, http://weblicht.sfs.uni- tuebingen.de/WebLichtTutorial.pdf, Agosto 2013.

[29] TypeCraft, http://typecraft.org/tc2wiki/Main_Page, Agosto 2013. [30] James Shore, The Art of Agile Development, O'Reilly Media Inc, 2008. [31] Kent Beck, Test-driven Development: By Example, Addison-Wesley

Professional, Novembro 2002.

[32] Henrik Kniberg and Mattias Skarin, Kanban and Scrum: Making the Most of Both, Lulu Enterprises Incorporated, 2010.

[33] NoseTests, http://nose.readthedocs.org/en/latest/index.html, Agosto 2013. [34] Unit Tests Python, http://docs.python.org/3.3/library/unittest.html, Agosto

2013.

[35] ELAN Description, http://tla.mpi.nl/tools/tla-tools/elan/elan-description/, Agosto 2013.

[36] Linguistic Applications at the MPI, http://www.mpi.nl/world/tg/lapp/lapp.html, Agosto 2013.

[37] User Guide for ELAN Linguistic Annotator,

http://www.mpi.nl/corpus/manuals/manual-elan_ug.pdf, Agosto 2013.

[38] ELAN - Linguistic Annotator Manual,

http://www.mpi.nl/corpus/manuals/manual-elan.pdf, Agosto 2013.

[39] Scott Farrar. Review of TypeCraft from Pavel Mihaylov and Dorothee Beermann. In Language Documentation & Conservation, Vol. 4, pp. 60 – 60, 2010.

[40] WebLicht, http://weblicht.sfs.uni-

tuebingen.de/weblichtwiki/index.php/Getting_Started, Setembro 2013.

[41] Abstract Base Classes, http://docs.python.org/2/library/abc.html, Agosto 2013.

Apêndices

Do estudo feito durante esta dissertação resultou a publicação do artigo:

Vera Ferreira, Peter Bouda and António Lopes. 2012. "Poio API - An annotation framework to bridge Language Documentation and Natural Language Processing" apresentado no evento "Annotation of Corpora for Research in the Humanities" (ACRH-2) na Universidade Nova de Lisboa e pode ser lida em Mambrini, Francesco / Passarotti, Marco / Sporleder, Caroline (eds.) 2012. Proceedings of the Second Workshop on Annotation of Corpora for Research in the Humanities. Lisboa: Edições Colibri, 15-26.

Documentos relacionados