前言
大家好✨,这里是bio🦖。
机器学习方法已经应用到日常生活的方方面面。从自动推荐看什么电影、点什么食物、买什么商品,到个性化的在线电台和从照片中识别好友,许多现代化网站和设备的核心都是机器学习算法。
所以这次给大家带来的是机械学习模型的应用,也可以说是实战。如果你是新手这篇文展的代码将有助于你理解机械学习的应用。观看完本文(主要是代码),你将学习到:
1. 如何构建简单机械学习模型 KNN, Random Forest, Decision Tree and Multilayer Perceptron
2. 如何提高模型的表现
3. 如何对数据进行处理以及可视化展现
一、数据准备
1.1 数据下载
数据来自csdn神州数码集团2022年校园技术大赛,提取码:jc58
。数据集包括train数据、test数据以及参考的预测结果格式。train数据包含User ID
Gender
Age
AnnualSalary
Purchased
,简单来说就是一个二分类的问题,根据用户的性别、年龄、年收入判断用户是否购买车辆🚗。
1.2 数据格式转换
使用pandas
读入训练数据,其展示如图二。其中Gender
列包括女性和男性,可以将其从字符转换为数字0和1。
import pandas as pd
train_test_data = pd.read_csv('train.csv')
display(train_test_data)
使用如下代码将male和female转换为0和1。
trans_form = train_test_data['Gender']
trans_form = [1 if i == "Male" else 0 for i in trans_form]
train_test_data["Gender"] = trans_form
display(train_test_data)
1.3 数据拆分
将训练数据拆按照3:1分成训练集和测试集,
from sklearn.model_selection import train_test_split
import numpy as np
# train and test data
X_train, X_test, y_train, y_test = np.array(train_test_split(train_test_data[["Gender","Age","AnnualSalary"]], train_test_data["Purchased"], random_state=0))
二、模型构建
2.1 K近邻
k近邻(K-Nearest Neighbors)算法,也称为KNN或k-NN,是一种非参数的监督学习分类算法,它使用邻近性对单个数据点的分组进行分类或预测。从图五可以看出邻居数小于等于三的情况下,出现了过拟合,随着邻居数目增多&