Thompson Sampling 教程项目使用指南
ts_tutorial 项目地址: https://gitcode.com/gh_mirrors/ts/ts_tutorial
1. 项目目录结构及介绍
ts_tutorial/
├── src/
│ ├── base/
│ ├── finite_arm/
│ ├── cascading/
│ ├── ensemble_nn/
│ ├── pricing/
│ ├── graph/
│ ├── simple_example.py
│ ├── reproduce_figures.py
│ ├── batch_runner.py
│ ├── local_runner.py
│ └── batch_analysis.py
├── README.md
├── LICENSE
└── ts_tutorial_intro.ipynb
目录结构说明
- src/: 包含项目的核心代码。
- base/: 包含抽象的基础类和通用工具。
- finite_arm/, cascading/, ensemble_nn/, pricing/, graph/: 分别包含不同类型的实验和算法实现。
- simple_example.py: 一个简单的示例脚本,展示如何运行 Thompson Sampling 与贪心决策的对比实验。
- reproduce_figures.py: 用于重现论文中的图表。
- batch_runner.py: 用于批量运行实验的脚本,适合在分布式环境中使用。
- local_runner.py: 用于本地运行实验的脚本,适合小规模测试。
- batch_analysis.py: 用于分析批量运行结果并生成图表。
- README.md: 项目介绍和使用说明。
- LICENSE: 项目许可证文件。
- ts_tutorial_intro.ipynb: 一个 Jupyter Notebook 文件,提供项目的入门教程。
2. 项目启动文件介绍
simple_example.py
simple_example.py
是一个简单的启动脚本,用于展示 Thompson Sampling 与贪心决策的对比实验。你可以通过以下命令运行该脚本:
cd ts_tutorial/src
python simple_example.py
reproduce_figures.py
reproduce_figures.py
用于重现论文中的图表。你可以通过以下命令运行该脚本:
cd ts_tutorial/src
python reproduce_figures.py --help
该脚本支持多种参数配置,具体使用方法可以通过 --help
选项查看。
batch_runner.py
batch_runner.py
用于批量运行实验,适合在分布式环境中使用。你可以通过以下命令运行该脚本:
cd ts_tutorial/src
python batch_runner.py --config=finite_arm/config_simple --job_id=0 --save_path=/tmp/
local_runner.py
local_runner.py
用于本地运行实验,适合小规模测试。你可以通过以下命令运行该脚本:
cd ts_tutorial/src
python local_runner.py
3. 项目配置文件介绍
项目中的配置文件主要用于定义实验的参数组合。配置文件通常位于 src/
目录下的各个子目录中,例如 finite_arm/config_simple
。
配置文件示例
# finite_arm/config_simple
{
"agents": ["greedy", "thompson"],
"seeds": range(100),
"environments": ["3-armed-bandit"]
}
配置文件说明
- agents: 定义了要运行的代理(算法)列表。
- seeds: 定义了实验的随机种子范围。
- environments: 定义了实验的环境列表。
通过配置文件,batch_runner.py
可以批量运行不同的实验组合,并将结果保存到指定的路径。
ts_tutorial 项目地址: https://gitcode.com/gh_mirrors/ts/ts_tutorial
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考