专栏丨聚类算法神经网络及其在量化选股中的实践

Posted 点宽学院

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了专栏丨聚类算法神经网络及其在量化选股中的实践相关的知识,希望对你有一定的参考价值。

本文来源于:对外经贸大学·QuantFactory量化投资俱乐部

未经允许,不得转载


什么是机器学习?


通过计算的手段,利用经验来改善 系统自身的性能


机器学习算法的分类


机器学习算法的分类

1、有监督学习

2、线性回归
3、决策树
4、逻辑回归
5、神经网络
支持向量机
……


无监督学习

1、聚类
2、降维算法

……


半监督学习

半监督 SVM
……


聚类

将数据集中的样本划分为若干个通常是不相交子,每个 子集称为一“簇”(cluster) 。

典型应用:用户分类

专栏丨聚类算法、神经网络及其在量化选股中的实践


目标:簇内相似度高,簇间似度低。


如何去度量 “相似度 ”?
两个样本点之间的 “距离 ”


最常用的距离 —— 欧氏距离


原型聚类
k均值算法(k-means)
高斯混合聚类


密度聚类

层次聚类


k-means算法


总样本数为 m,聚类簇数为 k

1、从样本集中随机选择 k个样本作为初始均值向量;

2、对于所有剩余样本,计算每个与 k个均值向量的距离,之后将该样 本划入与它距离最近的簇中;

3、得到新的均值向量;

4、重复第 2步和第 3步,直到均值向量不再变化;

5、得到最终的聚类结果。


k-means 函数

专栏丨聚类算法、神经网络及其在量化选股中的实践

X:样本集, n ×p矩阵、n为样本个数
k:要聚类的簇数
IDX:分类结果 n×1 矩阵
C:最终得到的均值向量,k×p 矩阵
sumd:每个样本点到其对应的均值向量距离之和
D:每个样本点到均值向量的距离,n×k矩阵


二分k-means 函数

为克服 k-means means算法收敛于局部最小值的问题


具体步骤:
1、将所有点看成一个簇;
2、当簇数目小于 k时:
对于每一个簇,计算总误差,在给定的簇上进行 k-means 聚类( k=2 ),计算将该簇一分为二之后的总误差,选择使得误差最小的那个簇进行划分操作。


高斯混合聚类

原理:
1、假设样本的生成过程遵循高斯混合分布;
2、将k个高斯分布 模型混合在一起,每样本点出现的概率是所有高斯分布混合结果。


理论上,足够复杂的高斯混合分布模型可以拟任意形态概率。

专栏丨聚类算法、神经网络及其在量化选股中的实践

根据贝叶斯公式,可得样本点属于某个簇的后验概率。


具体步骤:
1、初始化高斯混合分布的模型参数;
2、计算各个样本点由混合成分生的后验概率;
3、更新模型参数:均值向量协方差矩阵混合系;
4、重复第 2步和第 3步,直到满足停止条件;
5、得到最终的聚类结果。


MATLAB中使用的函数:
fitgmdist
cluster



层次聚类

AGNES算法

一种采用自底向上聚合策略的层次类算法,它先将数据集中每个样本看作一个初始聚类簇,然后在算法运行的每步中找出距离最近两进行合并,该过程不断重复直至达到预设的聚类簇个数。


神经网络

M-P神经元模型

专栏丨聚类算法、神经网络及其在量化选股中的实践


多层神经网络

初始设置:网络层数 、每层神经元个数、神经元激活函

计算:连接权、神经元阈值



基于神经网络的多因子选股模型


因子:

总市值
22 日换手率
22 日涨跌幅
PE
ROE 同比增长率


1、因子值按秩打分 —— 归一化;
2、股票按当期收益率排序,前30%设为1,最后30%设为-1,其余作为噪声删去;
3、构建神经网络,两个隐含层 [8 8];
4、选取输出值最大的前100支股票。


1、月度调仓;
2、交易成本:千分之一,双边收取;
3、涨停、牌无法买入;
4、跌停、牌无法卖出。


专栏丨聚类算法、神经网络及其在量化选股中的实践

专栏丨聚类算法、神经网络及其在量化选股中的实践



更多课程



专栏丨聚类算法、神经网络及其在量化选股中的实践

以上是关于专栏丨聚类算法神经网络及其在量化选股中的实践的主要内容,如果未能解决你的问题,请参考以下文章

《机器学习》兴趣小组第二讲: 聚类算法神经网络及其在量化选股中的实践

专栏 | 蒙特卡洛树搜索在黑盒优化和神经网络结构搜索中的应用

Matlab的BP神经网络工具箱及其在函数逼近中的应用

机器学习神经网络识别手写数字(附python源码)

华泰人工智能选股之循环神经网络模型

图聚类算法打开深度神经网络黑箱:解密权重结构