=== begin forced alignment === -- word alignment -- id: from to n_score unit ---------------------------------------- [ 0 36] -24.533104 <s> [] [ 37 92] -25.693394 こんにちは+感動詞 [こんにちは] [ 93 97] -23.311035 、+補助記号 [、] ... re-computed AM score: -7025.628418 === end forced alignment ===
=== begin forced alignment === -- phoneme alignment -- id: from to n_score unit ---------------------------------------- [ 0 36] -24.533104 silB [ 37 40] -28.812912 k+o [ 41 44] -30.902359 k-o+N [ 45 49] -27.162842 o-N+n [ 50 53] -26.598297 N-n+i [ 54 58] -27.497852 n-i+ch [ 59 66] -24.056824 i-ch+i [ 67 69] -26.273642 ch-i+w [ 70 77] -23.281586 i-w+a [ 78 92] -24.182943 w-a+sp[w-a] [ 93 97] -23.311035 a-sp[sp] ... re-computed AM score: -7025.628418 === end forced alignment ===
=== begin forced alignment === -- state alignment -- id: from to n_score unit ---------------------------------------- [ 0 32] -24.288939 silB #1 [ 33 33] -25.682983 silB #2 [ 34 36] -26.835632 silB #3 [ 37 37] -28.791016 k+o #1 [ 38 39] -29.340027 k+o #2 [ 40 40] -27.780579 k+o #3 [ 41 42] -29.470856 k-o+N #1 [ 43 43] -32.225220 k-o+N #2 [ 44 44] -32.442505 k-o+N #3 [ 45 45] -28.430298 o-N+n #1 [ 46 48] -27.015869 o-N+n #2 [ 49 49] -26.336304 o-N+n #3 .. re-computed AM score: -7025.628418 === end forced alignment ===
無音区間の検出処理は、JuliusLibではlibjulius\src\adin-cut.cにあります。
期待するように区間の検出ができないときには、libjulius\include\julius\define.hで次のマクロを定義します。
/* some definitions for short-pause segmentation */ #define SP_BREAK_EVAL /* output messages for evaluation */ #define SP_BREAK_DEBUG /* output messages for debug */ #define SP_BREAK_RESUME_WORD_BEGIN /* resume word = maxword at beginning of sp area */
SP_BREAK_EVALでは、処理の進捗を確認できます。
jlog("DEBUG: [%d %d %d]\n", time, count, (detected) ? 50 : 0); // time 現在の入力フレーム // count 検出された単語数 // detected 無音区間と認められるならばTRUE。つまり50と出力されるならば、無音区間
SP_BREAK_DEBUGでは、処理の過程を確認できます。
jlog("DEBUG: startword=[%s], last_nword=[%s]\n", …
jlog("DEBUG: sp start %d\n", time);
jlog("DEBUG: sp end %d\n", time);
など
0.0~1.0の値をとり、1.0に近いほど競合候補が存在せず信頼度が高いことを意味します。
仮説のスタックサイズ (-s) が不足すると、「WARNING: id name: hypothesis stack exhausted, terminate search now」として探索が途中で打ち切られます。