一.机器学习算法分类:
1.监督学习:
目标值:类别(离散型数据)------分类问题(例如图1对猫狗分类)
分类算法:k-近邻算法、贝叶斯分类、决策树与随机森林、逻辑回归
目标值:连续性数据(房屋价格等)------回归问题(例如图2对房屋价格预测)
回归算法:线性回归、岭回归
2.无监督学习:
目标值:无------无监督学习(例如图3,对一群人进行分类但无目标值)
聚类算法:k-means
图1
图2
图3
总结:
二.sklearn数据集使用
常用框架:
机器学习框架:sklearn
深度学习框架:Tensorflow、Pytorch、caffe2、theano、Chainer
常用的公共数据集:sklearn、kaggle、UCI
1.调用sklearn库中的数据集
可用datasets.load_***()he datasets.fetch_***(dataset=None)加载
返回值:
返回值类型是datasets.base.Bunch(字典格式),含五个键值对:
data:特征数据数组
target:标签数组
DESCR:数据描述
feature_names:特征的名字(新闻数据、手写数字、回归数据集没有)
target_names:标签名
from sklearn.datasets import load_iris
def datasets_demo():
iris=load_iris()
print('鸢尾花数据集:\n',iris)
print('查看数据集描述:\n', iris['DESCR'])
print('查看特征值的名字:\n', iris.feature_names)
print('查看特征值:\n', iris.data, iris.data.shape)
if __name__=='__main__':
datasets_demo()
2.数据集划分
使用sklearn.model_selection.train_test_split(arrays,*option)
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
def datasets_demo():
#获取数据集
iris=load_iris()
print('鸢尾花数据集:\n',iris)
print('查看数据集描述:\n', iris['DESCR'])
print('查看特征值的名字:\n', iris.feature_names)
print('查看特征值:\n', iris.data, iris.data.shape)
#数据集划分
x_train,x_test,y_train,y_test = train_test_split(iris.data,iris.target,test_size=0.2,random_state=22)
print('训练集的特征值:\n',x_train,x_train.shape)
if __name__=='__main__':
datasets_demo()