- 线性回归是参数化学习, 得出参数后就丢掉输入数据了
- K最近邻(KNN)是基于样本的学习, 会保留历史数据(x, y)对, 在进行预测时会参考这些数据
- 决策树会存储树结构, 在遇到查询时, 他们会根据数据要素遍历树, 树中的每个节点表示一个问题: 这个x值是否大于或小于另一个值? 最终抵达叶子部分, 表示要返回的回归值.
- 决策森林查询每个决策树后得出一个总体结果
输入x是多维的, 输出y是一维的
需要考虑期限period和股票池stock universe
使用遗传算法预测x需要的因素
Confidence置信度表示发现K最近邻值得到的y的分散性如何, 使用标准差衡量
Back Test Score表示使用3个月历史数据预测今后一个月后, 返回查看历史上3个月后的那个月的数据是不是和预测相符
回溯测试
持仓: 在黄金等商品期货操作中,无论是买还是卖,凡是新建头寸都叫建仓。操作者建仓之后手中就持有头寸,这就叫持仓。
回溯测试即将历史数据分成训练集和测试集, 验证模型效果
回归预测的问题
- 有噪点, 不稳定
- 难以确定置信度, KNN的标准差效果不太好
- 不知道该持有头寸多久以及如何分配头寸
回归
- 参数回归: 就是线性回归, 使用特征多项式表示曲线, 之后舍弃数据只保留参数
- KNN: 取x附近最近的K个点, 然后求y的均值. 好处是拟合性较好, 保留数据在查询时使用
- 内核回归: 类似KNN, 但是根据距离对每个点的贡献有加权, 而在KNN中每个点是同等加权的
线性回归存在偏差, KNN不存在, 因为我们不知道偏差. 但有偏差不一定是坏事, 在知道解的形式时, 可以使解努力贴近偏差
线性回归训练慢查询快, 当添加数据时要重新训练; KNN训练快查询慢, 可直接添加数据, 但在数据集较大时不好用
样本外测试: 分成训练集和测试集, 按时间顺序, 因为如果用后面的数据训练, 用前面的数据测试, 会出现前视偏差.
网友评论