建立在前面 机器学习回归 教程中,我们将对我们的股票价格数据进行回归。 这一点的代码:
这里的希望是,我们抓住数据,决定在有价值的数据,通过操纵创造了一些新的有价值的数据,现在我们已经准备好开始机器学习过程与回归。 首先,我们需要更多的进口。 现在所有的进口:
我们将使用 numpy 模块将数据转换成numpy数组,Scikit-learn想要什么。 我们将讨论更多 预处理 和 cross_validation 当我们到达他们的代码,但预处理模块是用来做一些清洁/缩放数据机器学习之前,和cross_验证用于测试阶段。 最后,我们也导入 LinearRegression 算法以及 支持向量机 从Scikit-learn,我们将使用我们的机器学习算法演示结果。
在这一点上,我们有数据,我们认为是有用的。 实际的机器学习的东西是如何工作的呢? 监督学习,你有特性和标签。 特征是描述性的属性,和标签是你试图预测或预测。 回归的另一个常见的例子可能是试图预测的美元价值的保单保费。 公司可以收集你的年龄,过去驾驶违规行为,例如公共犯罪记录,你的信用评分。 公司将用过去的客户,这些数据,和喂养的“理想溢价”,他们认为应该给客户,或者他们将使用一个实际使用,如果他们认为这是一个有利可图的数量。
因此,对于机器学习分类器训练,特点是客户属性,标签与属性相关的保险费。
在我们的案例中,有哪些特点和标签是什么? 我们试图预测价格,所以价格标签吗? 如果是这样,featuers是什么? 预测时的价格,我们的标签,我们希望预测的东西,实际上是未来价格。 因此,我们的特点是:当前价格,高-低的百分比,百分比变化波动。 价格标签的价格应当在决定未来。 让我们添加一些新行:
在这里,我们定义预测列,然后我们填补任何南数据与-99999年。 你在这里有几个选择关于如何处理缺失数据。 你不能仅仅通过一项南(不是一个数字)的数据机器学习分类器,你必须处理。 一个流行的选择是用-99999替换丢失的数据。 许多机器学习分类器,这只会被视为局外人特性。 你也可以把所有的功能/标签包含缺失的数据集,但然后你也许留下大量的数据。
在现实世界中,许多数据集非常混乱。 大多数股票价格/体积数据非常干净,很少与缺失的数据,但许多数据集将有很多缺失的数据。 我看过数据集的大部分行包含一些丢失的信息。 你不一定要丧失所有伟大的数据,另外,如果你的样本数据有洞,你可以打赌你的真实用例也有洞。 你需要训练、测试和上线都在相同的数据和这些数据的特征。
最后,我们定义我们想要预测。 在许多情况下,如在试图预测客户的保费的保险,你只是想要一个号码,“现在”,但是,通过预测,你要预测出一定数量的点。 我们说我们要预测出数据集的整个长度的1%。 因此,如果我们的数据是100天的股票价格,我们希望能够预测价格1天到未来。 选择任何你喜欢的。 如果你只是试图预测未来的价格,然后你就做1天,天气预报就一天。 如果你预测10天,每天我们可以生成预测,在接下来的一周半。
在我们的例子中,我们已经决定当前值的特性是一群,和标签的价格,在未来,未来是整个数据集的长度的1%。 我们假设所有当前列功能,所以我们用一个简单的熊猫操作:添加一个新的列
现在我们已经包含的数据特性和标签。 接下来,我们需要做一些预处理之前最后步骤实际运行一切,这是我们将专注于下一个教程。