Untitled
unknown
plain_text
6 months ago
1.6 kB
3
Indexable
# Q6. Define an MLP structure to simulate CNN characteristics # Using 2048 and 1024 units in the fully connected layers with relu activation model = MLPClassifier(hidden_layer_sizes=(2048, 1024), activation='relu', max_iter=250, random_state=42) # Train the MLP model on the training set model.fit(X_train, y_train) # Q7. Print out model structure print("Model structure:", model) # Q8. Calculate average training and validation metrics y_train_pred = model.predict(X_train) y_val_pred = model.predict(X_val) # Calculate average metrics train_accuracy = accuracy_score(y_train, y_train_pred) val_accuracy = accuracy_score(y_val, y_val_pred) f1 = f1_score(y_val, y_val_pred, average='macro') precision = precision_score(y_val, y_val_pred, average='macro') recall = recall_score(y_val, y_val_pred, average='macro') print(f"Training Accuracy: {train_accuracy}") print(f"Validation Accuracy: {val_accuracy}") print(f"F1 Score: {f1}") print(f"Precision: {precision}") print(f"Recall: {recall}") # Q9. Plot accuracy for training and validation sets and show confusion matrix plt.figure(figsize=(10, 4)) # Accuracy plot plt.subplot(1, 2, 1) plt.bar(['Train', 'Validation'], [train_accuracy, val_accuracy], color=['blue', 'orange']) plt.xlabel('Dataset') plt.ylabel('Accuracy') plt.title('Training and Validation Accuracy') # Confusion matrix for validation set conf_matrix = confusion_matrix(y_val, y_val_pred) plt.subplot(1, 2, 2) plt.imshow(conf_matrix, cmap='Blues') plt.colorbar() plt.xlabel('Predicted Labels') plt.ylabel('True Labels') plt.title('Confusion Matrix') plt.show()
Editor is loading...
Leave a Comment