Machine learning 识别机器学习数据以进行预测
作为一个学习练习,我计划实现一个机器学习算法(可能是神经网络),根据股票买卖和交易时间来预测用户交易股票的收益。下面的数据集是我制定的测试数据 首字母缩略词:Machine learning 识别机器学习数据以进行预测,machine-learning,neural-network,Machine Learning,Neural Network,作为一个学习练习,我计划实现一个机器学习算法(可能是神经网络),根据股票买卖和交易时间来预测用户交易股票的收益。下面的数据集是我制定的测试数据 首字母缩略词: tab=millisecond time apple bought asb=apple shares bought tas=millisecond apple sold ass=apple shares sold tgb=millisecond time google bought gsb=google shares bought tgs
tab=millisecond time apple bought
asb=apple shares bought
tas=millisecond apple sold
ass=apple shares sold
tgb=millisecond time google bought
gsb=google shares bought
tgs=millisecond google sold
gss=google shares sold
培训数据:
username,tab,asb,tas,ass,tgb,gsb,tgs,gss
a,234234,212,456789,412,234894,42,459289,0
b,234634,24,426789,2,234274,3,458189,22
c,239234,12,156489,67,271274,782,459120,3
d,234334,32,346789,90,234254,2,454919,2
分类:
a earned $45
b earned $60
c earned ?
d earned ?
目的:根据培训数据预测用户c&d的收入
是否有任何数据点需要添加到此数据集中?也许我应该使用替代数据?因为这只是我自己创作的一个学习练习,所以可以添加任何可能有用的功能
这些数据需要标准化,我还需要了解其他概念吗?
也许不应该使用时间作为功能参数,因为股票可能会根据时间上下波动。不要将用户名与培训数据一起使用-网络可能会在用户名和赚取的美元之间建立关联。包括它将考虑用户对输出的决定,而排除它将确保网络能够预测任意用户的收入。使用您建议的参数似乎无法预测收入 主要原因是输入参数与输出值不相关
输入值与自身矛盾——考虑到这样的情况,对于相同的输入,你会期望不同的输出值吗?如果是这样,您将无法预测此类输入的任何输出。 让我们更进一步,交易员的收益不仅取决于买入/卖出股票的份额,还取决于每只股票的价格。当我们向神经网络提供两个相等的输入,但要求不同的输出时,这将给我们带来问题
在这种情况下,如何定义“良好”参数来预测期望输出? 我建议首先寻找做这种估计的人,然后尝试定义他们考虑的参数列表。 如果你成功了,你会得到一个巨大的变量列表。然后,您可以尝试建立一些模型,例如,使用神经网络。您可能希望按以下顺序解决问题:
- A公司股票价格(这是目标值)
- 其他公司B、C、…、Z的股价(其他公司可能直接或间接影响A公司)
- 52周A、B、C、…、Z的最低价格(长期功能开始)
- 52周A、B、C、…、Z的最高价格
- A、B、C、…、Z的每月最高/最低价格
- A、B、C、…、Z的每周最高/最低价格(短期功能开始)
- A、B、C、…、Z的每日最高/最低价格
- 收入报告日是A、B、C、…、Z(真正重要的功能开始)
- A、B、C、…、Z收入的变化
- A、B、C、…、Z的利润变化
- A,…,Z社交网络中公司简介的语义得分
- 。。。(这里想象力很有用)
我认为类a神经网络在这里非常相关 除了标准化,还需要缩放。另一个问题,我要问你的是股票的分类。在您的示例中,您提供了被视为股票的谷歌和苹果。我想澄清一下,你想只预测谷歌和苹果的收益,还是预测两支股票的组合 如果你只想对谷歌和苹果进行预测,并提供你所拥有的数据,那么你只能用某种方法进行标准化和缩放。递归神经网络在预测任务上优于简单的前馈模型和反向传播训练 但如果你想将你的训练算法应用到谷歌和苹果以外的地方,我建议你根据一些标准将你的训练数据分成若干组。划分的一个例子是根据股票的资本化程度。如果你想进行大写除法,你可以分成五组(例如)。如果你决定做五组股票,你也可以应用等边编码来减少NN学习的维数 你可以想到的另一种分组是股票的操作区域。例如农业、科技、医疗、高端、旅游团体。 假设您决定按上述方式进行分组(我指的是农业、科技、医疗、高端、旅游)。然后,五个组将为您提供五个输入NN到输入层的条目(即所谓的) 假设你想饲养农业牲畜 然后输入将如下所示: 1,0,0,0,x1,x2,…,xn 其中x1、x2、…、xn-是其他条目。 或者,如果您应用等边编码,那么您将少一个维度(我懒得描述它的样子) 然而,转换神经网络条目的另一个想法是温度计编码 还有一个想法要牢记在心,因为人们通常会在股票交易中无所事事,所以你的数据集会有偏差。我的意思是,如果你只随机选择10个交易者,他们都可能是输家,你的数据集将无法完全代表。因此,为了避免数据偏差,您应该有大的enou