Day01-集成学习-机器学习基础(DataWhale)

一、机器学习基础

知识点:

  • 机器学习分监督学习和非监督学习。

    监督学习:有因变量、有特征向量、目的:预测

    非监督学习:无因变量、有特征向量,目的:寻找数据中的结构
  • 监督学习分回归和分类

    回归:因变量连续

    分类:因变量离散

常用的包

#引入科学计算包
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
%matplotlib inline 
#直接在你的python console里面生成图像
plt.style.use("ggplot")
import seaborn  as sns

1.1 回归

from sklearn import datasets
boston = datasets.load_boston()
x = boston.data
y = boston.target
features = boston.feature_names
boston_data = pd.DataFrame(x,columns=features)
boston_data.head(2)
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTAT
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.94.98
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.99.14
boston_data["PRICE"] = y
boston_data.head(2)
CRIMZNINDUSCHASNOXRMAGEDISRADTAXPTRATIOBLSTATPRICE
00.0063218.02.310.00.5386.57565.24.09001.0296.015.3396.94.9824.0
10.027310.07.070.00.4696.42178.94.96712.0242.017.8396.99.1421.6
sns.scatterplot(boston_data['NOX'], boston_data['PRICE'], color="r",alpha=0.6)
plt.title("PRICE~NOX")
plt.show()

在这里插入图片描述

1.2 分类

from sklearn import datasets
iris = datasets.load_iris()
x = iris.data
y = iris.target
features = iris.feature_names
iris_data = pd.DataFrame(x, columns=features)
iris_data['target'] = y
iris_data.head()
sepal length (cm)sepal width (cm)petal length (cm)petal width (cm)target
05.13.51.40.20
14.93.01.40.20
24.73.21.30.20
34.63.11.50.20
45.03.61.40.20
marker = ['s','x','o']
for index,c in enumerate(np.unique(y)):
    plt.scatter(x=iris_data.loc[y==c,"sepal length (cm)"], y=iris_data.loc[y==c, "sepal width (cm)"], alpha=0.8,
               label=c,marker=marker[c])
plt.xlabel("sepal length (cm)")
plt.ylabel("sepal width (cm)")
plt.legend()
plt.show()

在这里插入图片描述

1.3 非监督学习

https://scikit-learn.org/stable/modules/classes.html?highlight=datasets#module-sklearn.datasets

#生成月牙型非凸集
from sklearn import datasets
x, y = datasets.make_moons(n_samples=2000, shuffle=True,
                          noise=0.05, random_state=None)
for index,c in enumerate(np.unique(y)):
    plt.scatter(x[y==c,0], x[y==c, 1],s=7) #s:标记大小
plt.show()

在这里插入图片描述

#生成符合正态分布的聚类数据
from sklearn import datasets
x, y = datasets.make_blobs(n_samples=5000,n_features=2,centers=3)
for index,c in enumerate(np.unique(y)):
    plt.scatter(x[y==c, 0], x[y==c, 1], s=7)
plt.show()

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值