Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

متوقف شدن fine-tune در اپک های نهایی #35

Open
atoofihub opened this issue Feb 16, 2024 · 2 comments
Open

متوقف شدن fine-tune در اپک های نهایی #35

atoofihub opened this issue Feb 16, 2024 · 2 comments

Comments

@atoofihub
Copy link

atoofihub commented Feb 16, 2024

وقتی از مدل vista برای train و fine-tune استفاده میکنیم ، در اپک های نهایی مانند ۹۴۰از ۱۰۰۰ اپک مورد نظر متوقف میشود و دیگر ادامه نمیدهد.
این اتفاق هر بار تکرار میشود و در اپک های مختلفی مانند ۹۲۰ و یا ۹۴۰ متوقف میشود و هر بار لاگ usage cpu , gpu , RAM مورد برسی و رصد قرار میگیرد اما،
هیچکدام دارای انامولی یا ناهنجاری نیستند و از نصف هم بیشتر نمیشوند.
ما برای عملیات train از کد زیر استفاده کرده ایم.

import os

from trainer import Trainer, TrainerArgs

from TTS.tts.configs.shared_configs import BaseDatasetConfig , CharactersConfig
from TTS.config.shared_configs import BaseAudioConfig
from TTS.tts.configs.vits_config import VitsConfig
from TTS.tts.datasets import load_tts_samples
from TTS.tts.models.vits import Vits, VitsAudioConfig
from TTS.tts.utils.text.tokenizer import TTSTokenizer
from TTS.utils.audio import AudioProcessor

output_path = "./TTSCoqui/V11/Outputs"

dataset_config = BaseDatasetConfig(
    formatter="mozilla", meta_file_train="metadata.csv", path="./TTSCoqui/Data/dataset" 
)

audio_config = BaseAudioConfig(
    sample_rate=22050,
    do_trim_silence=True,
    resample=False,
    mel_fmin=0,
    mel_fmax=None 
)

character_config=CharactersConfig(
    characters='ءابتثجحخدذرزسشصضطظعغفقلمنهويِپچژکگیآأؤإئ',
    punctuations='!(),-.:;? ̠،؛؟‌<>',
    phonemes='ˈˌːˑpbtdʈɖcɟkɡqɢʔɴŋɲɳnɱmʙrʀⱱɾɽɸβfvθðszʃʒʂʐçʝxɣχʁħʕhɦɬɮʋɹɻjɰlɭʎʟaegiouwyɪʊ̩æɑɔəɚɛɝɨ̃ʉʌʍ0123456789"#$%*+/=ABCDEFGHIJKLMNOPRSTUVWXYZ[]^_{}',
    pad="<PAD>",
    eos="<EOS>",
    bos="<BOS>",
    blank="<BLNK>",
    characters_class="TTS.tts.utils.text.characters.IPAPhonemes",
)

config = VitsConfig(
    audio=audio_config,
    run_name="vits_fa_female_finetune",
    batch_size=8,
    eval_batch_size=4,
    batch_group_size=5,
    num_loader_workers=0,
    num_eval_loader_workers=2,
    run_eval=True,
    test_delay_epochs=-1,
    epochs=1000,
    save_step=1000,
    text_cleaner="basic_cleaners",
    use_phonemes=True,
    phoneme_language="fa",
    characters=character_config,
    phoneme_cache_path=os.path.join(output_path, "phoneme_cache"),
    compute_input_seq_cache=True,
    print_step=25,
    print_eval=True,
    mixed_precision=False,
    test_sentences=[
        ["سلام وقت بخیر عزیزی هستم چطور میتونم کمکتون کنم"],
        ["من بهتون اطلاع میدم عذرخواهی می کنم"],
        ["خواهش می کنم خداحافظ"],
        ["الو صدای بنده رو دارید فرمایید"]
    ],
    output_path=output_path,
    datasets=[dataset_config],
    lr = 0.00001,
)

# INITIALIZE THE AUDIO PROCESSOR
# Audio processor is used for feature extraction and audio I/O.
# It mainly serves to the dataloader and the training loggers.
ap = AudioProcessor.init_from_config(config)

# INITIALIZE THE TOKENIZER
# Tokenizer is used to convert text to sequences of token IDs.
# config is updated with the default characters if not defined in the config.
tokenizer, config = TTSTokenizer.init_from_config(config)

# LOAD DATA SAMPLES
# Each sample is a list of ```[text, audio_file_path, speaker_name]```
# You can define your custom sample loader returning the list of samples.
# Or define your custom formatter and pass it to the `load_tts_samples`.
# Check `TTS.tts.datasets.load_tts_samples` for more details.
train_samples, eval_samples = load_tts_samples(
    dataset_config,
    eval_split=True,
    eval_split_max_size=config.eval_split_max_size,
    eval_split_size=config.eval_split_size,
)

# init model
model = Vits(config, ap, tokenizer, speaker_manager=None)

# init the trainer and 🚀
trainer = Trainer(
    TrainerArgs(),
    config,
    output_path,
    model=model,
    train_samples=train_samples,
    eval_samples=eval_samples,
)
trainer.fit()

منابع مورد استفاده:

- Python version 3.9.18
- CUDA Version: 12.2
- GPU RTX 4060 Ti
- GPU Memory 16G
- PyTorch version 2.2.0+cu121
@karim23657
Copy link
Owner

karim23657 commented Feb 25, 2024

@atoofihub سلام،

  • باچه پیامی از طرف coqui tts متوقف میشه؟(توی کنسول یا cmd چی نوشته)

@atoofihub
Copy link
Author

@karim23657
سلام
توی کنسول هیچ پیامی نمیده
صرفا متوقف میشه
روی یه اپک گیر میکنه و مغمولا اپک های پایانیه و هیچ اروری هم نمیده
فقط usage cpu و gpu به صفر میرسه
مشکل ما هم دقیقا همینه که هیچ ارور یا پیامی نمیده

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants