- Notas de Versão
- Introdução
- Notificações
- Projetos
- Conjuntos de dados
- Rotulagem de Dados
- Pacotes de ML
- Pacotes para uso imediato
- Pipelines
- Habilidades de ML
- Logs de ML
- Document UnderstandingTM no AI Center
- API do AI Center
- Licenciamento
- Modelos de soluções de IA
- Como fazer
- Guia básico de solução de problemas
AI Center
Regressão do XGBoost do TPOT
Pacotes do SO > Dados tabulares > TPOTXGBoostRegression
Esse modelo é um modelo de regressão de dados tabulares genéricos (apenas valores numéricos) que precisa ser retreinado antes de ser usado para previsões. Ele depende do TPOT para encontrar automaticamente o melhor modelo.
TPOT é uma ferramenta de machine learning python automatizada, que otimiza os pipelines de machine learning usando a programação genética. O TPOT automatiza a parte mais tediosa do aprendizado de máquina, ao explorar de forma inteligente milhares de pipelines possíveis para encontrar o melhor para seus dados. Após o TPOT terminar de pesquisar (ou você se cansar de esperar), ele fornece o código Python para o melhor pipeline que encontrou, para que seja possível improvisar com o pipeline de lá. O TPOT é construído em cima do scikit-learn e, portanto, todo o código que ele gera deve parecer familiar para usuários do scikit-learn.
Essa versão do TPOT usa apenas o XGBoost e o conjunto padrão de métodos de pré-processamento para otimizar um pipeline de aprendizado de máquina.
Detalhes do modelo
Recursos usados pelo modelo para fazer previsões. Por exemplo: { “Recurso1”: 12, “Recurso2”: 222, ..., “RecursoN”: 110}
JSON com a lista de previsões
Exemplo:
{ "predictions" : "[12, 12, 2, 354, 12, 2] }
{ "predictions" : "[12, 12, 2, 354, 12, 2] }
Pipelines
Todos os três tipos de pipelines (Treinamento completo, Treinamento e Avaliação) são suportados por esse pacote.
Esse pacote de ML procurará arquivos csv em seu conjunto de dados (não em subdiretórios)
Os arquivos csv precisam seguir essas duas regras:
- a primeira linha dos dados deve conter os nomes do cabeçalho/coluna.
- todas as colunas devem ser numéricas (inteiro, flutuante). O modelo não é capaz de executar a codificação dos recursos; entreentanto, ele é capaz de realizar a codificação de destino. Se a codificação de destino for executada pelo modelo, no tempo da previsão, o modelo também retornará o rótulo da variável de destino.
- max_time_mins: tempo para executar o pipeline (em minutos). Quanto maior o tempo do treinamento, melhores as chances de o TPOT encontrar um bom modelo. (padrão: 2)
- target_column: nome da coluna de destino (padrão: "target")
- scoring: o TPOT usa o sklearn.model_selection.cross_val_score para avaliar pipelines e, dessa forma, oferece o mesmo suporte para funções de pontuação (padrão: "accuracy"). Usa métricas de pontuação padrão do scikit-learn (https://scikit-learn.org/stable/modules/model_evaluation.html)
- keep_training: as execuções típicas do TPOT demoram de horas a dias (a menos que seja um conjunto de dados pequeno), mas é possível interromper a execução no meio e ver os melhores resultados até o momento. Se o keep_training estiver definido como True, o TPOT continuará o treinamento de onde o deixou
target
), é necessário atualizar a variável de ambiente target_column manualmente. Você pode fazer isso na janela Criar nova execução de pipeline clicando no botão + Adicionar novo na seção Inserir parâmetros. No campo Variável de ambiente adicione a variável (target_column) e, no campo Valor, adicione o nome da coluna do seu arquivo. Quando terminar, clique no símbolo.
O TPOT exporta o código Python correspondente para o pipeline otimizado para um arquivo python, chamado "TPOT_pipeline.py". Após o código terminar a execução, "TPOT_pipeline.py" conterá o código Python para o pipeline otimizado.
Papel
O modelo é baseado em duas publicações:
- "Scaling tree-based automated machine learning to biomedical big data with a feature set selector." de Trang T. Le, Weixuan Fu and Jason H. Moore (2020)
- "Evaluation of a Tree-based Pipeline Optimization Tool for Automating Data Science." de Randal S. Olson, Nathan Bartley, Ryan J. Urbanowicz, e Jason H. Moore