0.引言
一位科学家对鸢尾花产生了浓厚的兴趣,于是他收集了一些花的数据:花瓣的长度和宽度,花萼的长度和宽度。 他还有一些鸢尾花的测量数据,这些花已经被分类为:setosa,versicolor,virginica三个品种。我们假设他只会在野外遇到这三种花。
1.定义:
-
分类(classification):鸢尾花的品种
-
类别(class):鸢尾花的不同品种。
-
在这个应用中,只有三种分类,所以我们称之为,三分类问题。
-
标签(label):对于一个数据点,他的品种就是标签
2.初识数据
由于太过经典,这个案例也被引入了我们的scikit-learn的datasets模块中。
from sklearn.datasets import load_iris #引入iris库
iris_dataset = load_iris()
print("kets of iris_dataset: \n{}".format(iris_dataset.keys())) #输出iris的键值
输出样例
kets of iris_dataset:
dict_keys(['data', 'target', 'target_names', 'DESCR', 'feature_names', 'filename'])
-
target_names:预测的花的品种
-
feature_names:对特征的说明
-
data:每一行代表一朵花,列代表四个测量的数据
-
target:一维数组,每朵花对应一个数据。
详细介绍 :
print(iris_dataset['DESCR'])
.. _iris_dataset: Iris plants dataset -------------------- **Data Set Characteristics:** :Number of Instances: 150 (50 in each of three classes) :Number of Attributes: 4 numeric, predictive attributes and the class :Attribute Information: - sepal length in cm - sepal width in cm - petal length in cm - petal width in cm - class: - Iris-Setosa - Iris-Versicolour - Iris-Virginica :Summary Statistics: ============== ==== ==== ======= ===== ==================== Min Max Mean SD Class Correlation ============== ==== ==== ======= ===== ==================== sepal length: 4.3 7.9 5.84 0.83 0.7826 sepal width: 2.0 4.4 3.05 0.43 -0.4194 petal length: 1.0 6.9 3.76 1.76 0.9490 (high!) petal width: 0.1 2.5 1.20 0.76 0.9565 (high!) ============== ==== ==== ======= ===== ====================
训练数据和测试数据:
训练数据(training data)或训练集(train set):构建机器学习模型
测试数据(test data),测试集(test set),留出集(hold-out set):评估模型性能.
我的理解,训练集是用来求“方程”的表达式,测试集是为了带入验证表达式的正确程度 。