languagemodelinternal.h.svn-base
来自「解码器是基于短语的统计机器翻译系统的核心模块」· SVN-BASE 代码 · 共 37 行
SVN-BASE
37 行
#pragma once
#include "LanguageModelSingleFactor.h"
#include "NGramCollection.h"
/** Guaranteed cross-platform LM implementation designed to mimic LM used in regression tests
*/
class LanguageModelInternal : public LanguageModelSingleFactor
{
protected:
std::vector<const NGramNode*> m_lmIdLookup;
NGramCollection m_map;
const NGramNode* GetLmID( const Factor *factor ) const
{
size_t factorId = factor->GetId();
return ( factorId >= m_lmIdLookup.size()) ? NULL : m_lmIdLookup[factorId];
};
float GetValue(const Factor *factor0, State* finalState) const;
float GetValue(const Factor *factor0, const Factor *factor1, State* finalState) const;
float GetValue(const Factor *factor0, const Factor *factor1, const Factor *factor2, State* finalState) const;
public:
LanguageModelInternal(bool registerScore);
bool Load(const std::string &filePath
, FactorCollection &factorCollection
, FactorType factorType
, float weight
, size_t nGramOrder);
float GetValue(const std::vector<const Word*> &contextFactor
, State* finalState = 0
, unsigned int* len = 0) const;
};
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?