You are on page 1of 2

12/3/23, 9:53 AM 2020BIT051 assignment no7.

ipynb - Colaboratory

pip install scikit-learn-extra

Collecting scikit-learn-extra
Downloading scikit_learn_extra-0.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.0 MB)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.0/2.0 MB 18.3 MB/s eta 0:00:00
Requirement already satisfied: numpy>=1.13.3 in /usr/local/lib/python3.10/dist-packages (from scikit-learn-extra) (1.23.5)
Requirement already satisfied: scipy>=0.19.1 in /usr/local/lib/python3.10/dist-packages (from scikit-learn-extra) (1.11.4)
Requirement already satisfied: scikit-learn>=0.23.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn-extra) (1.2.2)
Requirement already satisfied: joblib>=1.1.1 in /usr/local/lib/python3.10/dist-packages (from scikit-learn>=0.23.0->scikit-learn-extra)
Requirement already satisfied: threadpoolctl>=2.0.0 in /usr/local/lib/python3.10/dist-packages (from scikit-learn>=0.23.0->scikit-learn-
Installing collected packages: scikit-learn-extra
Successfully installed scikit-learn-extra-0.3.0

import numpy as np
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.svm import SVC
from sklearn.metrics import accuracy_score
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Conv1D, MaxPooling1D, Flatten

import matplotlib.pyplot as plt


%matplotlib inline
from google.colab import files
upload= files.upload()
import pandas as pd
import numpy as np

Choose Files Social_Network_ads.csv


Social_Network_ads.csv(text/csv) - 10928 bytes, last modified: 12/3/2023 - 100% done
Saving Social_Network_ads.csv to Social_Network_ads.csv

sdata=pd.read_csv("Social_Network_ads.csv")
sdata.head()

User ID Gender Age EstimatedSalary Purchased

0 15624510 Male 19 19000 0

1 15810944 Male 35 20000 0

2 15668575 Female 26 43000 0

3 15603246 Female 27 57000 0

4 15804002 Male 19 76000 0

sdata['Gender'] = sdata['Gender'].map({'Male': 0, 'Female': 1})

X = sdata[['Gender', 'Age', 'EstimatedSalary']]


y = sdata['Purchased']

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

svm_model = SVC(kernel='linear')
svm_model.fit(X_train, y_train)

▾ SVC
SVC(kernel='linear')

svm_predictions = svm_model.predict(X_test)
svm_accuracy = accuracy_score(y_test, svm_predictions)

X_train_cnn = np.array(X_train).reshape(-1, 3, 1)
X_test_cnn = np.array(X_test).reshape(-1, 3, 1)

https://colab.research.google.com/drive/1Z-FgsTR1AzedRHWS2VuraSNxMKHKU6Di#scrollTo=_bU4Wy255XLT&printMode=true 1/2
12/3/23, 9:53 AM 2020BIT051 assignment no7.ipynb - Colaboratory

cnn_model = Sequential()
cnn_model.add(Conv1D(32, kernel_size=3, activation='relu', input_shape=(3, 1)))
cnn_model.add(MaxPooling1D(pool_size=1))
cnn_model.add(Flatten())
cnn_model.add(Dense(1, activation='sigmoid'))

cnn_model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

cnn_model.fit(X_train_cnn, y_train, epochs=10, batch_size=32)

Epoch 1/10
10/10 [==============================] - 1s 3ms/step - loss: 104.9569 - accuracy: 0.4406
Epoch 2/10
10/10 [==============================] - 0s 2ms/step - loss: 39.2954 - accuracy: 0.5219
Epoch 3/10
10/10 [==============================] - 0s 2ms/step - loss: 8.6868 - accuracy: 0.5219
Epoch 4/10
10/10 [==============================] - 0s 2ms/step - loss: 14.2914 - accuracy: 0.4250
Epoch 5/10
10/10 [==============================] - 0s 2ms/step - loss: 10.4141 - accuracy: 0.5906
Epoch 6/10
10/10 [==============================] - 0s 2ms/step - loss: 10.3503 - accuracy: 0.4844
Epoch 7/10
10/10 [==============================] - 0s 2ms/step - loss: 24.0980 - accuracy: 0.5406
Epoch 8/10
10/10 [==============================] - 0s 3ms/step - loss: 22.2819 - accuracy: 0.4656
Epoch 9/10
10/10 [==============================] - 0s 2ms/step - loss: 14.6380 - accuracy: 0.5094
Epoch 10/10
10/10 [==============================] - 0s 2ms/step - loss: 14.2777 - accuracy: 0.5031
<keras.src.callbacks.History at 0x7a2d08ad6c80>

cnn_loss, cnn_accuracy = cnn_model.evaluate(X_test_cnn, y_test)

3/3 [==============================] - 0s 5ms/step - loss: 17.0715 - accuracy: 0.6500

print(f"SVM Accuracy: {svm_accuracy}")


print(f"CNN Accuracy: {cnn_accuracy}")

SVM Accuracy: 0.8375


CNN Accuracy: 0.6499999761581421

https://colab.research.google.com/drive/1Z-FgsTR1AzedRHWS2VuraSNxMKHKU6Di#scrollTo=_bU4Wy255XLT&printMode=true 2/2

You might also like