List

Bunga Iris

Iris adalah keluarga dalam bunga yang mengandung beberapa spesies seperti iris.setosa, iris.versicolor, iris.virginica, dll. Ketiga bunga ini sering digunakan sebagai dataset dalam klasifikasi dan mencoba algoritma Machine Learning

Dalam latihan ini, Dataset Iris diambil dari website Kaggle. Link download sebagai berikut [ Download ].

Sekilas Mengenai Iris Dataset

  1. Masing-masing spesies terdapat 50 data (setosa, versicolor, virginica) dengan total data 150
  2. Tidak ada nilai 0 dalam dataset
  3. Tiap-tiap data diamati 4 feature, (sepal length, sepal width, petal length, petal width)

Ikutilah beberapa langkah berikut ini

  1. Download dan simpan dalam direktori D:\Project\Latihat\Dataset.
  2. Install paket Seaborn dan Pandas. Seaborn yang berfungsi untuk visualisasi data dalam python. Gunakan PIP untuk instalasi seaborn
pip install seaborn pip install pandas

Buatlah program menggunakan text editor, simpan dalam nama Iris_1.py

Meload Data Iris

import numpy as np import pandas as pd import seaborn as sns sns.set_palette('husl') import matplotlib.pyplot as plt %matplotlib inline from sklearn import metrics from sklearn import model_selection, preprocessing,linear_model, naive_bayes, metrics, svm from sklearn.neighbors import KNeighborsClassifier from sklearn.linear_model import LogisticRegression from sklearn.model_selection import train_test_split data = pd.read_csv('Dataset/Iris.csv')

Preview data

Untuk melihat sekilas / preview dataset Iris, gunakan perintah berikut ini:

data.head() # Visualisasi Data dengan sns tmp = data.drop('Id', axis=1) g = sns.pairplot(tmp, hue='Species', markers='+') plt.show()

Split Data

X = data.drop(['Id', 'Species'], axis=1) y = data['Species'] X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

Melatih / Train SVM

# Deklarasikan SVM SVM = svm.SVC(C=1.0, kernel='linear', degree=3, gamma='auto') SVM.fit(train_x, train_y) print("X_train shape: {}".format(X_train.shape)) print("y_train shape: {}".format(y_train.shape)) # Same for the test samples print("X_test shape: {}".format(X_test.shape)) print("y_test shape: {}".format(y_test.shape)) X_new = np.array([[5, 2.9, 1, 0.2]]) print("X_new.shape: {}".format(X_new.shape))

Pengujian dengan SVM

# Prediksi predictions_SVM = SVM.predict(X_new) print("Prediction dengan SVM: {}".format(predictions_SVM)) # Melihat Skor Akurasi y_pred = SVM.predict(X_test) print("Test set predictions:\n {}".format(y_pred)) print("Test set score (np.mean): {:.2f}".format(np.mean(y_pred == y_test))) print("Test set score (SVM.score): {:.2f}".format(SVM.score(X_test, y_test)))