Multi-task Learning for Stock Selection 

Joumana Ghosn and Yoshua Bengio

摘要

用人工神经网络预测未来回报以便于做出对应的金融决策时,我们需要考虑是为每支stock训练一个独立的网络结构还是所有的stocks能够共享一个网络结构。本文采用了一种折中的方案:将每支股票的未来回报作为一个task,那么不同股票间的模型会共享一些参数,这是一种多任务学习的形式。这种方法的年收益比多种benchmarks高14%。

前言

以往的对于金融时间序列的研究展现了很强的非线性,由此可以理解ANN的应用广泛。这些模型融合多类解释变量:(1)技术变量:包括过去的价格序列;(2)微观经济股票变量(股票收益);(3)宏观经济变量(商业周期相关的信息)。本文重点探索这样的问题:不同股票对待不同变量的方式不同还是相同?

本文做了一系列实验:使用不同参数子集作为不同股票模型间的共享参数。

本文的实验数据:9 years of data concerning 35 large capitalization companies of the Toronto Stock Exchange.

本文的优化目标:directly optimize a financial criterion,而非minimize the mean squared prediction error。前者的效果要好于后者。

参数共享(parameter sharing)以及多任务学习 

训练数据:

优化目标:-the function of the desired output and the output of the learner

预测模型:

基于相似任务来自动选择假设空间的方法已经被广泛研究。这种研究的认为:学习器是嵌入到现实世界中多个相关的任务中的(many related tasks),学习一个任务的知识可以有助于更好更快的学习一个新的任务。一些方法认为这些相关的任务并不是同时可用的:一些以前学过的任务获得的知识可以转移(transferred)到新的任务上。这里我们研究的所有任务都是并行学习的,因为我们的任务不在于使用多任务学习的方式来改善学习效率,而是用来提高学习的泛化能力。以Baxter1995年的工作为例,为每个任务训练一个神经网络,这些神经网络的第一隐层是共享的,但是后面的各层是任务相关的。共享层(The shared layers):使用所有任务中的训练数据来获取知识,从而构建合适的内部表示。任务相关层(Task-specific layers):使用内部表示来学习任务相关的网络权重。

股票选择应用(Application of Stock Selection)

数据集:36  stocks (1986.2~1994.1,96 months) one can buy or sell monthly

5 explanatory variables (features): 2 macro-economic variables (yields of long-term bonds ; the Consumer Price Index);

3 micro-economic variables (the series of dividend yields ; the series of ratios of stock price to book value of the company ; Spline extrapolation)

train/test split: 前k年做training,接下来1年做testing (不同的训练窗口k=3,4,5,6,7)

四种不同的参数共享方式(four types of parameter sharing):

(1) sharing everything:共享所有的参数

(2) sharing only the parameters of the first hidden layers: 仅共享第一隐层的参数

(3) sharing only the output layer parameter:仅共享最后的输出层参数

(4) not sharing anying:为每个stock训练一个独立的模型

结论:

(1) 最好的结果:采用一个共享的隐层以及独立的输出层,性能改进原因在于允许一些参数是不共享

(2) 共享一些参数比完全独立的模型得到的结果更一致

(3) 采用多任务学习得到的结果比benchmark结果要好

参考文献:

1. Using a Financial Training Criterion Rather than a Prediction Criterion, Yoshua Bengio, 1996, Technical Report

阅读笔记Multi-task Learning for Stock Selection [NIPS1996]的更多相关文章

  1. ZH奶酪:【阅读笔记】Deep Learning, NLP, and Representations

    中文译文:深度学习.自然语言处理和表征方法 http://blog.jobbole.com/77709/ 英文原文:Deep Learning, NLP, and Representations ht ...

  2. CVPR2022 Oral OGM-GE阅读笔记

    标题:Balanced Multimodal Learning via On-the-fly Gradient Modulation(CVPR 2022 Oral) 论文:https://arxiv. ...

  3. 论文阅读笔记 Improved Word Representation Learning with Sememes

    论文阅读笔记 Improved Word Representation Learning with Sememes 一句话概括本文工作 使用词汇资源--知网--来提升词嵌入的表征能力,并提出了三种基于 ...

  4. Deep Learning of Graph Matching 阅读笔记

    Deep Learning of Graph Matching 阅读笔记 CVPR2018的一篇文章,主要提出了一种利用深度神经网络实现端到端图匹配(Graph Matching)的方法. 该篇文章理 ...

  5. 【转载】 《Human-level concept learning through probabilistic program induction》阅读笔记

    原文地址: https://blog.csdn.net/ln1996/article/details/78459060 --------------------- 作者:lnn_csdn 来源:CSD ...

  6. 个性探测综述阅读笔记——Recent trends in deep learning based personality detection

    目录 abstract 1. introduction 1.1 个性衡量方法 1.2 应用前景 1.3 伦理道德 2. Related works 3. Baseline methods 3.1 文本 ...

  7. [论文阅读笔记] metapath2vec: Scalable Representation Learning for Heterogeneous Networks

    [论文阅读笔记] metapath2vec: Scalable Representation Learning for Heterogeneous Networks 本文结构 解决问题 主要贡献 算法 ...

  8. [论文阅读笔记] node2vec Scalable Feature Learning for Networks

    [论文阅读笔记] node2vec:Scalable Feature Learning for Networks 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问题 由于DeepWal ...

  9. [论文阅读笔记] Adversarial Learning on Heterogeneous Information Networks

    [论文阅读笔记] Adversarial Learning on Heterogeneous Information Networks 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问 ...

随机推荐

  1. 施耐德Sepam 40系列备自投逻辑

    1# 主供: VL1= NOT PVTS_1_3 V1 = VL1 AND P59_1_7 AND P59_1_8 AND P59_1_9VL2 = VL1 AND I12 AND I21 AND I ...

  2. 关于 C# 调用 JavaWebservice服务,版本不一致的问题

    1. A SOAP 1.2 message is not valid when sent to a SOAP 1.1 only endpoint.   问题原因: 客户端和服务端的SOAP协议版本不一 ...

  3. MYSQL 优化常用方法

    1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽 ...

  4. SQL 字符串处理大全

    select语句中只能使用sql函数对字段进行操作(链接sql server),select 字段1 from 表1 where 字段1.IndexOf("云")=1;这条语句不对 ...

  5. XML语法

    xml文档内容如下:(必须全英文输入,空格都要是英文的!) 1.文档声明 2.元素 3.属性 4.注释 5.CDATA区.特殊字符 6.处理指令 <?xml version="1.0& ...

  6. Linux如何查看进程、杀死进程、启动进程等常用命令

    Linux如何查看进程.杀死进程.启动进程等常用命令 关键字: linux 查进程.杀进程.起进程1.查进程    ps命令查找与进程相关的PID号:    ps a 显示现行终端机下的所有程序,包括 ...

  7. Net accounts命令

    Net accounts 将用户帐户数据库升级并修改所有帐户的密码和登录请求. 语法 net accounts [/forcelogoff:{minutes | no}] [/minpwlen:len ...

  8. mac 笔记

    ---恢复内容开始--- /* 因为外出mac 办公的时候越来越多,有时候4g wifi 流量告急,不得不寻找破解之道. */ 安装port& aircreak-ng sudo port in ...

  9. TCP协议疑难杂症全景解析

    说明: 1).本文以TCP的发展历程解析容易引起混淆,误会的方方面面2).本文不会贴大量的源码,大多数是以文字形式描述,我相信文字看起来是要比代码更轻松的3).针对对象:对TCP已经有了全面了解的人. ...

  10. JavaScript小知识

    1.<script>标签的出现使整个页面因脚本解析.运行而出现等待: 2.合并脚本,每个 HTTP请求都会产生额外的性能负担,下载一 个 100KB 的文件比下载四个 25KB的文件要快: ...