Download: versão estável atual (4.5.1)
O MLPACK é uma biblioteca de aprendizado de máquina C ++ apenas intuitiva, rápida e apenas flexível, com ligações a outros idiomas. Deve ser um analógico de aprendizado de máquina para o Laback e pretende implementar uma ampla gama de métodos e funções de aprendizado de máquina como uma "faca do exército suíço" para pesquisadores de aprendizado de máquina.
A implementação leve C ++ da MLPack o torna ideal para implantação e também pode ser usado para prototipagem interativa via notebooks C ++ (eles podem ser vistos em ação na página inicial da MLPack).
Além de sua poderosa interface C ++, o MLPACK também fornece programas de linha de comando, ligações Python, Julia Lindings, Go Lindings e R Lindings.
Links rápidos:
O MLPACK usa um modelo de governança aberto e é patrocinado fiscalmente pela NUMFOCUS. Considere fazer uma doação dedutível para ajudar o projeto a pagar pelo tempo do desenvolvedor, serviços profissionais, viagens, workshops e uma variedade de outras necessidades.
Se você usar o MLPACK em sua pesquisa ou software, cite o MLPack usando a citação abaixo (fornecida no formato Bibtex):
@article{mlpack2023,
title = {mlpack 4: a fast, header-only C++ machine learning library},
author = {Ryan R. Curtin and Marcus Edel and Omar Shrit and
Shubham Agrawal and Suryoday Basak and James J. Balamuta and
Ryan Birmingham and Kartik Dutt and Dirk Eddelbuettel and
Rishabh Garg and Shikhar Jaiswal and Aakash Kaushik and
Sangyeon Kim and Anjishnu Mukherjee and Nanubala Gnana Sai and
Nippun Sharma and Yashwant Singh Parihar and Roshan Swain and
Conrad Sanderson},
journal = {Journal of Open Source Software},
volume = {8},
number = {82},
pages = {5026},
year = {2023},
doi = {10.21105/joss.05026},
url = {https://doi.org/10.21105/joss.05026}
}
As citações são benéficas para o crescimento e melhoria do MLPACK.
MLPack requer as seguintes dependências adicionais:
Se os cabeçalhos da biblioteca STB estiverem disponíveis, o suporte a carregamento de imagens estará disponível.
Se você estiver compilando o tatu à mão, verifique se o lapack e o blas estão ativados.
Instruções detalhadas de instalação podem ser encontradas na página de instalação do MLPack.
Depois que os cabeçalhos são instalados com make install , usando o MLPACK em um aplicativo, consiste apenas em incluí -lo. Portanto, seu programa deve incluir MLPack:
# include < mlpack.hpp > E quando você vincular, não se esqueça de vincular o Armadillo. Se o seu programa de exemplo for my_program.cpp , seu compilador é o GCC e você gostaria de compilar com o suporte do OpenMP (recomendado) e otimizações, compilar assim:
g++ -O3 -std=c++17 -o my_program my_program.cpp -larmadillo -fopenmp Observe que, se você deseja serializar (salvar ou carregar) redes neurais, adicione #define MLPACK_ENABLE_ANN_SERIALIZATION antes de incluir <mlpack.hpp> . Se você não definir MLPACK_ENABLE_ANN_SERIALIZATION e seu código serializar uma rede neural, ocorrerá um erro de compilação.
Veja também:
Makefile S correspondente.O MLPACK é uma biblioteca de modelos pesados e, se não for usado, o tempo de compilação de um projeto pode ser muito alto. Felizmente, existem várias maneiras de reduzir o tempo de compilação:
Inclua cabeçalhos individuais, como <mlpack/methods/decision_tree.hpp> , se você estiver usando apenas um componente, em vez de <mlpack.hpp> . Isso reduz a quantidade de trabalho que o compilador precisa fazer.
Use apenas a definição de MLPACK_ENABLE_ANN_SERIALIZATION se estiver serializando redes neurais em seu código. Quando essa definição é ativada, o tempo de compilação aumentará significativamente, pois o compilador deve gerar código para todos os tipos possíveis de camada. (A grande quantidade de sobrecarga de compilação extra é por que isso não é ativado por padrão.)
Se você estiver usando o MLPACK em vários arquivos .cpp, considere o uso de extern templates para que o compilador apenas instancie cada modelo uma vez; Adicione um modelo explícito de instanciação para cada tipo de modelo MLPack que você deseja usar em um arquivo .cpp e use definições extern em outros lugares para informar o compilador que ele existe em um arquivo diferente.
Outras estratégias também existem, como cabeçalhos pré -compilados, opções de compilador, ccache e outros.
Consulte a seção de instruções de instalação.
Mais documentação está disponível para usuários e desenvolvedores.
Para aprender sobre os objetivos de desenvolvimento do MLPACK no futuro a curto e médio prazo, consulte o documento da visão.
Se você tiver problemas, encontrar um bug ou precisar de ajuda, tente visitar a página de ajuda do MLPack ou MLPack no Github. Como alternativa, a ajuda do MLPACK pode ser encontrada na matriz em #mlpack ; Veja também a página da comunidade.