美文网首页
Sklearn 笔记

Sklearn 笔记

作者: a十二_4765 | 来源:发表于2017-11-15 10:04 被阅读53次

    Sklearn 本身就有很多数据库,可以用来练习。 以 Iris 的数据为例,这种花有四个属性,花瓣的长宽,茎的长宽,根据这些属性把花分为三类。

    用分类器 把四种类型的花分开

    导入模块

    from sklearn import datasets

    from sklearn.model_selection import train_test_split

    from sklearn.neighbors import KNeighborsClassifier

    创建数据

    加载iris 的数据 把属性存在X.类别标签存在y

    iris = datasets.load_iris()

    iris_X=iris.data

    iris_y = iris.target

    观察数据集,x有四个属性 y 有0, 1,2 三类

    print(iris_X[:2,:])

    print(iris_y)

    把数据集分为训练集 和测试集 ,其中test_size = 0.3 ,即 测试集占总数据的30%

    X_train,X_test,y_train,y_test =train_test_split(iris_X,iris_y,test_size = 0.3)

    print(y_train)

    导入模块

    from __future__import print_function

    from sklearn import datasets

    from sklearn.linear_model import LinearRegression

    import matplotlib.pyplot as plt

    导入数据- 训练模型

    用 datasets.load_boston() 的形式 加载数据,并给 X 和 y 赋值

    loaded_data =datasets.load_boston()

    data_X =loaded_data.data

    data_y = loaded_data.target

     定义模型

    可以直接用默认值去建立 model,默认值也不错,也可以自己改变参数使模型更好,然后用training data 去训练模型

    model = LinearRegression()

    model.fit(data_X,data_y)

    打印出预测值,这里用X的前四个来预测 同时打印真实值,作为对比

    print(model.predict(data_X[:4,:]))

    print(data_y[:4])

    创建虚拟数据-可视化

    用函数来建立 100个sample  有一个feature 喝一个target 这样比较方便可视化

    X,y=datasets.make_regression(n_samples=100,n_features=1,n_targets=1,noise=10)

    用scatter的形式来输出结果。

    plt.scatter(X,y)

    plt.show()

    noise越大的话,点就会越来越离散,例如noise由 10 变为 50.

    X,y=datasets.make_regression(n_samples=100,n_features=1,n_targets=1,noise=50)

    plt.scatter(X,y)

    plt.show()

    相关文章

      网友评论

          本文标题:Sklearn 笔记

          本文链接:https://www.haomeiwen.com/subject/ffgmuxtx.html