fix Word2WordVec

pull/3030/head
TianYuan 3 years ago
parent 620d10993d
commit 7e11695330

@ -438,11 +438,11 @@ int FrontEngineInterface::GetFinals(const std::string &word,
}
int FrontEngineInterface::Word2WordVec(const std::string &word,
std::vector<std::wstring> &wordvec) {
std::vector<std::wstring> *wordvec) {
std::wstring word_wstr = ppspeech::utf8string2wstring(word);
for (int i = 0; i < word_wstr.length(); i++) {
std::wstring word_sigle(1, word_wstr[i]);
wordvec.push_back(word_sigle);
wordvec->push_back(word_sigle);
}
return 0;
}
@ -785,7 +785,7 @@ int FrontEngineInterface::BuSandi(const std::string &word,
std::wstring bu = L"";
std::vector<std::wstring> wordvec;
// 一个词转成向量形式
if (0 != Word2WordVec(word, wordvec)) {
if (0 != Word2WordVec(word, &wordvec)) {
LOG(ERROR) << "Failed to get word vector";
return -1;
}
@ -812,7 +812,7 @@ int FrontEngineInterface::YiSandhi(const std::string &word,
std::wstring yi = L"";
std::vector<std::wstring> wordvec;
// 一个词转成向量形式
if (0 != Word2WordVec(word, wordvec)) {
if (0 != Word2WordVec(word, &wordvec)) {
LOG(ERROR) << "Failed to get word vector";
return -1;
}
@ -862,7 +862,7 @@ int FrontEngineInterface::NeuralSandhi(const std::string &word,
std::wstring word_wstr = ppspeech::utf8string2wstring(word);
std::vector<std::wstring> wordvec;
// 一个词转成向量形式
if (0 != Word2WordVec(word, wordvec)) {
if (0 != Word2WordVec(word, &wordvec)) {
LOG(ERROR) << "Failed to get word vector";
return -1;
}
@ -985,7 +985,7 @@ int FrontEngineInterface::ThreeSandhi(const std::string &word,
std::vector<std::string> finals_temp;
std::vector<std::wstring> wordvec;
// 一个词转成向量形式
if (0 != Word2WordVec(word, wordvec)) {
if (0 != Word2WordVec(word, &wordvec)) {
LOG(ERROR) << "Failed to get word vector";
return -1;
}
@ -1094,7 +1094,7 @@ std::vector<std::vector<std::string>> FrontEngineInterface::MergeErhua(
std::wstring word_wstr = ppspeech::utf8string2wstring(word);
std::vector<std::wstring> wordvec;
// 一个词转成向量形式
if (0 != Word2WordVec(word, wordvec)) {
if (0 != Word2WordVec(word, &wordvec)) {
LOG(ERROR) << "Failed to get word vector";
}
int word_num = wordvec.size();

@ -98,7 +98,7 @@ class FrontEngineInterface : public TextNormalizer {
// 整个词转成向量形式,向量的每个元素对应词的一个字
int Word2WordVec(const std::string &word,
std::vector<std::wstring> &wordvec);
std::vector<std::wstring> *wordvec);
// 将整个词重新进行 full cut分词后各个词会在词典中
int SplitWord(const std::string &word,

Loading…
Cancel
Save