0

我目前致力于开发西班牙语 (MX) 简短采访(时长约 2 分钟)的音频转录器。我一直在网上冲浪,但找不到这个,也许太容易了:/。在运行 .jar 时,我收到此警告(我假设)来自 es_MX_broadcast...voxforge 包的 /etc/h4.dict 中所有带有重音符号的单词,并且根本没有转录或其他错误。

...

WARNING dictionary The dictionary is missing a phonetic transcription for the word 'kyrgyzst�'

'WARNING dictionary The dictionary is missing a phonetic transcription for the word 'explotaci�'

WARNING dictionary The dictionary is missing a phonetic transcription for the word 'inclu�'

...

我的线索是文本编码器可能存在一些配置问题,但也许我需要创建语言模型。我真的很想训练它,但首先我需要它工作。这是 config.xml 文件的 linguist/dictionary/language_model/acoustic_model 部分

<component name="lexTreeLinguist" 
            type="edu.cmu.sphinx.linguist.lextree.LexTreeLinguist">
    <property name="logMath" value="logMath"/>
    <property name="acousticModel" value="wsj"/>
    <property name="languageModel" value="trigramModel"/>
    <property name="dictionary" value="dictionary"/>
    <property name="addFillerWords" value="false"/>
    <property name="fillerInsertionProbability" value="1E-10"/>
    <property name="generateUnitStates" value="false"/>
    <property name="wantUnigramSmear" value="true"/>
    <property name="unigramSmearWeight" value="1"/>
    <property name="wordInsertionProbability" 
            value="${wordInsertionProbability}"/>
    <property name="silenceInsertionProbability" 
            value="${silenceInsertionProbability}"/>
    <property name="languageWeight" value="${languageWeight}"/>
    <property name="unitManager" value="unitManager"/>
</component>    

<component name="dictionary" 
    type="edu.cmu.sphinx.linguist.dictionary.FastDictionary">
    <property name="dictionaryPath"
              value="/home/csampez/Desktop/JavaDev/Sphinx/sphinx4/models/acoustic/es_MX_broadcast_cont_2500/etc/h4.dict"/>
    <property name="fillerPath" 
      value="/home/csampez/Desktop/JavaDev/Sphinx/sphinx4/models/acoustic/es_MX_broadcast_cont_2500/etc/filler.dict"/>
    <property name="addSilEndingPronunciation" value="false"/>
    <property name="wordReplacement" value="&lt;sil&gt;"/>
    <property name="unitManager" value="unitManager"/>
</component>

<component name="trigramModel" 
      type="edu.cmu.sphinx.linguist.language.ngram.large.LargeTrigramModel">
    <property name="unigramWeight" value=".7"/>
    <property name="maxDepth" value="3"/>
    <property name="logMath" value="logMath"/>
    <property name="dictionary" value="dictionary"/>
    <property name="location"
     value="/home/csampez/Desktop/JavaDev/Sphinx/sphinx4/models/acoustic/es_MX_broadcast_cont_2500/etc/H4.arpa.Z.DMP"/>
</component>

<component name="wsj"
           type="edu.cmu.sphinx.linguist.acoustic.tiedstate.TiedStateAcousticModel">
    <property name="loader" value="wsjLoader"/>
    <property name="unitManager" value="unitManager"/>
</component>

<component name="wsjLoader" type="edu.cmu.sphinx.linguist.acoustic.tiedstate.Sphinx3Loader">
    <property name="logMath" value="logMath"/>
    <property name="unitManager" value="unitManager"/>
    <property name="location" value="/home/csampez/Desktop/JavaDev/Sphinx/sphinx4/models/acoustic/es_MX_broadcast_cont_2500/model_parameters/hub4_spanish_itesm.cd_cont_2500"/>
</component>

-------- 这是新信息(2013 年 10 月 3 日)----------

谢谢,但这不是问题。该文件已经是 UTF8 并且我已经将 JAVA TOOLS OPTION 设置为 UTF8,还使用 ​​-Dfile.encoding 运行 .jar 并且任何更改,我得到相同的列表。这很奇怪,因为我试图弄清楚文件中是否还有另一个字典列表,但我一无所知。这真的很奇怪,因为 h4.dict 是大写的,警告是小写的,还有一些带有重音的单词没有出现在警告列表中。我试图用更少的单词保存另一个 .dict 文件,但它没有用,实际上警告中出现了更多的单词。

我不知道我没有像其他演示中使用的那样将 .jar 用于声学模型是否重要,或者是否与根本没有转录或其他错误的事实有关。

我真的希望任何人都可以帮助我弄清楚,同时我会更加努力。

非常感谢提前

4

1 回答 1

0

您需要将文件转换为 UTF-8

您需要使用 java 选项 -Dfile.encoding=utf-8 来确保 java VM 认为所有输入文件都是 UTF-8

最重要的是,es_MX_broadcast_cont 需要特定的特征提取器。您需要在配置文件中替换DeltasFeatureExtractor为。S3FeatureExtractor否则精度为零。

于 2013-10-01T07:08:20.203 回答