summaryrefslogtreecommitdiffstats
path: root/utils/training/gen_ngram.cpp
diff options
context:
space:
mode:
authorPeng Wu <alexepico@gmail.com>2011-04-18 16:59:03 +0800
committerPeng Wu <alexepico@gmail.com>2011-04-18 16:59:03 +0800
commitc418ddb0e8ec1eb8e79cb03e83ed3ebc202d02e5 (patch)
tree6833bd52722b0655858f060e8b7fe0df7e0568ce /utils/training/gen_ngram.cpp
parent0b113f330653b82be8a87af8b8b4ac826e72b296 (diff)
downloadlibpinyin-c418ddb0e8ec1eb8e79cb03e83ed3ebc202d02e5.tar.gz
libpinyin-c418ddb0e8ec1eb8e79cb03e83ed3ebc202d02e5.tar.xz
libpinyin-c418ddb0e8ec1eb8e79cb03e83ed3ebc202d02e5.zip
use new bi-gram
Diffstat (limited to 'utils/training/gen_ngram.cpp')
-rw-r--r--utils/training/gen_ngram.cpp30
1 files changed, 15 insertions, 15 deletions
diff --git a/utils/training/gen_ngram.cpp b/utils/training/gen_ngram.cpp
index 3233cee..6109e92 100644
--- a/utils/training/gen_ngram.cpp
+++ b/utils/training/gen_ngram.cpp
@@ -86,7 +86,7 @@ int main(int argc, char * argv[]){
phrase_index.load(2, chunk);
Bigram bigram;
- bigram.attach(NULL, bigram_filename);
+ bigram.attach(bigram_filename, ATTACH_CREATE|ATTACH_READWRITE);
char* linebuf = (char *)malloc ( 1024 * sizeof (char) );
@@ -113,31 +113,31 @@ int main(int argc, char * argv[]){
phrase_index.add_unigram_frequency(cur_token, 1);
}
if ( cur_token ){
- SingleGram * system = NULL, * user = NULL;
+ SingleGram * single_gram = NULL;
if ( 0 == last_token ){
if (train_pi_gram)
- bigram.load(sentence_start, system, user);
+ bigram.load(sentence_start, single_gram);
} else
- bigram.load(last_token, system, user);
- assert(NULL == system);
- if ( NULL == user ){
- user = new SingleGram;
+ bigram.load(last_token, single_gram);
+
+ if ( NULL == single_gram ){
+ single_gram = new SingleGram;
}
guint32 freq, total_freq;
//increase freq
- if (user->get_freq(cur_token, freq))
- user->set_freq(cur_token, freq + 1);
+ if (single_gram->get_freq(cur_token, freq))
+ single_gram->set_freq(cur_token, freq + 1);
else
- user->insert_freq(cur_token, 1);
+ single_gram->insert_freq(cur_token, 1);
//increase total freq
- user->get_total_freq(total_freq);
- user->set_total_freq(total_freq + 1);
+ single_gram->get_total_freq(total_freq);
+ single_gram->set_total_freq(total_freq + 1);
if ( 0 == last_token ){
if ( train_pi_gram )
- bigram.store(sentence_start, user);
+ bigram.store(sentence_start, single_gram);
}else
- bigram.store(last_token, user);
- delete user;
+ bigram.store(last_token, single_gram);
+ delete single_gram;
}
}