[Subject Prev][Subject Next][Thread Prev][Thread Next][Date Index][Thread Index]

[hts-users:01798] Re: F0 modelling


Hi,

Javi Palenzuela wrote:

After reading the papers, the mailing list and looking at the code, I
still don't understand at 100% how the voiced/unvoiced decision is
practically trained using MSD.

I see that the decision is made using the weight of the mixture of the
first stream. In the data, LZERO is used to flag the unvoiced regions.
But how is the weight updated accordingly with this?

Frames containing LZERO as their F0 values are unvoiced. Other frames are voiced. By running the Forward-Backward algorithm, you can get the state occupancy probability for each frame. Using state occupancy probability, you can get the following information:

#UV -> total occupancy counts of unvoiced frames assigned to this state
#V  -> total occupancy counts of voiced   frames assigned to this state

Then, you can estimate weights for V/UV as follows:

weight_uv = #UV / (#UV + #V)
weight_v  = #V  / (#UV + #V)

At the synthesis stage, if weight_v>=0.5, this state is treated as voiced, otherwise unvoiced.

Regards,

Heiga ZEN (Byung Ha CHUN)

--
--------------------------
Heiga ZEN (Byung Ha CHUN)
Speech Technology Group
Cambridge Research Lab
Toshiba Research Europe
phone: +44 1223 436975

______________________________________________________________________
This email has been scanned by the MessageLabs Email Security System.
For more information please visit http://www.messagelabs.com/email ______________________________________________________________________
Follow-Ups
[hts-users:01799] Re: F0 modelling, Matt Shannon
References
[hts-users:01797] F0 modelling, Javi Palenzuela