本文是对于medium上Boris博主的一篇文章的学习笔记,这篇文章中利用了生成对抗性网络(GAN)预测股票价格的变动,其中长短期记忆网络LSTM是生成器,卷积神经网络CNN是鉴别器,使用贝叶斯优化(以及高斯过程)和深度强化学习(DRL)优化模型中超参数。此外,文章中非常完整地实现了从特征抽取、模型建立、参数优化、实现预测的过程,其中运用了多种机器学习方法,比如BERT进行文本情绪分析、傅里叶变换提取总体趋势、autoencoder识别高级特征、XGboost实现特征重要性排序等。本文学习的思路是:GAN算法概览 – 项目思路 – 项目详解。拟在学习完成后,在Bigquant平台
更新时间:2023-11-26 16:58
在深度学习十分火热的今天,不时会涌现出各种新型的人工神经网络,想要实时了解这些新型神经网络的架构还真是不容易。光是知道各式各样的神经网络模型缩写(如:DCIGN、BiLSTM、DCGAN……还有哪些?),就已经让人招架不住了。
因此,这里整理出一份清单来梳理所有这些架构。其中大部分是人工神经网络,也有一些完全不同的怪物。 尽管所有这些架构都各不相同、功能独特,当我在画它们的节点图时……其中潜在的关系开始逐渐清晰起来。 BigQuant人工智能量化投资平台是一个专注于机器学习、深度学习的量化平台,拥有A股、期货、基金、美股数据,并内置了主流的深度学习开源框架。深度学习是一门实践性学科,欢迎大家
更新时间:2023-11-26 16:58
更新时间:2023-11-26 16:58
我们知道卷积神经网络(convnet)在计算机视觉问题上表现出色,原因在于它能够进行卷积运算,从局部输入图块中提取特征,并能够将表示模块化,同时可以高效地利用数据。这些性质让卷积神经网络在计算机视觉领域表现优异,同样也让它对序列处理特别有效。时间可以被看作一个空间维度,就像二维图像的高度或宽度。
对于某些序列处理问题,比如金融时间序列数据,这种一维卷积神经网络的效果可以媲美RNN[循环神经网络],而且计算代价通常要小很多。最近,一维卷积神经网络[通常与空洞卷积核(dilated kernel)一起使用]已经在音频生成和机器翻译领域取得了巨大成功。除了这
更新时间:2023-11-26 16:58
BigQuant平台不仅支持传统机器学习模型,同时还对深度学习模型模块进行了封装,方便用户直接使用策略生成器开发策略,降低策略开发难度。本文对BigQuant平台上策略生成器已经支持的深度学习模块进行简单介绍。
深度学习模型通过功能层进行积木式拼接,典型的模型构架如下: 通常模型由输入层、中间层和输出层组成。中间层包括卷积层、池化层、噪声层、循环层和激活层等。输出层通常是一个全连接层(Dens
更新时间:2023-11-26 16:58
本文原载于how-to-start-a-deep-learning-project,并且在机器之心上有翻译(如何从零开始构建深度学习项目?这里有一份详细的教程)。
忽略中英文的标题,因为这并非是一个入门的详细教程,而是在深度学习应用中各个步骤阶段
更新时间:2023-11-26 16:58
数据预处理在众多深度学习算法中都起着重要作用,实际上,对数据进行适当处理后,很多算法能够发挥最佳效果。然而面对各种各样的数据,很多时候我们不知道怎么样才能针对性进行处理。本文介绍了Python下的机器学习工具scikit-learn。其中,“sklearn.preprocessing”模块提供了几种常见的函数和转换类,把原始的特征向量变得更适合估计器使用。
[https://bigquant.com/experimentshare/45cc0fe6c95b43848f64032bbef0a440](https://bigquant.com/experimentshare/
更新时间:2023-11-26 16:58
从AlphaGo到AlphaStar,深度学习的强大逐步展现给世人。那么,什么是深度学习呢?本文将简要介绍深度学习的框架以及流程。
深度学习是机器学习研究中的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,例如图像,声音和文本。
如何使用计算机建立人脑的神经网络呢?下面介绍的感知器算法很好的模拟了人脑神经网络中的神经元。
人通过收集触觉、味觉、嗅觉、视觉与听觉来得到对外界事物的认识。计算机将人收集到的这些信息设定为输入(在下图中体现为$x_1、x_2...x_n$),通过某个函数(在下图体现为$\
更新时间:2023-11-26 16:58
更新时间:2023-10-09 07:46
深度学习选股策略需要更大的资源吗?
https://bigquant.com/experimentshare/1c9b4b73bd534982bc6beb2e8c07d0f1
跑DEEPALPHA模块建议升级开发环境到C2甚至C3档。
看你用的标准化模块比较老了,还剩V8, 你可以换成最新的模块,从左侧模块区拖一个就行,最新的标准化模块性能有很大提升
![{w:100}{w:100}](/wiki/api/a
更新时间:2023-10-09 07:17
根据官网深度学习特征裁剪值如何设置?的原代码(https://bigquant.com/wiki/doc/shendu-tezheng-EuCMiohTql),运行报错<ValueError: optimizer function should't be none.>请问什么原因?如何解决?
https://bigquant.com/experimentshare/175b607bae904740a1034e7ba1b29c4e
\
更新时间:2023-10-09 06:09
根据【模板策略】LSTM+CNN深度学习预测股价案例没有成交?
https://bigquant.com/wiki/doc/shendu-gujia-4teFqoC7MV
或
https://bigquant.com/community/t/topic/194980
https://bigquant.com/experimentshare/52d3c0772a2d4ef9bb5950c7c6646170
\
更新时间:2023-10-09 03:16
可看视频听老师的详细讲解
问:机器学习在量化中,怎样在过程中查看策略、理解机器学习的逻辑和修正?
答:
1)可解释性
2)如何减少过拟合
目前
更新时间:2023-08-02 06:20
由于深度学习中牵扯到Dropout和随机种子等多处随机项,因此如果无法固化模型,当缓存丢失后会模拟交易/回测会触发重新训练,导致模型变化,本帖介绍固化已有的模型的步骤。
好的策略应该经过多次训练查看模型的回测效果稳定性,如果发现同样参数下多次训练模型得到的回测结果变动范围较大,多半是模型不稳定。模型稳定后可以考虑固化模型并开启模拟交易。
![{w:100}{w:100}](/wiki/api/attachments.redirect?id=3a5f92ff-fb46-4dfa-8d5b-fa24
更新时间:2023-06-28 18:19
这个模型克隆后无法运行,和视频讲解也不太一样,能给个完整版本供学习吗?谢谢
https://bigquant.com/wiki/doc/shendu-qihuo-shili-wXlpMm48hG
TypeError Traceback (most recent call last) <ipython-input-2-55d0e540611d> in <module> 245 ) 246 --> 247 m20 = M.cached.v3( 248 input_1=m24.data, 249
更新时间:2023-06-20 06:50
前面我们提到“深度学习”,读者很容易想到,那有没有相应的“浅层学习”呢?答案是,有。传统意义上的人工神经网络,主要由输入层、隐含层、输出层构成,其中隐含层也叫多层感知机(Multi Layer Perceptron)。
正如其名称所示,多层感知机的确也可以是多层的网络,但是层与层之间特征的选择,需要人手动实现,算法的训练难度非常大,故此感知机的层数通常并不多,这些机器学习算法,通常被称为浅层感知机。例如,支持向量机(Support Vector Machine,SVM)、Boosting、最大熵方法(如Logistic Regression,逻辑回归,简称LR),这
更新时间:2023-06-14 03:02
我们知道,深度学习网络,实质上就是层数较多的神经网络。追根溯源,那什么是神经网络呢?简单来说,它是一种模仿动物神经网络行为特征,进行分布式并行处理信息的算法模型。
人,无疑是有智能的。如果想让“人造物”具备智能,模仿人类是最朴素不过的方法论了。早在春秋时期,老子便在《道德经》中给出了自己的睿智判断:
“人法地,地法天,天法道,道法自然。”
这里所谓的“法”,作为动词,为“效法、模仿、学习”之意。特别是“道法自然”的含义,意味悠长。的确,大道运化天地万物,无不是遵循自然法则的规律。人们从“自然”中学习和寻求规律,在很多时候,的确比自己苦思冥想
更新时间:2023-06-14 03:02
在聊完了“感知机”的一段发展史后,下面让我们言归正传,再从技术层面,深入讨论一下感知机的工作机理。
现在我们知道,所谓的感知机,其实就是一个由两层神经元构成的网络结构,它在输入层接收外界的输入,通过激活函数(含阈值)的变换,把信号传送至输出层,因此它也称之为“阈值逻辑单元(threshold logic unit)”。
感知机后来成为许多神经网络的基础,但它的理论基础依然建立于皮茨等人提出来的“M-P神经元模型”。
**麻雀虽小,五脏俱全。**感知机虽然简单,但已初具神经网络的必备要素。在前面我们也提到,所有“有监督”的学习,在某种程度上,都是分类
更新时间:2023-06-14 03:02
前面我们提到,机器学习在本质上,就是找好一个好用的函数。而人工神经网络最牛的地方可能就在于,它可以在理论上证明:“一个包含足够多隐层神经元的多层前馈网络,能以任意精度逼近任意预定的连续函数[1]”。
这个定理也被称之为通用近似定理(Universal Approximation Theorem)。这里的“Universal”,也有人将其翻译成“万能的”,由此可以看出来,这个定理的能量有多大。
图2-4 通用近似定理
更新时间:2023-06-14 03:02
著名学者赫伯特·西蒙教授(Herbert Simon,1975年图灵奖获得者、1978年诺贝尔经济学奖获得者)曾对“学习”下过一个定义:“如果一个系统,能够通过执行某个过程,就此改进了它的性能,那么这个过程就是学习”。
大师果然名不虚传,永远都是那么言简意赅,一针见血。从西蒙教授的观点可以看出,学习的核心目的就是改善性能。
其实对于人而言,这个定义也是适用的。比如,我们现在正在学习深度学习的知识,其本质目的就是为了提升自己在机器学习上的认知水平。如果我们仅仅是低层次的重复性学习,而没有达到认知升级的目
更新时间:2023-06-14 03:02
在《未来简史》一书中,赫拉利说,根据数据主义的观点,人工智能实际上就是找到一种高效的“电子算法”,用以代替或在某项指标上超越人类的“生物算法”。
那么,任何一个“电子算法”都要实现一定的功能(Function),才有意义。
在计算机术语中,将“Function”翻译成“函数”,这多少有点“词不达意”,因为它并没有达到“信、达、雅”的标准,除了给我们留下一个抽象的概念之外,几乎什么也没有剩下。但这一称呼已被广泛接受,我们也只能约定俗成地把“功能”叫作“函数”。
根据台湾大学李宏毅博士的通俗说法,
所谓机器学习,在形式上可近似等同于,在数据对象中
更新时间:2023-06-14 03:02
在深度学习中,经常有“end-to-end(端到端)”学习的提法,与之相对应的传统机器学习是“Divide and Conquer(分而治之)”。这些都是什么意思呢?
“end-to-end”(端到端)说的是,输入的是原始数据(始端),然后输出的直接就是最终目标(末端),中间过程不可知,也难以知。比如说,基于深度学习的图像识别系统,输入端是图片的像素数据,而输出端直接就是或猫或狗的判定。这个端到端就是:像素判定。
再比如,“end-to-end”的自动驾驶系统,输入的是前置摄像头的视频信号(其实也就是像素),而输出的直接就是控制车辆行驶指令(
更新时间:2023-06-14 03:02
更一般地,常见的多层神经网络如图8-3所示。在这种结构中,将若干个单层神经网络级联在一起,前一层的输出,作为后一层的输入,这就构成了多层前馈神经网络(multi-layer feedforward neural networks)。更确切的说,每一层神经元仅仅与下一层的神经元全连接。但在同一层之内,神经元彼此不连接,而且跨层之间的神经元,彼此也不相连。
图8-
更新时间:2023-06-14 03:02
中国有句古话:
“知错能改,善莫大焉。”
说的就是,犯了错误而能改正,没有比这更好的事了。
放到机器学习领域,这句话显然属于“监督学习”的范畴。因为“知错”,就表明事先已有了事物的评判标准,如果你的行为不符合(或说偏离)这些标准,那么就要根据“偏离的程度”,来“改善”自己的行为。
下面,我们就根据这个思想来制订感知机的学习规则。
从前面的讨论中,我们已经知道,感知机学习属于“有监督学习”(即分类算法)。感知机有明确的结果导向性。
这有点类似于“不管白猫黑猫,抓住老鼠就是好猫”的说法,不管是什么样的学习规则,能达到良好的分类目的,就是好的学习规则。
更新时间:2023-06-14 03:02
针对前馈神经网络,输入层和输出层设计比较直观。针对神经网络,我们拆开想想What和How的问题:
1)神经:即神经元,什么是神经元(What)?2)网络:即连接权重和偏置,它们是怎么连接的(How)?
对于计算机而言,它能计算的就是一些数值。而数值的意义是人赋予的。法国著名数学家、哲学家笛卡尔曾在它的著作《谈谈方法》提到:“我想,所以我是”。文雅一点的翻译就是“我思故我在”。套用在神经元的认知上,也是恰当的。这世上本没有什么人工神经元,你(人)认为它是,它就是了。也就是说,数值的逻辑意义,是人给的。
比如说,假如我们尝试判断一张手写数字图
更新时间:2023-06-14 03:02