我们的队长在挖掘的过程中提出对于股票之间的涨跌关联的挖掘。首先讨论用什么样的算法可以做这样的挖掘,我们提取出从1990年开市以来每支股票每日的涨跌幅作为数据集进行挖掘,这样一来规模就稍显有些大了。用关联规则的APRIORI算法吃不消,其他的关联规则算法我不熟悉,所以没办法用。我尝试了用BP神经网络来做,不过我把JVM的运行空间调到了1.5G,依然无法承受这个规模的数据,不过我觉得即使能用好一点的机器做了,意义并不大,因为BP神经网络本身是基于黑盒测试的技术,我们无法得知它是怎么预测到的最后的结果,虽然很多科学家在这方面做过努力,但是一直没有什么好的结果。所以我觉得这个技术并不适合用于做这样的预测。
分类算法中,决策树的C4.5算法是个很实用的算法,速度较神经网络来说要快很多,而且很容易从中提取规则,所以图形化比神经网络要容易得多。针对C4.5算法,我们制定的挖掘方法如下:
1、将数据处理成以日期为行,以股票编号为列的数据矩阵,矩阵中保存的是某日某支股票的涨跌幅,未上市的为?,上市了但是未开盘的为0。可以通过MYSQL C API来编程对MYSQL中的数据进行操纵。
2、因为用一个属性A作为CLASS,只能挖掘出与A相关的规则,所以我们需要轮流将每一个属性作为CLASS进行挖掘,然后再做汇总,汇总的方式等挖掘结果出来以后再做进一步的决定。由于C4.5算法的CLASS必须是分类型的数