Código para o artigo: Escala de unidade: Treinamento pronta para baixo da caixa de baixa precisão.
Gostaríamos que pesos, ativações e gradientes seja variação unitária na inicialização. Para conseguir isso, introduziremos fatores de escala separados para ativações no passe para frente e para gradientes no passe para trás.
Este repositório contém nosso código de experimentação para experimentos sobre modelagem de idiomas no nível do caractere e um caderno de demonstração.
Visão geral:
Estrutura:
Veja também:
Este código foi testado no Poplar SDK 3.1.0+1205.
python3 -m venv .venv
# Append to .venv/bin/activate:
# source PATH/TO/POPLAR_SDK/enable
source .venv/bin/activate
pip install wheel
pip install $POPLAR_SDK_ENABLED /../tensorflow-2.6.3+gc3.1.0+246224+2b7af067dae+amd_znver1-cp38-cp38-linux_x86_64.whl
pip install $POPLAR_SDK_ENABLED /../keras-2.6.0+gc3.1.0+246230+88e2debf-py2.py3-none-any.whl
pip install -r requirements.txt
python run_experiment.py Nossas varreduras de resultado do teste são descritas por run_sweep.py . Por padrão, isso pressupõe que os dados estejam em/home/pesquisa-Datasets/wikitext103_raw ( train.txt , valid.txt , test.txt ) e que o usuário está conectado ao wandb.
python run_sweep.pyCopyright (C) 2023 GraphCore Ltd. licenciado sob a licença do MIT.
O código incluído é liberado sob uma licença do MIT (consulte a licença).
Nossas dependências são:
| Componente | Sobre | Licença |
|---|---|---|
| Wandb | Pesos e preconceitos Biblioteca de clientes (site), para logs opcional para servidores Wandb | Mit |
Também usamos dependências python adicionais para desenvolvimento/teste (consulte os requisitos dev.txt).
O conjunto de dados Wikitext-103 está licenciado sob a licença Creative Commons Attribution-Sharealike.