首页
/ BinaryNet 项目使用教程

BinaryNet 项目使用教程

2026-01-16 10:17:06作者:舒璇辛Bertina

1. 项目的目录结构及介绍

BinaryNet 项目的目录结构如下:

BinaryNet/
├── Train-time/
│   ├── Main_BinaryNet_Cifar10.lua
│   ├── Main_BinaryNet_MNIST.lua
│   ├── Main_BinaryNet_SVHN.lua
│   ├── ...
├── Run-time/
│   ├── ...
├── LICENSE.txt
├── README.md

目录结构介绍

  • Train-time: 包含用于训练的脚本文件,如 Main_BinaryNet_Cifar10.lua, Main_BinaryNet_MNIST.lua, Main_BinaryNet_SVHN.lua 等。
  • Run-time: 包含用于运行时的脚本文件。
  • LICENSE.txt: 项目的许可证文件。
  • README.md: 项目的说明文档。

2. 项目的启动文件介绍

Main_BinaryNet_Cifar10.lua

这是用于训练 CIFAR-10 数据集的启动文件。主要功能包括:

  • 加载模型文件
  • 设置学习率、批次大小等参数
  • 使用二值化神经网络进行训练

主要参数

  • modelsFolder: 模型文件夹路径,默认值为 /Models/
  • networkModel: 模型文件,必须返回有效的网络。
  • LR: 学习率,默认值为 0.1
  • batchSize: 批次大小,默认值为 128
  • optimization: 优化方法,默认值为 adam
  • type: 运行类型,默认值为 cuda

3. 项目的配置文件介绍

配置文件

BinaryNet 项目的配置主要通过命令行参数进行设置,具体参数如下:

  • LR: 学习率,默认值为 0.1
  • LRDecay: 学习率衰减,默认值为 0
  • weightDecay: L2 惩罚项,默认值为 1e-4
  • momentum: 动量,默认值为 0.9
  • batchSize: 批次大小,默认值为 128
  • stcNeurons: 是否使用随机二值化神经元,默认值为 true
  • stcWeights: 是否使用随机二值化权重,默认值为 false
  • optimization: 优化方法,默认值为 adam
  • SBN: 是否使用基于移位的批量归一化,默认值为 true
  • runningVal: 是否使用运行时的均值和标准差,默认值为 true
  • epoch: 训练的轮数,默认值为 -1(无限制)。
  • threads: 线程数,默认值为 8
  • type: 运行类型,默认值为 cuda
  • devid: 设备 ID,默认值为 1
  • load: 加载现有模型的路径,默认值为 none

通过这些参数,用户可以灵活地配置训练过程。

登录后查看全文
热门项目推荐
相关项目推荐