Leonardo Amorim premiado no WSCAD e publica artigo no IEEE

Leonardo Amorim premiado no WSCAD e publica artigo no IEEE

Prêmio durante o WSCAD

Neste ano o XIX WSCAD aconteceu na cidade de São Paulo, no período de 01 a 03 de outubro e o nosso instrutor e consultor Leonardo Amorim, responsável pela criação do treinamento de Python and Hadoop for Data Engineering – um dos cursos lançados em 2018 pela 4Linux –  foi premiado no Simpósio de Sistemas Computacionais de Alto Desempenho (WSCAD) –  evento anual que apresenta os principais desenvolvimentos, aplicações e tendências nas áreas de Arquitetura de Computadores, Processamento de Alto Desempenho e Sistemas Distribuídos.

O artigo “A Fast Similarity Search kNN for Textual Datasets“, com autorias de Leonardo Amorim, Mateus Freitas, Paulo Silva e Wellington Martins foi selecionado dentre os 3 melhores e escolhido para menção honrosa.

Conversamos com o Leonardo Amorim e pedimos para ele nos contar um pouco mais sobre o artigo:

O artigo “A Fast Similarity Search kNN for Textual Datasets” trata da melhora de desempenho do algoritmo KNN (Os “k” vizinhos mais próximos) que tem como objetivo encontrar os “k” – documentos mais próximos dado um documento de consulta. Devido ao seu alto custo computacional, várias soluções paralelas tem sido propostas para acelerar o KNN incluindo aceleradores modernos como as GPUs.

No entanto, a maioria das propostas assumem que os dados são densos e de baixa dimensionalidade, estas condições não se aplicam a documento de texto, que é conhecido pela sua alta dimensionalidade e alta esparsidade.

Este artigo apresenta um algoritmo de granularidade fina que aplica técnica de filtragem baseada nos termos em comum mais importantes do documento de consulta usando para isto um índice invertido e sua implementação em GPU. Os resultados foram promissores alcançando um speedup de até 37 vezes.

 

Publicação de artigo no IEEE

Leonardo também teve um artigo publicado no IEEE World Congress on Computational Intelligence (IEEE WCCI) –  maior evento técnico no campo de Inteligência Computacional.

O IEEE WCCI 2018 sediou três conferências: a IJCNN 2018 (Redes Neurais Artificiais), a FUZZ-IEEE 2018 (Lógica Nebulosa) e o IEEE CEC 2018 (Computação Evolutiva) e o objetivo deste congresso é incentivar o cruzamento de ideias entre estas três grandes áreas e fornecer um fórum para intelectuais de todo o mundo discutir e apresentar seus resultados de pesquisa em Inteligência Computacional.

O evento ocorre a cada 2 anos e neste ano ocorreu entre 8 e 13 de Julho no Rio de Janeiro, os eventos anteriores ocorreram no Canadá, China e Austrália e o próximo evento está previsto para acontecer na Escócia, em 2020.

Ele também nos deu detalhes e explicou mais sobre este artigo:

A principal contribuição do artigo “A new word embedding approach to evaluate potential fixes for automated program repair” publicado na IJCNN 2018 foi propor um novo método para avaliar a qualidade de patches (ou correções) gerados automaticamente por métodos de Reparo Automatizado de Software. Para isto foi aplicado o algoritmo Word2Vec adaptado pelos autores do artigo a fim de dar uma “nota” indicando a qualidade semântica de um código-fonte que recebeu uma correção gerada automaticamente.

O Word2Vec é uma classe de algoritmos usada para verificar a similaridade entre palavras, sentenças e até documentos de textos e é muito usado em aplicações de Processamento Natural de Linguagem, ele utiliza uma Rede Neural Artificial (RNA) simples quem tem como objetivos:

(i) criar um vetor compacto para cada palavra de um vocabulário a fim de que possa ser calculada a similaridade entre duas palavras usando como métrica o cálculo de distância cosseno;
(ii) aumentar a probabilidade quando as palavras de um corpus (como, por exemplo, a Wikipedia) concorrem com muita frequência e diminuir a probabilidade quando elas não concorrem.

Com isso é possível analisar a qualidade semântica de um documento de texto que pode ser um código-fonte de um programa. Para o segundo objetivo, a RNA usa um classificador chamado Softmax.

O Word2Vec só gera como resultado os vetores compactados que representam as palavras de um texto, mas não mostra o valor de probabilidade, dada duas palavras ou tokens de um código-fonte acontecerem em uma determinada sequência.

Para obter este valor de probabilidade, o Word2Vec foi adaptado para obtê-lo a fim de compor a “nota” que diz, que um código-fonte corrigido automaticamente é natural ou não, isto é, se é próximo de uma correção gerada por um ser humano, o algoritmo Word2Vec para atingir resultados satisfatórios deve ser treinado com uma grande base de dados (Big Data) de códigos-fontes que podem ser obtidos de projetos de Software Livre.

E porque este trabalho é importante?

É importante pois a depuração de código é frequentemente uma tarefa manual e dispendiosa, alguns trabalhos recentemente apresentaram métodos automatizados de reparo de softwares com o objetivo de reduzir o tempo de depuração.

O artigo pode ser obtido em: https://ieeexplore.ieee.org/document/8489079.

Leonardo Amorim foi responsável pela criação e atualmente ministra o treinamento Python and Hadoop for Data Engineering oferecido pela 4Linux. Para os interessados, no link é possível conhecer o conteúdo programático, diferencias e pré-requisitos do treinamento.

 

Anterior DevSecOps e Compliance como Código: Inovação e Segurança em Softwares
Próxima Da Infraestrutura Microsoft ao Mundo Open Source: A Jornada DevOps

About author

Joyce Bambach Luiz
Joyce Bambach Luiz 89 posts

Responsável pela área de Marketing e Relacionamento da 4Linux, com mais de 10 anos de experiência no segmento de tecnologia.

View all posts by this author →

Você pode gostar também

Notícias

Treinamento DevOps: Práticas de Continuos Monitoring na 4Linux

A 4linux na busca de oferecer aos seus alunos sempre em primeira mão a tendência do mercado, para que seus alunos obtenham destaque e conquistas ao disputar uma oportunidade, visando

Eventos

4Linux homenageia personalidades do mundo de TI em suas salas de aula

Todas as salas de aula da 4Linux prestam uma singela homenagem a alguma personalidade de destaque no mundo de TI. No mês de Setembro a 4Linux recebeu a visita de

Notícias

Participe do Beta Test da Certificação LPIC-1 na 4Linux em São Paulo

As provas “beta-test” acontecerão no dia 30/06/2018 na sede da 4Linux em São Paulo, confira abaixo os selecionados para fazerem a prova. O Linux e o mundo open source estão