09-06-2022, 07:43 PM 
		
	
	
		Hola.
Me surge un problema al adaptar el código de la predicción del Churn Modelling.
He cambiado el esquema del OneHotEncoder quitando los parámetros, pero me da error en la línea de ajuste del modelo:
classifier.fit(X_train, y_train, batch_size = 10, epochs = 50)
Te dejo Google Colab para que puedas ver el error: https://colab.research.google.com/drive/...sp=sharing
Muchisimas gracias
	
	
	
	
	
Me surge un problema al adaptar el código de la predicción del Churn Modelling.
He cambiado el esquema del OneHotEncoder quitando los parámetros, pero me da error en la línea de ajuste del modelo:
classifier.fit(X_train, y_train, batch_size = 10, epochs = 50)
Te dejo Google Colab para que puedas ver el error: https://colab.research.google.com/drive/...sp=sharing
Muchisimas gracias
Código:
import numpy as np 
import matplotlib.pyplot as plt
import pandas as pd
# Importar la base de datos
dataset = pd.read_csv('https://raw.githubusercontent.com/AaronWard/Churn-Modelling-Artificial-Neural-Network/master/Churn_Modelling.csv');
X = dataset.iloc[:, 3:13].values
Y = dataset.iloc[:, 13].values
from sklearn.preprocessing import LabelEncoder, OneHotEncoder
labelencoder_X_1 = LabelEncoder()
X[:,1] = labelencoder_X_1.fit_transform(X[:,1])
labelencoder_X_2 = LabelEncoder()
X[:, 2] = labelencoder_X_2.fit_transform(X[:, 2])
onehotencoder = OneHotEncoder()
X = onehotencoder.fit_transform(X).toarray()
X = X[:, 1:]
#Dividir el dataset en Training set y Test Set
from sklearn.model_selection import train_test_split
X_train, X_test, y_train, y_test = train_test_split(X, Y, test_size = 0.2)
# Feature Scaling
from sklearn.preprocessing import StandardScaler
sc = StandardScaler() 
X_train = sc.fit_transform(X_train) 
X_test = sc.transform(X_test) 
# Importar la libreria de Keras y sus paquetes 
import keras 
from keras.models import Sequential 
from keras.layers import Dense 
#Inicializar la red neuronal 
classifier = Sequential() 
classifier.add(Dense(units = 6, kernel_initializer = 'uniform', 
activation = 'relu', input_dim = 11)) 
classifier.add(Dense(units = 6, kernel_initializer = 'uniform', 
activation = 'relu')) 
classifier.add(Dense(units = 1, kernel_initializer = 'uniform', 
activation = 'sigmoid')) 
# Compilar red neuronal 
classifier.compile(optimizer = 'adam', loss = 'binary_crossentropy', metrics = ['accuracy']) 
classifier.fit(X_train, y_train, batch_size = 10, epochs = 50) 
# Predecir los resultados del Test set 
y_pred = classifier.predict(X_test) 
y_pred = (y_pred > 0.5) 
new_prediction = classifier.predict(sc.transform 
(np.array([[0.0, 0, 500, 1, 40, 3, 50000, 2, 1, 1, 40000]]))) 
new_prediction = (new_prediction > 0.5) 
from sklearn.metrics import confusion_matrix 
cm = confusion_matrix(y_test, y_pred) 
print('cm: ', cm) 
print('New prediction: ', new_prediction)
 
 

