Aprendizado de Maquina com scikit -learn 0
  • AI Chat
  • Code
  • Report
  • Beta
    Spinner

    Ajuste do KNN num modelo de classificação - nivel introdutório

    O KNN(K Nearest Neighbour - K vizinhos mais próximos). O objetivo é encontrar os k pontos mais próximos(vizinhos).

    A ideia do KNN, é prever o rótulo de qualquer ponto de dados observando os k mais próximos, por exemplo, três pontos de dados rotulados mais próximos e fazendo com que eles votem em qual rótulo a observação não rotulada deve ter. O KNN usa a votação por maioria, que faz previsões com base no rótulo que a maioria dos vizinhos mais próximos possui.

    Para realizar a tarefa é necessário transformar as colunas em matrizes numpy, pois é assim que o aklearn reconhece tanto as variaveus preditoras quanto a variavel alvo

    # Imporrtando os pacotes
    import numpy as np
    import pandas as pd
    from sklearn.neighbors import KNeighborsClassifier #importando knnn para modelos de classificação

    importe os dados:

    churn_df = pd.read_csv("telecom_churn_clean.csv", index_col=0)
    churn_df.head()

    Crie arrays para as variaveis preditoras e a variável alvo

    X = churn_df[['account_length', 'customer_service_calls']].values
    y = churn_df['churn'].values

    Instancie um KNeighborsClassifier com o nome knn com 6 vizinhos.

    knn = KNeighborsClassifier(n_neighbors= 6)

    Ajuste o classificador aos dados usando o método .fit()

    knn.fit(X,y)

    Agora que seu classificador KNN foi ajustado aos dados, ele pode ser usado para prever os rótulos de novos pontos de dados. Todos os dados disponíveis foram usados para treinamento, porém, felizmente, há novas observações disponíveis. Estes foram pré-carregados para você como X_new.

    X_new = np.array([[30.0, 17.5],
                      [107.0, 24.1],
                      [213.0, 10.9]])