You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
120 lines
6.7 KiB
120 lines
6.7 KiB
2 years ago
|
# This is the hyperparameter configuration file for Parallel WaveGAN.
|
||
|
# Please make sure this is adjusted for the CSMSC dataset. If you want to
|
||
|
# apply to the other dataset, you might need to carefully change some parameters.
|
||
|
# This configuration requires 12 GB GPU memory and takes ~3 days on RTX TITAN.
|
||
|
|
||
|
###########################################################
|
||
|
# FEATURE EXTRACTION SETTING #
|
||
|
###########################################################
|
||
|
fs: 24000 # Sampling rate.
|
||
|
n_fft: 512 # FFT size (samples).
|
||
|
n_shift: 128 # Hop size (samples). 12.5ms
|
||
|
win_length: 512 # Window length (samples). 50ms
|
||
|
# If set to null, it will be the same as fft_size.
|
||
|
window: "hann" # Window function.
|
||
|
n_mels: 80 # Number of mel basis.
|
||
|
fmin: 30 # Minimum freq in mel basis calculation. (Hz)
|
||
|
fmax: 12000 # Maximum frequency in mel basis calculation. (Hz)
|
||
|
|
||
|
|
||
|
###########################################################
|
||
|
# GENERATOR NETWORK ARCHITECTURE SETTING #
|
||
|
###########################################################
|
||
|
generator_params:
|
||
|
in_channels: 1 # Number of input channels.
|
||
|
out_channels: 1 # Number of output channels.
|
||
|
kernel_size: 3 # Kernel size of dilated convolution.
|
||
|
layers: 30 # Number of residual block layers.
|
||
|
stacks: 3 # Number of stacks i.e., dilation cycles.
|
||
|
residual_channels: 64 # Number of channels in residual conv.
|
||
|
gate_channels: 128 # Number of channels in gated conv.
|
||
|
skip_channels: 64 # Number of channels in skip conv.
|
||
|
aux_channels: 80 # Number of channels for auxiliary feature conv.
|
||
|
# Must be the same as num_mels.
|
||
|
aux_context_window: 2 # Context window size for auxiliary feature.
|
||
|
# If set to 2, previous 2 and future 2 frames will be considered.
|
||
|
dropout: 0.0 # Dropout rate. 0.0 means no dropout applied.
|
||
|
bias: True # use bias in residual blocks
|
||
|
use_weight_norm: True # Whether to use weight norm.
|
||
|
# If set to true, it will be applied to all of the conv layers.
|
||
|
use_causal_conv: False # use causal conv in residual blocks and upsample layers
|
||
|
upsample_scales: [8, 4, 2, 2] # Upsampling scales. Prodcut of these must be the same as hop size.
|
||
|
interpolate_mode: "nearest" # upsample net interpolate mode
|
||
|
freq_axis_kernel_size: 1 # upsamling net: convolution kernel size in frequencey axis
|
||
|
nonlinear_activation: null
|
||
|
nonlinear_activation_params: {}
|
||
|
|
||
|
###########################################################
|
||
|
# DISCRIMINATOR NETWORK ARCHITECTURE SETTING #
|
||
|
###########################################################
|
||
|
discriminator_params:
|
||
|
in_channels: 1 # Number of input channels.
|
||
|
out_channels: 1 # Number of output channels.
|
||
|
kernel_size: 3 # Number of output channels.
|
||
|
layers: 10 # Number of conv layers.
|
||
|
conv_channels: 64 # Number of chnn layers.
|
||
|
bias: True # Whether to use bias parameter in conv.
|
||
|
use_weight_norm: True # Whether to use weight norm.
|
||
|
# If set to true, it will be applied to all of the conv layers.
|
||
|
nonlinear_activation: "leakyrelu" # Nonlinear function after each conv.
|
||
|
nonlinear_activation_params: # Nonlinear function parameters
|
||
|
negative_slope: 0.2 # Alpha in leakyrelu.
|
||
|
|
||
|
###########################################################
|
||
|
# STFT LOSS SETTING #
|
||
|
###########################################################
|
||
|
stft_loss_params:
|
||
|
fft_sizes: [1024, 2048, 512] # List of FFT size for STFT-based loss.
|
||
|
hop_sizes: [120, 240, 50] # List of hop size for STFT-based loss
|
||
|
win_lengths: [600, 1200, 240] # List of window length for STFT-based loss.
|
||
|
window: "hann" # Window function for STFT-based loss
|
||
|
|
||
|
###########################################################
|
||
|
# ADVERSARIAL LOSS SETTING #
|
||
|
###########################################################
|
||
|
lambda_adv: 4.0 # Loss balancing coefficient.
|
||
|
|
||
|
###########################################################
|
||
|
# DATA LOADER SETTING #
|
||
|
###########################################################
|
||
|
batch_size: 8 # Batch size.
|
||
|
batch_max_steps: 25500 # Length of each audio in batch. Make sure dividable by n_shift.
|
||
|
num_workers: 1 # Number of workers in DataLoader.
|
||
|
|
||
|
###########################################################
|
||
|
# OPTIMIZER & SCHEDULER SETTING #
|
||
|
###########################################################
|
||
|
generator_optimizer_params:
|
||
|
epsilon: 1.0e-6 # Generator's epsilon.
|
||
|
weight_decay: 0.0 # Generator's weight decay coefficient.
|
||
|
generator_scheduler_params:
|
||
|
learning_rate: 0.0001 # Generator's learning rate.
|
||
|
step_size: 200000 # Generator's scheduler step size.
|
||
|
gamma: 0.5 # Generator's scheduler gamma.
|
||
|
# At each step size, lr will be multiplied by this parameter.
|
||
|
generator_grad_norm: 10 # Generator's gradient norm.
|
||
|
discriminator_optimizer_params:
|
||
|
epsilon: 1.0e-6 # Discriminator's epsilon.
|
||
|
weight_decay: 0.0 # Discriminator's weight decay coefficient.
|
||
|
discriminator_scheduler_params:
|
||
|
learning_rate: 0.00005 # Discriminator's learning rate.
|
||
|
step_size: 200000 # Discriminator's scheduler step size.
|
||
|
gamma: 0.5 # Discriminator's scheduler gamma.
|
||
|
# At each step size, lr will be multiplied by this parameter.
|
||
|
discriminator_grad_norm: 1 # Discriminator's gradient norm.
|
||
|
|
||
|
###########################################################
|
||
|
# INTERVAL SETTING #
|
||
|
###########################################################
|
||
|
discriminator_train_start_steps: 100000 # Number of steps to start to train discriminator.
|
||
|
train_max_steps: 400000 # Number of training steps.
|
||
|
save_interval_steps: 5000 # Interval steps to save checkpoint.
|
||
|
eval_interval_steps: 1000 # Interval steps to evaluate the network.
|
||
|
|
||
|
###########################################################
|
||
|
# OTHER SETTING #
|
||
|
###########################################################
|
||
|
num_save_intermediate_results: 4 # Number of results to be saved as intermediate results.
|
||
|
num_snapshots: 10 # max number of snapshots to keep while training
|
||
|
seed: 42 # random seed for paddle, random, and np.random
|