Code Monkey home page Code Monkey logo

Comments (6)

noetits avatar noetits commented on May 18, 2024

Hi,

-If your goal is to have the best results possible with your second voice, and if you have more samples, use them all.
-The batch size is the number of samples you use to compute each step. Let it be 32.
-I think you should train it a lot longer. One step will just modify a tiny bit your model parameters. Try training it 100k steps
-You are right to delete mel and mags. For your finetuning, you should use only YOUR samples. So check after preprocessing if the files that are in mels and mags have the same name as you files (except for the extension)
-Then train.py 1 (you should listen to samples just after doing this, it may already sound good if your second voice is not
-And potentially train.py 2

Noé

from dc_tts.

saya1984 avatar saya1984 commented on May 18, 2024

Hi Noé! Thank you for your reply!
My goal is to have a somewhat recognizable voice with very little data, as Kyubyong's results here: (https://github.com/Kyubyong/speaker_adapted_tts). He said "I use only one minute of the speech samples. The following are the synthesized samples after 10 minutes of fine-tuning training." This 10 minutes of fine-tuning training is what I'm trying to figure out how to do.

I've been producing my new voice/transcript samples by hand. Generating enough for 100k steps would take forever and kind of defeat the purpose of the seed model, as far as I understand. Or do you mean that I can train it with my same single batch for 100k steps?

from dc_tts.

noetits avatar noetits commented on May 18, 2024

ok I see, so your goal is more to have good enough results with very few samples.

So indeed 100k step is going to be too much I guess.

But yes, in that case, I think you should do several steps with your same single batch. In fact in your case one step equals one epoch because one batch contains all your samples. The number of epochs is the number of times your system uses the data during training.

It is hard to tell how much steps you should do. So I would suggest you to try several order of magnitudes (e.g. 1, 5, 10, 50, 100, 500, 1k etc.). You could just run it for some time and doing a backup for these specific steps by replacing this in train.py:

if gs % 1000 == 0:
    sv.saver.save(sess, logdir + '/model_gs_{}'.format(str(gs // 1000).zfill(3) + "k"))

with something like this:

if gs % 10 == 0:
    sv.saver.save(sess, logdir + '/model_gs_{}'.format(str(gs).zfill(6)))
    import os, glob
    from shutil import copy

    if not os.path.exists(logdir+'/backups/'):
        os.makedirs(logdir+'/backups/')

    if np.log10(gs) % 1 == 0 or np.log10(gs/5)%1==0:
        for file in glob.glob(logdir + '/model_gs_{}'.format(str(gs).zfill(6))+'*'):
            print(file)
            copy(file, logdir+'/backups/')

from dc_tts.

saya1984 avatar saya1984 commented on May 18, 2024

Hi again!
I got a recognizable voice results with setting learning rate to 0.01 and running training for 100 epochs. The audio still has a lot of weird artifacts (for example, my guy added "peng" after the last word in a sentence XD), but I definitely got some progress :D
Also, running train.py 2 resulted in nothing but noise being generated, so I just did train.py 1 to get my results.
Thanks for joining me on this adventure. It's been fun :)

from dc_tts.

YuzukiTsuru avatar YuzukiTsuru commented on May 18, 2024

Hi @saya1984 ,I have problem in synthesize,The error is:

 File "synthesize.py", line 28, in synthesize
    saver1.restore(sess, tf.train.latest_checkpoint(hp.logdir + "-1"))
  File "./python3.6/site-packages/tensorflow/python/training/saver.py", line 1534, in restore
    raise ValueError("Can't load save_path when it is None.")
ValueError: Can't load save_path when it is None.

How can i Fix it

from dc_tts.

fathimad11 avatar fathimad11 commented on May 18, 2024

ValueError: Can't load save_path when it is None.
I also have this error

from dc_tts.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.