Como preparar os dados para análise preditiva

Quando você está aprendendo uma nova linguagem de programação, é costume para escrever o # 147 Olá mundo # 148- programa. Para aprendizado de máquina e análise preditiva, criando um modelo para classificar o conjunto de dados Iris é sua # 147 Olá mundo # 148- programa equivalente. Este é um exemplo bastante simples, mas é muito eficaz em ensinar os princípios de aprendizado de máquina e análise preditiva.

Como obter o conjunto de dados de amostra

Para criar o nosso modelo preditivo, você precisa baixar a amostra Iris conjunto de dados. Este conjunto de dados está disponível gratuitamente a partir de muitas fontes, especialmente em instituições acadêmicas que têm departamentos de aprendizado de máquina. Felizmente, o pessoal da foram bom o suficiente para incluir alguns conjuntos de dados de amostra e funções de carregamento de dados, juntamente com sua pacote. Para efeitos destes exemplos, você só precisa executar um par de linhas simples de código para carregar os dados.

Como rotular seus dados

Aqui está uma observação e suas características de cada classe do conjunto de dados Iris Flower.

sepal Comprimentosepal LarguraComprimento pétalapétala LarguraClasse Alvo / etiqueta
5.13,51.40,2Setosa (0)
73.24.71.4Versicolor (1)
6.33.362.5Virginica (2)

O conjunto de dados Iris Flower é um conjunto de dados multivariada real das três classes da flor Iris (Iris setosa, Iris virginica, e Iris versicolor) Introduzido por Ronald Fisher em seu artigo 1936, Nº 147-A Utilização de múltiplas medições em taxonômica Problemas. # 148- Este conjunto de dados é mais conhecido por sua ampla utilização na academia para a aprendizagem e estatísticas máquina.

O conjunto de dados consiste em 150 casos no total, com 50 casos a partir de cada uma das 3 classes da flor da íris. A amostra tem 4 características (também comumente chamados atributos), Que são o comprimento e largura dos sépalas e pétalas.

A parte interessante deste conjunto de dados é que as três classes são um pouco linearmente separáveis. o setosa classe pode ser separada das outras duas classes de desenho por uma linha recta no gráfico entre eles. o virginica e versicolor classes não podem ser perfeitamente separadas usando uma linha reta - embora seja perto. Isto faz com que um conjunto de dados candidato perfeito para fazer análise de classificação, mas não tão bom para o agrupamento análise.

Os dados da amostra já foi rotulado. A coluna da direita (Label) acima mostra os nomes de cada classe da flor Iris. O nome de classe é denominada rótulo ou um alvo- é geralmente atribuído a uma variável chamada y. É basicamente o resultado ou o resultado do que está a ser predito.

Na estatística e modelagem, é muitas vezes referido como o variável dependente. Depende das entradas que correspondem a Sépala comprimento e largura e a pétala comprimento e largura.

Você também pode querer saber o que é diferente sobre o scikit pré-processado íris conjunto de dados, em comparação com a base de dados original. Para descobrir isso, você precisa para obter o arquivo de dados original. Você pode fazer uma pesquisa no Google por dataset iris e baixá-lo ou vê-lo a partir de qualquer uma das instituições acadêmicas.

O resultado, que geralmente aparece em primeiro lugar é a Universidade da Califórnia Irvine do (UCI) repositório de aprendizado de máquina de conjuntos de dados. O conjunto de dados da íris no seu estado original a partir do repositório de aprendizagem de máquina UCI pode ser encontrado no website UCI.

Se você baixá-lo, você deve ser capaz de vê-lo com qualquer editor de texto. Ao visualizar os dados no arquivo, você vai notar que há cinco colunas em cada linha. As primeiras quatro colunas são as medições (referidas como o características) E a última coluna é o rótulo. O rótulo difere entre o original e scikit versões do conjunto de dados Iris.

Uma outra diferença é a primeira linha do ficheiro de dados. Ele inclui uma linha de cabeçalho usado pela scikit função de carregamento de dados. Ele não tem nenhum efeito sobre os próprios algoritmos.

Normalizar recursos para números em vez de mantê-los como texto torna mais fácil para os algoritmos de processo - e é muito mais eficiente para a memória. Isto é especialmente evidente se você correr muito grandes conjuntos de dados com muitos recursos - que é frequentemente o caso em cenários reais.

Aqui está dados de amostra de ambos os arquivos. Todas as colunas de dados são os mesmos, exceto para Col5. Observe que scikit tem nomes de classe com Labels- numérica do arquivo original tem rótulos de texto.

Fontecol1col2col3Col4Col5
scikit5.13,51.40,20
original5.13,51.40,2Iris-setosa
scikit73.24.71.41
original73.24.71.4Iris-versicolor
scikit6.33.362.52
original6.33.362.5Iris-virginica

menu