O conjunto de dados inicial necessário para treinar algoritmos de aprendizado de máquina é conhecido como dados de treinamento. Os algoritmos de aprendizado de máquina são instruídos a fazer previsões ou executar uma tarefa usando conjuntos de dados de treinamento. O conjunto de dados de teste avalia quão bem os dados de treinamento são executados. Sklearn é um kit de ferramentas de aprendizado de máquina baseado em Python que nos permite dividir nossos dados em amostras de trem e teste usando o trens_test_split () método. A técnica TRAN_TEST_SPLIT () é discutida neste artigo.
O que é o teste de trem dividido
Os modelos de aprendizado de máquina são treinados usando a técnica de divisão do teste de trem. Estabelece com que eficácia os algoritmos de aprendizado de máquina funcionam. Pode ser empregado para resolver problemas envolvendo regressão e classificação. O conjunto de dados de treinamento de aprendizado de máquina é a divisão do teste de trem. É composto de uma quantidade significativa de dados. Em Python, o Scikit Learn Package tem um módulo chamado Seleção de Modelo da qual você pode importar “Teste de trem dividido”. Você pode fornecer a amostra de tamanho e tamanho de teste nesta função usando tamanhos de trem e teste. Não existe a porcentagem de divisão perfeita. Você deve selecionar uma porcentagem de divisão que se adapte aos objetivos do seu projeto.
O modelo deve corresponder com precisão aos dados fornecidos usando entradas e saídas conhecidos. O programa é então usado para fazer previsões no restante do subconjunto de dados para aprender com ele. Sem conhecer os valores de entrada e saída antecipados, isso pode ser usado para gerar previsões sobre conjuntos de dados no futuro. A função Train_test_split () no kit de ferramentas de aprendizado de máquina Scikit-Learn em Python pode ser usado para implementar a técnica de avaliação de teste de teste de trem. Ele aceita o conjunto de dados como entrada e o divide em dois subconjuntos como saída.
Conjunto de teste
O conjunto de testes é uma seleção de instâncias extraídas do conjunto de dados para avaliar a eficácia do modelo. Esses dados são mantidos separados dos dados de treinamento e ajuste. Portanto, não pode ser usado durante os estágios de treinamento ou ajuste do processo de aprendizado. Isso apenas afetaria o desempenho, influenciando o modelo aos dados.
Conjunto de treinamento
Os conjuntos de treinamento e teste devem ser mantidos separados. A fase de treinamento consome o conjunto de treinamento para identificar valores de parâmetros que minimizam uma função de custo específica em todo o conjunto de treinamento. Uma vez treinado no conjunto de dados de treinamento, o modelo será avaliado no conjunto de dados de teste. O conjunto de dados de teste não deve ser muito menor que o conjunto de dados de treinamento.
Como treinar dados
Um modelo é construído usando dados específicos, referidos como dados de "treinamento". Em um modelo linear simples, o modelo formaliza as relações entre variáveis, produzindo a equação matemática para uma linha. O tipo de modelo determina como é construído. Por exemplo, uma regressão difere de outros métodos.
É importante distinguir dados de treinamento de outros dados, pois você costuma dividir seu conjunto de dados inicial em duas partes: treinamento de dados para criar modelos e testar dados para avaliá -los. Normalmente, você faria isso fazendo com que seu modelo preveja valores nos dados de teste (com base nas variáveis no modelo) e comparando -as com os valores reais.
O objetivo de dividir nossos dados
Excesso de ajuste e subjacência são dois problemas significativos que enfrentamos ao testar nosso conjunto de dados.
Construir um modelo baseado em dados que não se dever.
O excesso de ajuste é quando um modelo se adapta muito aos dados históricos. Torna -se malsucedido no futuro. Underfitting é o ato de criar um modelo que se adapta aos dados passados tão vagamente que é inútil no futuro.
Implementando o Train_test_split () em Sklearn
# importar os métodos e bibliotecas necessáriosSaída
Os recursos são
[[0 1 2 3 4]Os rótulos -alvo são
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 18, 19]Dividindo os dados
X_train, x_test, y_train, y_test = trens_test_split (x, y, test_size = 0.33, random_state = 42)Saída
Os recursos de treinamento são
[[15 16 17 18 19]Os rótulos de treinamento são
[3, 18, 16, 13, 2, 9, 19, 4, 12, 7, 10, 14, 6]Os recursos de teste são
[[0 1 2 3 4]Os rótulos de teste são
[0, 17, 15, 1, 8, 5, 11]Conclusão
Discutimos o método de Sklearn do TRANS_TEST_SPLIT (), que é usado para dividir os dados iniciais em amostras de trem e teste. Isso é necessário para avaliar o desempenho do nosso modelo e, finalmente, melhorá -lo. Também vimos como o trem e as amostras de teste são diferentes um do outro. Finalmente, implementamos o método TRAN_TEST_SPLIT () em Sklearn.