[SRILM User List] c++ sample for building language model
Solomon Getachew
sgetachew92 at yahoo.com
Sat Mar 9 14:33:23 PST 2013
Dear All
I will like developed Multiple pronunciation Modeling in ASR for Amharic language based on Knowledge Based i need to get sample code is there any one help me?
thanks in advance
________________________________
From: mohsen jadidi <mohsen.jadidi at gmail.com>
To: yasser hifny <yhifny at yahoo.com>
Cc: "SRILM-User at speech.sri.com" <SRILM-User at speech.sri.com>
Sent: Friday, March 8, 2013 1:10 PM
Subject: Re: [SRILM User List] c++ sample for building language model
Thanks for your reply. Very helpful. But don't we need to use ssIndex and seIndex to build lexicon language model and then use it for next step?
On Fri, Mar 8, 2013 at 9:49 PM, yasser hifny <yhifny at yahoo.com> wrote:
Hi Mohsen,
>
>
>code sample that I use in my work is
>
>
>// gloable variables
>Vocab*g_srilm_vocab;
>
>Ngram*g_model;
>
>
>double GetLogWordProb(const std::string& strCurrWord,const vector<std::string>& vstrHistory)
>{
>floatfResult;
>
>
>size_t len = 1 + vstrHistory.size()+1;
>VocabIndex* WordIDs=new VocabIndex[len];
>WordIDs[0] = g_srilm_vocab->getIndex((char*)(strCurrWord.c_str()), g_srilm_vocab->unkIndex());
>for(size_t i=0;i<vstrHistory.size();i++)
>WordIDs[i+1] = vstrHistory[i]!="<s>"?
>g_srilm_vocab->getIndex((char*)(vstrHistory[i].c_str()), g_srilm_vocab->unkIndex()):Vocab_None;
>WordIDs[vstrHistory.size()+1] = Vocab_None;
>
>
>
>
>for(size_t k=0; k<len;k++)
>{
>DEBUG("k=%d wordindex:%d wordstring:%s",k,WordIDs[k],g_srilm_vocab->getWord(WordIDs[k]));
>}
>fResult=g_model->wordProb(WordIDs[0], &WordIDs[1]);
>if(fResult==LogP_Zero)fResult=0.0;
>DEBUG("prob=%f",fResult);
>
>
>//g_model->sentenceProb(words, stats);
>delete[] WordIDs;
>
>
>return fResult;
>
>
>}
>
>
>
>
>//in the main function
>
>
>
>
>//--------------------------------
>// Load LM
>//--------------------------------
>g_srilm_vocab= new Vocab;
>g_model=new Ngram(*g_srilm_vocab,nOrder);
>File file(strLangModelFile.c_str(), "r");
>if(!file)
>{
>ERROR("Could not open file %s",strLangModelFile.c_str());
>}
>g_model->read(file, 0);
>for(size_t i=0;i<nOrder;i++)
>TRACE("Num of ngram in model order %d:%d",i+1,g_model->numNgrams(i+1));
>
>
>
>
>Best regards,
>Yasser
>
>
>
>________________________________
> From: Andreas Stolcke <stolcke at icsi.berkeley.edu>
>To: Yi Yang <yangyiycc at gmail.com>
>Cc: SRILM-User at speech.sri.com
>Sent: Friday, March 8, 2013 10:37 PM
>Subject: Re: [SRILM User List] c++ sample for building language model
>
>
>On 3/8/2013 8:06 AM, Yi Yang wrote:
>
>Hi Mohsen,
>>
>>
>>Hope the following codes can be helpful:
you forgot to create the Vocab object. In your case you could create it globally to your code works otherwise:
>
>Vocab vocab;
>
>Andreas
>
>
>
>>
>>void SrilmTest::srilm_init(const char* fname, int order) {
>> File file(fname, "r", 0);
>> assert(file);
>
> ngram = new Ngram(vocab, order);
>> ngram->read(file, false);
>> cerr << "Done\n";
>>}
>>
>>
>>int SrilmTest::srilm_getvoc(const char* word) {
>> return vocab.getIndex((VocabString)word);
>>}
>>
>>
>>float SrilmTest::srilm_wordprob(int w, int* context) {
>> return (float)ngram->wordProb(w, (VocabIndex*)context);
>>}
>>
>>
>>
>>On Thu, Mar 7, 2013 at 3:23 PM, mohsen jadidi <mohsen.jadidi at gmail.com> wrote:
>>
>>Hey,
>>>
>>>
>>>I need to use srilm in my c++ code to build ML. all the examples and slides in the internet explained it using ngram-count command not code. I know should use <Ngram.h> <Vocab.h>. can you point me to a starting point?
>>>
>>>
>>>cheers,
>>>
>>>
>>>
--
>>>Mohsen
>>>
>>>_______________________________________________
>>>SRILM-User site list
>>>SRILM-User at speech.sri.com
>>>http://www.speech.sri.com/mailman/listinfo/srilm-user
>>>
>>
>>
>>
>>
--
>>Sincerely,
>>Yi Yang
>>http://www.cc.gatech.edu/%7Eyyang319/
>>
>>
>>
>>
>>_______________________________________________
SRILM-User site list SRILM-User at speech.sri.com http://www.speech.sri.com/mailman/listinfo/srilm-user
>
>
>_______________________________________________
>SRILM-User site list
>SRILM-User at speech.sri.com
>http://www.speech.sri.com/mailman/listinfo/srilm-user
>
>
>_______________________________________________
>SRILM-User site list
>SRILM-User at speech.sri.com
>http://www.speech.sri.com/mailman/listinfo/srilm-user
>
--
Mohsen Jadidi
_______________________________________________
SRILM-User site list
SRILM-User at speech.sri.com
http://www.speech.sri.com/mailman/listinfo/srilm-user
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.speech.sri.com/pipermail/srilm-user/attachments/20130309/b5f38ee3/attachment.html>
More information about the SRILM-User
mailing list