Please use this identifier to cite or link to this item: http://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/13039
Full metadata record
DC FieldValueLanguage
dc.creator.IDOLIVEIRA, T. G.pt_BR
dc.creator.Latteshttp://lattes.cnpq.br/2170938506941690pt_BR
dc.contributor.advisor1RAMALHO, Franklin de Souza.-
dc.contributor.advisor1IDRamalho, F.pt_BR
dc.contributor.advisor1Latteshttp://lattes.cnpq.br/2469816352786812pt_BR
dc.contributor.advisor2MARINHO, Leandro Balby.-
dc.contributor.advisor2IDMARINHO, L. B.pt_BR
dc.contributor.advisor2Latteshttp://lattes.cnpq.br/3728312501032061pt_BR
dc.contributor.referee1CAMPELO, Cláudio Elízio Calazans.-
dc.contributor.referee2MONTEIRO, João Arthur Brunet.-
dc.contributor.referee3BARBOSA, Luciano de Andrade.-
dc.contributor.referee4LIMA FILHO, Fernando José Castor de.-
dc.description.resumoA 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.countryBrasilpt_BR
dc.publisher.departmentCentro de Engenharia Elétrica e Informática - CEEIpt_BR
dc.publisher.programPÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃOpt_BR
dc.publisher.initialsUFCGpt_BR
dc.subject.cnpqCiência da Computaçãopt_BR
dc.titleExplorando características sociais e de colaboração na recomendação de projetos no GitHub.pt_BR
dc.date.issued2020-04-22-
dc.description.abstractThe 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.urihttp://dspace.sti.ufcg.edu.br:8080/jspui/handle/riufcg/13039-
dc.date.accessioned2020-06-27T23:54:08Z-
dc.date.available2020-06-27-
dc.date.available2020-06-27T23:54:08Z-
dc.typeTesept_BR
dc.subjectEngenharia de Softwarept_BR
dc.subjectMineração de Dadospt_BR
dc.subjectSistemas de Recomendaçãopt_BR
dc.subjectAprendizagem de Máquinapt_BR
dc.subjectPlataforma GitHubpt_BR
dc.subjectSoftware Engineeringpt_BR
dc.subjectData Miningpt_BR
dc.subjectRecommendation Systemspt_BR
dc.subjectMachine Learningpt_BR
dc.subjectGitHub Platformpt_BR
dc.rightsAcesso Abertopt_BR
dc.creatorCERQUEIRA, Thaciana Guimarães de Oliveira.-
dc.publisherUniversidade Federal de Campina Grandept_BR
dc.languageporpt_BR
dc.title.alternativeExploring social and collaborative characteristics in recommending projects on GitHub.pt_BR
dc.identifier.citationCERQUEIRA, 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/13039pt_BR
Appears in Collections:Doutorado em Ciência da Computação.

Files in This Item:
File Description SizeFormat 
THACIANA GUIMARÃES DE OLIVEIRA CERQUEIRA - TESE (PPGCC) 2020.pdfThaciana Guimarães de Oliveira Cerqueira - Tese (PPGCC) 2020.2.61 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.