Voltar

Ciência da Computação promove defesas de dissertações nesta sexta-feira (14)

Apresentações ocorrerão em diversos espaços no Centro de Informática

O Programa de Pós-Graduação em Ciência da Computação (PPGCC) promove, nesta sexta-feira (14), a defesa de seis dissertações de mestrado. A primeira delas será às 9h, no anfiteatro do Centro de Informática (CIn), com o estudante Carlos Manoel Vasconcelos Sousa defendendo a dissertação “MongoChain: um Framework para Implementação de Sistemas Transacionais”. O trabalho contou com a orientação da professora Valeria Cesario Times, que estará na banca com os professores Ana Carolina Brandão Salgado (UFPE/CIn) e Ricardo Rodrigues Ciferri (UFSCar).

No mesmo dia, acontece, às 14h, no auditório do CIn, a defesa da dissertação “Sumarização Automática de Textos de Notícias Baseada na Classe do Documento” de Ihago Henrique Lucena e Silva. O projeto contou a orientação do professor Rafael Dueire Lins. Além dele, a banca avaliadora contará também com os professores Frederico Luiz Gonçalves de Freitas (UFPE/CIn) e Rafael Ferreira Leite de Mello (UFRPE).

Também às 14h, na sala B020 do centro, Marcus Rafael Xavier Laurentino defende a dissertação “Migração de Máquinas Virtuais em Ambientes Multinuvem”. O projeto contou com orientação do professor Carlos André Guimarães Ferraz. A banca será formada pelos professores Ioram Schechtman Sette (Cesar), coorientador do trabalho Vinicius Cardoso Garcia (UFPE/CIn) e Andrey Elísio Monteiro Brito (UFCG).

A estudante Camila Oliveira de Souza defenderá, às 14h, na sala A014, a dissertação “Usando Convolução Separável em Profundidade na otimização da arquitetura SqueezeNet”. A banca será formada pelo orientador do projeto, Cleber Zanchettin (UFPE/CIn), em conjunto com os professores Adriano Lorena Inacio de Oliveira (UFPE/CIn) e Byron Leite Dantas Bezerra (UPE).

Cleber Zanchettin também é orientador da dissertação “Squeezed Very Deep Convolutional Neural Networks for Text Classification” de autoria de Luã Lázaro Jesus dos Santos. A defesa desse trabalho ocorrerá às 16h, também na sala A014 do CIn. A banca terá a mesma formação da anterior.

Por fim, o estudante Everton Renne Barros de Oliveira irá defender a dissertação “Relação entre Refatorações e Code Smells na Evolução de Projetos de Software e seu Reflexo em Medidas de Software”. A defesa será às 14h, no anfiteatro do CIn. O orientador Márcio Lopes Cornélio se juntará aos professores Leopoldo Motta Teixeira (UFPE/CIn) e Everton Leandro Galdino Alves (UFCG) para formação da banca avaliadora.

Resumo 1

Um Sistema de Gerenciamento de Banco de Dados (SGBD) relacional tem como característica fornecer consistência forte aos dados por meio de transações que visam manter as propriedades de Atomicidade, Consistência, Isolamento e Disponibilidade (ACID). Porém, estes SGBD não são triviais para serem executados em sistemas distribuídos compostos por clusters nos quais podemos obter escalabilidade com a adição de mais nodes. Portanto, o movimento do SGBD Não Apenas SQL (NoSQL) de agregados tem sido aderido pelos desenvolvedores para persistência de dados, com o intuito de conseguir também maior disponibilidade, sacrificando a consistência ao adotar o conceito de Basicamente Disponível, Estado Leve e Consistência Eventual (BASE). Ademais, a Blockchain é uma nova abordagem que traz segurança e transparência ao realizar transações, as quais são armazenadas em um livro razão imutável e distribuído, por meio de uma rede descentralizada, porém, a escalabilidade acaba sendo prejudicada ao optar em obter uma maior interação entre os nodes. Diante deste contexto, ao integrar estas tecnologias divergentes, conseguimos desenvolver aplicações transacionais que contemplam os requisitos provenientes de diferentes domínios. Na literatura, encontramos algumas propostas neste sentido, porém, não há um ambiente programável que possa ser usado pelos desenvolvedores para ser feito o gerenciamento de transações. Sendo assim, por meio da integração entre as funcionalidades transacionais provenientes do SGBD NoSQL MongoDB e uma Blockchain permissionada, apresentamos o MongoChain, um framework baseado nos design patterns Middleware e Prototype. Para mostrar a sua capacidade de extensão, construímos outros dois frameworks especialistas, sendo um referente à realização de agendamentos em clínicas médicas e o outro se trata de um marketplace de produtos para o setor automotivo. Os resultados mostram que o MongoChain fornece os mecanismos necessários para termos sistemas que conseguem prover dados consistentes, disponíveis, escaláveis, seguros e transparentes.

Resumo 2

O crescimento exponencial de documentos textuais na web nos últimos anos tem forçado os pesquisadores a encontrar formas de economizar tempo e recursos para encontrar informações relevantes. Muitas soluções na área de Processamento de Linguagem Natural vêm sendo cada vez mais empregadas, principalmente para lidar com esse grande volume de informações não estruturadas. Algumas dessas soluções são a classificação automática de documentos e a sumarização automática de textos. Enquanto a sumarização automática tenta produzir um resumo do texto original, ou seja, um recorte com as informações mais úteis do texto em um determinado cenário, a classificação automática visa categorizar um texto atribuindo-lhe rótulos (identificadores de classes pré-definidos). Logo, se empregadas conjuntamente, essas soluções distintas podem trazer ganhos significativos do contexto de uma para o contexto da outra. Esta dissertação estudou o quanto a categoria de classificação de um documento consistia em um bom critério para escolha das técnicas de sumarização mais adequadas, visto que é muito complexo criar um método genérico o suficiente para resumir diferentes tipos de textos. Também foi realizado um mapeamento das combinações de técnicas que produzissem os melhores resumos para cada uma das classes de documentos empregadas. Por fim, foi analisada a eficácia da construção de modelos de classificação de documentos a partir dos próprios resumos dos textos originais gerados pelas técnicas de sumarização.

Resumo 3

O vendor lock-in é uma situação onde clientes se tornam dependentes de serviços e recursos de um provedor de nuvem. Como uma solução para este problema, uma estratégia é que estes clientes distribuam seus dados e aplicações entre diversas nuvens; entretanto, neste caso, estes clientes precisarão lidar com a heterogeneidade das nuvens, necessitando utilizar ferramentas diversas providas por cada um destes provedores, para assim gerenciar, muitas vezes manualmente, toda esta infraestrutura distribuída. Outra estratégia é a de utilização de um serviço multinuvem, que é capaz de tratar toda a heterogeneidade entre as nuvens de maneira transparente para o cliente, fornecendo uma interface unificada capaz de gerenciar as diversas nuvens simultaneamente, como no caso de migrações de máquinas virtuais entre nuvens. Este trabalho de dissertação propõe uma arquitetura chamada Kumo para simplificar a migração de máquinas virtuais entre multinuvens, que quando implementada, simplifica para o operador de nuvem o processo de migração destas máquinas entre as nuvens. Para isto, neste trabalho são implementados os dois componentes projetados na arquitetura, a interface de linha de comando e o serviço multinuvem de migração de máquinas virtuais.Também, foram desenvolvidas integrações com as três nuvens públicas mais usadas na atualidade, a Amazon Web Services, a Microsoft Azure e a Google Cloud Platform, que tornaram a migração homogênea e automatizada entre estas nuvens na perspectiva do operador. Para avaliar a solução, foram utilizados os data centers destas três nuvens nos estados americanos da Virgínia e da Califórnia, com o objetivo de definir um cenário real de utilização de Kumo, realizando migrações da costa leste para a costa oeste dos Estados Unidos. A métrica utilizada foi a de Tempo Total de Migração (TTM), que é o tempo desde que a migração é iniciada na nuvem de origem até a máquina virtual ser criada na nuvem de destino. Entre os cenários homogêneos, que são aqueles cenários onde a nuvem de origem e de destino são do mesmo provedor mas em data centers diferentes, o melhor resultado ocorreu nas migrações entre as nuvens da Azure, com TTM mediana de 45 minutos e 59 segundos, enquanto entre os cenários heterogêneos, o melhor resultado ocorreu nas migrações realizadas da Google Cloud para a Amazon, com um TTM mediana de 45 minutos e 56 segundos.

Resumo 4

Grandes avanços vêm sendo realizados em modelos baseados em Redes Neurais Convolucionais. Considerando problemas de processamento de imagens, esses modelos já possuem desempenho que em alguns casos superam o humano. Apesar dos excelentes resultados neste aspecto, modelos com taxas de acurácia extremamente altas são, em geral, muito grandes, chegando a possuir centenas de milhões de parâmetros, o que os torna inviáveis para diversas aplicações do mundo real, onde o poder computacional disponível normalmente é bastante limitado. Neste contexto, investigamos a possível redução do número de parâmetros da rede SqueezeNet, a qual se propõe a ser uma arquitetura com tamanho reduzido e boa taxa de acerto, a partir da substituição de suas convoluções tradicionais por Convoluções Separáveis em Profundidade (DSC), assim como o impacto desta substituição em outras métricas de análise do modelo. As métricas analisadas são a acurácia, o número de parâmetros, o tamanho de armazenamento e o tempo de inferência de um único exemplo de teste. A rede resultante, denominada SqueezeNet-DSC, é então aplicada ao problema de classificação de imagens, e sua performance comparada com outras redes que são referência na área, como a MobileNet, a AlexNet e a VGG19. A SqueezeNet-DSC apresentou uma redução considerável no espaço de armazenamento, chegando a 37% do espaço de armazenamento da SqueezeNet original, com uma perda de acurácia de 1,07% na base CIFAR-10 e de 3,06% na base de dados CIFAR-100.

Resumo 5

Embarcar inteligência artificial em plataformas com restrições de desempenho tem se tornado uma tendência desde o crescimento no uso de sistemas embarcados e dispositivos móveis, presenciado nos últimos anos. Apesar de sistemas com restrições de desempenho não terem capacidade de processamento suficiente para treinar modelos complexos, como as Redes Neurais Convolucionais (RNC), eles já são capazes de realizar sua inferência utilizando um modelo embarcado previamente treinado. Essa abordagem oferece diversas vantagens, tais como maior privacidade, menor latência de resposta e a não dependência de conexão com a internet em tempo real. De todo modo, o uso de um modelo de RNC em dispositivos com restrições de desempenho é condicionado ao seu tamanho de armazenamento e poder de processamento. Muitas das pesquisas em RNC têm focado em aumentar a profundidade da rede para melhorar sua acurácia. No campo de classificação de texto, modelos profundos apresentam excelente performance, mas se baseiam em arquiteturas grandes, com milhares de parâmetros, e consequentemente, alto requisito de armazenamento e processamento. Um dos modelos com bastante destaque é o Very Deep Convolutional Neural Networks (VDCNN). Nesta dissertação, é proposta a modificação da estrutura do modelo VDCNN para reduzir seu tamanho de armazenamento mantendo sua performance. Neste processo de otimização, são avaliados os impacto do uso de Depthwise Separable Convolutions e Global Average Pooling na arquitetura da rede, considerando a quantidade de parâmetros, tamanho de armazenamento, dependência de hardware dedicado e acurácia. O modelo proposto, Squeezed Very Deep Convolutional Neural Networks (SVDCNN), é entre dez e 20 vezes menor do que sua versão original, dependendo da profundidade da rede utilizada, mantendo um tamanho de armazenamento máximo de 6MB. Com relação à acurácia, o modelo experimenta uma perda entre 0,1% e 1,0% na performance de classificação enquanto obtém menor latência em hardware não dedicado e maior quociente de tempo de inferência comparado com o modelo base.

Resumo 6

A refatoração ou refactoring é a atividade de melhorar o código fonte sem afetar o comportamento observável do software, com vistas a reuso, legibilidade e facilidade de manutenção. A refatoração é útil para transformação de trechos de código com baixa qualidade e que se enxerga uma oportunidade de melhoria. Estes trechos também são conhecidos como code smells (código com “cheiro”) ou bad smells (código que “cheira mal”). A percepção de que um código possui uma oportunidade de melhoria a partir da identificação de um code smells é um dos pilares deste trabalho. Observamos como projetos de software evoluíram a partir da relação entre as refatorações e code smells, sob a perspectiva das medidas de software ao longo do ciclo de evolução do software. Desenvolvemos a ferramenta RefactoringLink, a fim de identificar code smells que foram introduzidos ao longo do desenvolvimento, bem como aqueles que desapareceram. Outra funcionalidade da ferramenta é a de capturar as refatorações que ocorreram entre as versões do sistema, com a finalidade de identificar quais foram os recursos afetados por essas transformações e assim criar uma associação entre a refatoração e o code smell. Este trabalho investigou 11.593 versões em 427 projetos Java/Android, hospedados em repositórios de software público. Em nossos achados, foi possível detectar 4.555.351 code smells e um total 197.525 refatorações. Identificamos que apenas 2,3% (4.508) das refatorações resultaram em correção direta de 0,13% (5.354) dos code smells. Este estudo também coletou 37 medidas de software para cada classe de cada versão dos projetos analisados. Analisamos cinco medidas de software específicas de orientação a objetos em três cenários para observar o reflexo nas medidas quando na existência ou não de refatoração ou code smell. Os achados indicam que as medidas de software podem sofrer variações em razão das mudanças aplicadas no repositório de software ao longo da evolução do código. Apresentamos um comparativo das medidas em 15 classes de projetos distintos que tiveram a presença de refatoração, code smell e da correção de code smell a partir de uma refatoração.

Mais informações
(81) 2126.7754
ppgci@ufpe.br

Data da última modificação: 12/02/2020, 17:05