DSpace/Manakin Repository

Explorando características sociais e de colaboração na recomendação de projetos no GitHub.

Mostrar registro simples

dc.creator.ID OLIVEIRA, T. G. pt_BR
dc.creator.Lattes http://lattes.cnpq.br/2170938506941690 pt_BR
dc.contributor.advisor1 RAMALHO, Franklin de Souza.
dc.contributor.advisor1ID Ramalho, F. pt_BR
dc.contributor.advisor1Lattes http://lattes.cnpq.br/2469816352786812 pt_BR
dc.contributor.advisor2 MARINHO, Leandro Balby.
dc.contributor.advisor2ID MARINHO, L. B. pt_BR
dc.contributor.advisor2Lattes http://lattes.cnpq.br/3728312501032061 pt_BR
dc.contributor.referee1 CAMPELO, Cláudio Elízio Calazans.
dc.contributor.referee2 MONTEIRO, João Arthur Brunet.
dc.contributor.referee3 BARBOSA, Luciano de Andrade.
dc.contributor.referee4 LIMA FILHO, Fernando José Castor de.
dc.description.resumo A plataforma GitHub é o maior site de hospedagem de código-fonte, contendo um grande número usuários e repositórios de software. Devido a sua natureza social e colaborativa, os usuários são incentivados à contribuição nos repositórios uns dos outros. Neste contexto, é crucial compreender os fatores que representam os interesses dos usuários na plataforma, para que seja possível conceber serviços eficazes para ajudá-los na descoberta por repositórios relevantes. Sistemas de recomendação (SRs) têm sido cada vez mais populares para auxiliar os usuários na recuperação de informações e satisfação com os serviços online. SRs de repositórios na plataforma GitHub podem ser projetados para personalizar a experiência dos usuários e ajudá-los a descobrir projetos relevantes em um amplo e dinâmico espaço de busca. Entretanto, este é um cenário desafiador para recomendações. Desde a última década, métodos e técnicas de aprendizado de máquina têm sido explorados em pesquisas sobre SRs. Em geral, utilizam-se técnicas de classificação como Filtragem Colaborativa - FC e Filtragem Baseada em Conteúdo - FBC. A principal contribuição desta pesquisa é explorar o arcabouço de características presentes na plataforma GitHub e avançar neste conhecimento para recomendar projetos de interesse do usuário. Ela consiste na análise das diversas características de usuários e projetos extraídas dos dados e metadados disponíveis pela plataforma. Adicionalmente, propomos métricas geradas a partir dessas características para conhecermos das atividades dos projetos em termos de atratividade, visibilidade, medidas estatísticas e engajamento. Todas essas informações foram explicitamente modeladas através das técnicas FBC e FC (Item-KNN, Random Forest - RF, XGBoost e Máquina de Fatoração - MF), e aplicamos a recomendação dos repositórios para contribuição pelo usuário. Uma avaliação offline foi realizada considerando fatores que afetam o aprendizado da classificação, no qual sugerimos dois conjuntos de dados: amostragem balanceada e amostragem negativa, tendo um alcance de cerca de 500 mil projetos. Os experimentos implementados e executados nesta pesquisa mostram uma maior efetividade para as técnicas XGBoost e RF, em relação às técnicas Item-KNN, FBC e MF na recomendação de projetos nos aspectos de qualidade, como precisão e cobertura de projetos. Entre os resultados obtidos, XGBoost apresenta uma precisão 48% maior que Item-KNN na recomendação de projetos de interesse do usuário. Entretanto, a precisão das recomendações de projetos não alcançaram 1% das top 10 recomendações. Por fim, propomos uma nova abordagem envolvendo o aprendizado da classificação, com o objetivo de aprimorarmos as recomendações por parte das técnicas aplicadas, onde obtivemos uma precisão com cerca de 40% dos projetos no top-10 da lista de recomendação. Concluímos que um melhor entendimento sobre a plataforma GitHub, no que diz respeito às características dos usuários e seus respectivos projetos, nos permitiram caracterizar os interesses dos usuários e implementar estratégias de recomendação de repositórios que correspondam às preferências dos usuários. Os resultados foram encorajadores, o que implica que as características propostas associadas às técnicas de aprendizagem de máquina representam as preferências do usuário. Esperamos que nossas descobertas pavimentem o caminho para a criação de novos sistemas de recomendação eficientes e algoritmos de busca para ajudar os usuários do GitHub a encontrar projetos de seu interesse. pt_BR
dc.publisher.country Brasil pt_BR
dc.publisher.department Centro de Engenharia Elétrica e Informática - CEEI pt_BR
dc.publisher.program PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO pt_BR
dc.publisher.initials UFCG pt_BR
dc.subject.cnpq Ciência da Computação pt_BR
dc.title Explorando características sociais e de colaboração na recomendação de projetos no GitHub. pt_BR
dc.date.issued 2020-04-22
dc.description.abstract The GitHub platform is the largest source code hosting site, containing a large number of users and software repositories. Due to their social and collaborative nature, users are encouraged to contribute to each other’s repositories. In this context, it is crucial to understand the factors that represent the interests of users on the platform, so that it is possible to design effective services to assist them in discovering relevant repositories. Recommendation systems (SRs) have been increasingly popular to assist users in retrieving information and satisfaction with online services. SRs from repositories on the GitHub platform can be designed to personalize the user experience and help them discover relevant projects in a wide and dynamic search space. However, this is a challenging scenario for recommendations. Since the last decade, machine learning methods and techniques have been explored in research on SRs. In general, classification techniques such as Collaborative Filtering - FC and Content Based Filtering - FBC are used. The main contribution of this research is to explore the framework of features present on the GitHub platform and advance this knowledge to recommend projects of interest to the user. It consists of analyzing the various characteristics of users and projects extracted from the data and metadata available through the platform. Additionally, we propose metrics generated from these characteristics to learn about the activities of the projects in terms of attractiveness, visibility, statistics and engagement. All this information was explicitly modeled using the FBC and FC techniques (Item-KNN, Random Forest - RF, XGBoost and Factorization Machine - MF), and we applied the recommendation of the repositories for contribution by the user. An offline evaluation was carried out considering factors that affect the learning of the classification, in which we suggest two sets of data: balanced sampling and negative sampling, having a reach of about 500 thousand projects. The experiments implemented and performed in this research show greater effectiveness for the XGBoost and RF techniques, in relation to the Item-KNN, FBC and MF techniques in recommending projects in terms of quality, such as precision and project coverage. Among the results obtained, XGBoost presents an accuracy 48 % greater than Item-KNN in recommending projects of interest to the user. However, the accuracy of the project recommendations did not reach 1 % of the top 10 recommendations. Finally, we propose a new approach involving the learning of classification, with the objective of improving the recommendations by the applied techniques, where we obtained an accuracy with about 40 % of the projects in the top-10 of the recommendation list. We concluded that a better understanding of the GitHub platform, with regard to the characteristics of users and their respective projects, allowed us to characterize the interests of users and implement strategies for recommending repositories that correspond to users’ preferences. The results were encouraging, which implies that the proposed characteristics represent the user’s preferences. We hope that our findings will pave the way for the creation of new efficient recommendation systems and search algorithms to help GitHub users find projects that interest them. pt_BR
dc.identifier.uri http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/13039
dc.date.accessioned 2020-06-27T23:54:08Z
dc.date.available 2020-06-27
dc.date.available 2020-06-27T23:54:08Z
dc.type Tese pt_BR
dc.subject Engenharia de Software pt_BR
dc.subject Mineração de Dados pt_BR
dc.subject Sistemas de Recomendação pt_BR
dc.subject Aprendizagem de Máquina pt_BR
dc.subject Plataforma GitHub pt_BR
dc.subject Software Engineering pt_BR
dc.subject Data Mining pt_BR
dc.subject Recommendation Systems pt_BR
dc.subject Machine Learning pt_BR
dc.subject GitHub Platform pt_BR
dc.rights Acesso Aberto pt_BR
dc.creator CERQUEIRA, Thaciana Guimarães de Oliveira.
dc.publisher Universidade Federal de Campina Grande pt_BR
dc.language por pt_BR
dc.title.alternative Exploring social and collaborative characteristics in recommending projects on GitHub. pt_BR
dc.identifier.citation CERQUEIRA, T. G. de O. Explorando características sociais e de colaboração na recomendação de projetos no GitHub. 2020. 138 f. Tese (Doutorado em Ciência da Computação) – Programa de Pós-Graduação em Ciência da Computação, Centro de Engenharia Elétrica e Informática, Universidade Federal de Campina Grande, Paraíba, Brasil, 2020. Disponível em: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/13039 pt_BR


Arquivos deste item

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Buscar DSpace


Busca avançada

Navegar

Minha conta