{"id":26681400,"url":"https://github.com/matheusotenio/book_recommendationengine_knn","last_synced_at":"2025-03-26T07:15:45.179Z","repository":{"id":280313618,"uuid":"941592623","full_name":"MatheusOtenio/Book_RecommendationEngine_KNN","owner":"MatheusOtenio","description":"freeCodeCamp - Book Recommendation Algorithm","archived":false,"fork":false,"pushed_at":"2025-03-02T17:00:15.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-02T17:34:48.605Z","etag":null,"topics":["freecodecamp-project","knn","machine-learning","recomendation-algorithm","unsupervised-learning"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MatheusOtenio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-02T16:52:55.000Z","updated_at":"2025-03-02T17:00:56.000Z","dependencies_parsed_at":"2025-03-02T17:34:50.325Z","dependency_job_id":"db180090-d57c-4fc8-a518-15f781eff474","html_url":"https://github.com/MatheusOtenio/Book_RecommendationEngine_KNN","commit_stats":null,"previous_names":["matheusotenio/book_recommendationengine_knn"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatheusOtenio%2FBook_RecommendationEngine_KNN","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatheusOtenio%2FBook_RecommendationEngine_KNN/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatheusOtenio%2FBook_RecommendationEngine_KNN/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MatheusOtenio%2FBook_RecommendationEngine_KNN/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MatheusOtenio","download_url":"https://codeload.github.com/MatheusOtenio/Book_RecommendationEngine_KNN/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245605707,"owners_count":20643030,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["freecodecamp-project","knn","machine-learning","recomendation-algorithm","unsupervised-learning"],"created_at":"2025-03-26T07:15:44.621Z","updated_at":"2025-03-26T07:15:45.135Z","avatar_url":"https://github.com/MatheusOtenio.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Book Recommendation Algorithm\n\nEste projeto foi desenvolvido como parte do currículo \"Machine Learning with Python\" da freeCodeCamp, com o objetivo de criar um algoritmo de recomendação de livros utilizando o modelo **K-Nearest Neighbors (K-NN)**. O modelo foi construído utilizando **Machine Learning** e a biblioteca **scikit-learn**.\n\nO modelo foi treinado utilizando o conjunto de dados **Book-Crossings**, que contém 1.1 milhões de classificações (de 1 a 10) de 270.000 livros por 90.000 usuários. Após importar e limpar os dados, utilizei o algoritmo **NearestNeighbors** da biblioteca **sklearn.neighbors** para desenvolver um modelo que recomenda livros semelhantes a um livro fornecido como entrada.\n\nA função **get_recommends** foi criada para retornar os 5 livros mais semelhantes com base na distância entre eles. Ao passar um título de livro como argumento, a função retorna uma lista com o livro e os 5 livros recomendados, juntamente com as distâncias de similaridade.\n\n### Exemplo de execução:\n\nA função **get_recommends(\"The Queen of the Damned (Vampire Chronicles (Paperback))\")** retorna:\n\n```python\n[\n  'The Queen of the Damned (Vampire Chronicles (Paperback))',\n  [\n    ['Catch 22', 0.793983519077301], \n    ['The Witching Hour (Lives of the Mayfair Witches)', 0.7448656558990479], \n    ['Interview with the Vampire', 0.7345068454742432],\n    ['The Tale of the Body Thief (Vampire Chronicles (Paperback))', 0.5376338362693787],\n    ['The Vampire Lestat (Vampire Chronicles, Book II)', 0.5178412199020386]\n  ]\n]\n```\n\n### Pré-processamento dos dados:\nPara garantir uma análise significativa, foram removidos os usuários com menos de 200 avaliações e livros com menos de 100 avaliações.\n\n## Resultado\n\nNo meu projeto, obtive um modelo funcional que recomenda livros semelhantes com base na distância de similaridade, criando uma experiência personalizada para os usuários.\n\n## Referências\n\n- [freeCodeCamp](https://github.com/freeCodeCamp)  \n- [zakaria-narjis](https://github.com/zakaria-narjis)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatheusotenio%2Fbook_recommendationengine_knn","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatheusotenio%2Fbook_recommendationengine_knn","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatheusotenio%2Fbook_recommendationengine_knn/lists"}