当前位置:首页 » 《随便一记》 » 正文

Qlib实战-从安装到运行一个官方model

10 人参与  2024年12月18日 16:00  分类 : 《随便一记》  评论

点击全文阅读


安装篇

直接搜索qlib的时候,进入的是官方文档,但是文档的更新远不如github上的快,如果以github上的技术文档以及issue作为一手资料,    o(TヘTo)我应该不用装那么那么久了!

github地址速达:GitHub - microsoft/qlib:Qlib 是一个面向 AI 的量化投资平台,旨在利用 AI 技术在量化投资中发挥潜力、赋能研究并创造价值,从探索想法到实施生产。

文档提供了两种安装方式

# 在python=3.7或3.8环境下,直接使用pip安装 pip install pyqlib # 在python=3.7或3.8环境下,使用源安装需要进行三步 pip install numpy pip install cython git clone https://github.com/microsoft/qlib.git && cd qlibpython setup.py install python setup.py install #注意:需要进入到qlib项目目录下才可以运行该脚本

环境:windows 包管理:anaconda IDE:Visual Studio Code

本地环境导致失败的问题:根据Microsoft Visual C++ 14.0 is required 的终极解决办法-CSDN博客装过visual studio的C++开发工具。

使用源安装失败但无法解决:

sklearn包冲突…哪怕强行自己下载回来再装,也会遇到其他各种包冲突。尝试了开发者的建议Help installing pyqlib · Issue #1731 · microsoft/qlib,问题仍然无法解决,选择放弃使用源安装。

Linux环境下进行安装,发现自己如何再Linux下科学访问git并且将项目克隆下来一窍不通,其实这里有个解决方法,可以使用某个软件将宿主机的文件传输到虚拟机上的,但我也是一窍不通,暂时放下,选择绕过。

使用wsl,当时被很多失败打击到,对于新方法处于观望的态度,成为了备选方案,未尝试过。

使用pip install pyqlib过程:

克隆项目到本地。

创建虚拟环境python版本选择3.7或3.8,并运行  pip install pyqlib

进入项目目录运行对应指令。

小白应该知道的git运行项目思路:

克隆项目到本地

使用环境管理软件创建环境,并根据项目提示安装依赖。如果是有路径的指令,一般需要在激活环境的命令端口下进入项目的目录再运行指令。

包冲突报错:出现包冲突问题一般都不是包的问题,是环境的问题,比如对python的版本要求或者linux环境要求,需要多看isuus多排查。

运行指令报错。

无xx模块报错,缺啥装啥

无法找到xx路径报错。

原因1:没有进入到项目目录运行指令

原因2:没有额外下载数据并存放到对应位置,查看readme关于数据加载部分的内容(机器学习一般需要自行额外下载数据)。

其他方法

参考该up主 2 扫地僧微软AI量化平台Qlib教程:安装Qlib_哔哩哔哩_bilibili 可以成功运行。

需要自行下载torch

我尝试了纯cpu运行TRA模型在Alpha128上跑,1epoch起码要20分钟,还是需要GPU的。

GPU配置

qlib对torch版本没有限制,因此根据电脑实际情况安装即可。参考链接:2021最新 超详细环境配置 避开安装cuda所有坑_cuda version与sdk-CSDN博客

过程思路:

查看项目是否对torch有版本限制,有则从torch版本倒推cudann的版本再倒推cudatoolkit版本结合自己电脑实际情况进行安装。没有就从2开始。

查看电脑中cuda显卡驱动是否为最新,先更新安装最新驱动。

在cmd中输入nvidia-smi查看cuda version,显示的cuda version就是支持cudatoolkit的最高版本。

安装cudatoolkit

根据cudatoolkit版本安装cudann

根据cudatollkit版本安装pytorch,根据官网提示在虚拟环境中粘贴对应的下载指令。切记不能换源!

检查是否成功。激活环境,输入python进入编辑器模式。输入import torch回车torch.cuda.is_available()回车,返回true即配置好啦!

数据加载

文档的指令未更新,项目readme说了官方数据现在还不能用,给了参考链接的数据进行使用。

不要使用指令下载,有点慢,因为一般终端都没有走梯子嘛。

这个项目超级贴心?,每天都会更新,qlib_bin.tar.gz 包含的是05年1月4日到昨天的数据。

解压,并将这三个文件复制粘贴到项目进行数据读取的默认地址。

默认地址示例:C:\Users\Finorita\.qlib\qlib_data\cn_data 其中Finorita是我电脑的用户名。

若无该文件夹,则可以自己创建,也可在终端运行命令 mkdir -p ~/.qlib/qlib_data/cn_data

也可以自定义存放项目数据读取的路径,需要进入到项目的配置文件和model.py去查看如何改地址,我还没探索过。

运行模型

基本流程

激活环境,进入到你想运行的model中。所有model都存放在:qlib\examples\benchmarks\ 下。

接着输入qrun 对应model的配置文件.yaml 运行即可。

注意:

我发现在github中直接download会显示为qlibmain之类的文件夹名称,一样的也是在examples\benchmarks下可以找到许多论文对应的复现模型。

但是qlib有些论文只提供了alpha数据集的配置文件,在CSI300等数据集上的运行结果,不是提供了所有配置文件,参考readme,readme没说基本就是只提供了关于alpha数据集的配置文件了。

GRU运行示例-vscode

1. 快速进入对应文件夹,或使用cd命令

2. 查看虚拟环境是否对应

若不合适,参照下面进行快速修改。我尝试过在IDE里面的终端使用conda actiave 的方式激活环境,根本不行。

3. 运行 qrun workflow_config_gru_Alpha158.yaml

示例运行的是gru在alpha158数据集的训练。网络的训练配置可以打开workflow_config_gru_Alpha158.yaml进行修改。每个字段的含义参考官方文档:工作流程: 工作流程管理 — QLib 中文文档 0.9.3.99 文档

同理,运行结果参考官方文档给出的解释和公式噢!


点击全文阅读


本文链接:http://m.zhangshiyu.com/post/203126.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1