vishred18's picture
Upload 364 files
d5ee97c
raw
history blame
5.92 kB
# This is the hyperparameter configuration file for Hifigan.
# Please make sure this is adjusted for the LJSpeech dataset. If you want to
# apply to the other dataset, you might need to carefully change some parameters.
# This configuration performs 4000k iters.
###########################################################
# FEATURE EXTRACTION SETTING #
###########################################################
sampling_rate: 22050 # Sampling rate of dataset.
hop_size: 256 # Hop size.
format: "npy"
###########################################################
# GENERATOR NETWORK ARCHITECTURE SETTING #
###########################################################
model_type: "hifigan_generator"
hifigan_generator_params:
out_channels: 1
kernel_size: 7
filters: 512
use_bias: true
upsample_scales: [8, 8, 2, 2]
stacks: 3
stack_kernel_size: [3, 7, 11]
stack_dilation_rate: [[1, 3, 5], [1, 3, 5], [1, 3, 5]]
use_final_nolinear_activation: true
is_weight_norm: false
###########################################################
# DISCRIMINATOR NETWORK ARCHITECTURE SETTING #
###########################################################
hifigan_discriminator_params:
out_channels: 1 # Number of output channels (number of subbands).
period_scales: [2, 3, 5, 7, 11] # List of period scales.
n_layers: 5 # Number of layer of each period discriminator.
kernel_size: 5 # Kernel size.
strides: 3 # Strides
filters: 8 # In Conv filters of each period discriminator
filter_scales: 4 # Filter scales.
max_filters: 1024 # maximum filters of period discriminator's conv.
is_weight_norm: false # Use weight-norm or not.
melgan_discriminator_params:
out_channels: 1 # Number of output channels.
scales: 3 # Number of multi-scales.
downsample_pooling: "AveragePooling1D" # Pooling type for the input downsampling.
downsample_pooling_params: # Parameters of the above pooling function.
pool_size: 4
strides: 2
kernel_sizes: [5, 3] # List of kernel size.
filters: 16 # Number of channels of the initial conv layer.
max_downsample_filters: 1024 # Maximum number of channels of downsampling layers.
downsample_scales: [4, 4, 4, 4] # List of downsampling scales.
nonlinear_activation: "LeakyReLU" # Nonlinear activation function.
nonlinear_activation_params: # Parameters of nonlinear activation function.
alpha: 0.2
is_weight_norm: false # Use weight-norm or not.
###########################################################
# STFT LOSS SETTING #
###########################################################
stft_loss_params:
fft_lengths: [1024, 2048, 512] # List of FFT size for STFT-based loss.
frame_steps: [120, 240, 50] # List of hop size for STFT-based loss
frame_lengths: [600, 1200, 240] # List of window length for STFT-based loss.
###########################################################
# ADVERSARIAL LOSS SETTING #
###########################################################
lambda_feat_match: 10.0
lambda_adv: 4.0
###########################################################
# DATA LOADER SETTING #
###########################################################
batch_size: 16 # Batch size for each GPU with assuming that gradient_accumulation_steps == 1.
batch_max_steps: 8192 # Length of each audio in batch for training. Make sure dividable by hop_size.
batch_max_steps_valid: 81920 # Length of each audio for validation. Make sure dividable by hope_size.
remove_short_samples: true # Whether to remove samples the length of which are less than batch_max_steps.
allow_cache: true # Whether to allow cache in dataset. If true, it requires cpu memory.
is_shuffle: true # shuffle dataset after each epoch.
###########################################################
# OPTIMIZER & SCHEDULER SETTING #
###########################################################
generator_optimizer_params:
lr_fn: "PiecewiseConstantDecay"
lr_params:
boundaries: [100000, 200000, 300000, 400000, 500000, 600000, 700000]
values: [0.000125, 0.000125, 0.0000625, 0.0000625, 0.0000625, 0.00003125, 0.000015625, 0.000001]
amsgrad: false
discriminator_optimizer_params:
lr_fn: "PiecewiseConstantDecay"
lr_params:
boundaries: [100000, 200000, 300000, 400000, 500000]
values: [0.00025, 0.000125, 0.0000625, 0.00003125, 0.000015625, 0.000001]
amsgrad: false
gradient_accumulation_steps: 1 # should be even number or 1.
###########################################################
# INTERVAL SETTING #
###########################################################
discriminator_train_start_steps: 100000 # steps begin training discriminator
train_max_steps: 4000000 # Number of training steps.
save_interval_steps: 20000 # Interval steps to save checkpoint.
eval_interval_steps: 5000 # Interval steps to evaluate the network.
log_interval_steps: 200 # Interval steps to record the training log.
###########################################################
# OTHER SETTING #
###########################################################
num_save_intermediate_results: 1 # Number of batch to be saved as intermediate results.