Hands-On Lab: Building a Machine Learning Model with Python

Are you ready to dive into the exciting world of machine learning? Do you want to learn how to build a machine learning model using Python? If so, you've come to the right place! In this hands-on lab, we'll guide you through the process of building a machine learning model step by step.


Machine learning is a subfield of artificial intelligence that focuses on the development of algorithms that can learn from and make predictions on data. Machine learning models are used in a variety of applications, from image recognition to natural language processing to predictive analytics.

Python is a popular programming language for machine learning due to its simplicity, readability, and vast array of libraries and frameworks. In this lab, we'll be using Python and the scikit-learn library to build a machine learning model.


Before we get started, there are a few prerequisites you'll need to have in place:

The Dataset

The first step in building a machine learning model is to gather and prepare the data. For this lab, we'll be using the famous Iris dataset, which contains measurements of the sepal length, sepal width, petal length, and petal width for 150 iris flowers. The dataset is commonly used for classification tasks in machine learning.

To load the dataset into our Python program, we'll use the scikit-learn library's built-in load_iris() function:

from sklearn.datasets import load_iris

iris = load_iris()

Now that we have the dataset loaded into our program, let's take a closer look at it:


This will print out a description of the dataset, including the names of the features and the target variable.

Preprocessing the Data

Before we can use the dataset to train a machine learning model, we need to preprocess the data. This involves splitting the dataset into training and testing sets, scaling the features, and encoding the target variable.

To split the dataset into training and testing sets, we'll use the train_test_split() function from the scikit-learn library:

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(iris.data, iris.target, test_size=0.2, random_state=42)

This will split the dataset into 80% training data and 20% testing data, with a random state of 42 for reproducibility.

Next, we'll scale the features using the StandardScaler() function from the scikit-learn library:

from sklearn.preprocessing import StandardScaler

scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)

This will standardize the features so that they have a mean of 0 and a standard deviation of 1.

Finally, we'll encode the target variable using the LabelEncoder() function from the scikit-learn library:

from sklearn.preprocessing import LabelEncoder

encoder = LabelEncoder()
y_train = encoder.fit_transform(y_train)
y_test = encoder.transform(y_test)

This will convert the target variable from categorical labels (0, 1, 2) to numerical labels (0, 1, 2).

Building the Model

Now that we have preprocessed the data, we can start building our machine learning model. For this lab, we'll be using the K-Nearest Neighbors (KNN) algorithm, which is a simple yet powerful classification algorithm.

To build the KNN model, we'll use the KNeighborsClassifier() function from the scikit-learn library:

from sklearn.neighbors import KNeighborsClassifier

knn = KNeighborsClassifier(n_neighbors=3)
knn.fit(X_train, y_train)

This will create a KNN model with 3 neighbors and fit it to the training data.

Evaluating the Model

Now that we have built the model, we need to evaluate its performance on the testing data. To do this, we'll use the accuracy_score() function from the scikit-learn library:

from sklearn.metrics import accuracy_score

y_pred = knn.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print("Accuracy:", accuracy)

This will print out the accuracy of the model on the testing data.


Congratulations, you have successfully built a machine learning model using Python and the scikit-learn library! In this hands-on lab, we covered the basics of machine learning, preprocessing data, building a KNN model, and evaluating its performance.

But this is just the beginning. There is so much more to learn in the world of machine learning, from deep learning to reinforcement learning to unsupervised learning. So keep exploring, keep learning, and keep building amazing things with machine learning!

Editor Recommended Sites

AI and Tech News
Best Online AI Courses
Classic Writing Analysis
Tears of the Kingdom Roleplay
Dev Community Wiki - Cloud & Software Engineering: Lessons learned and best practice tips on programming and cloud
Play Songs by Ear: Learn to play songs by ear with trainear.com ear trainer and music theory software
Learn Javascript: Learn to program in the javascript programming language, typescript, learn react
Kids Games: Online kids dev games
Build packs - BuildPack Tutorials & BuildPack Videos: Learn about using, installing and deploying with developer build packs. Learn Build packs