you can't selectively prevent a feature function from being called.

You can zero out it's weight, and write another feature function which
selectively copies the score from the original feature function into it's
own score.

This is what the phrase table
   PhraseDictionaryMultiModel
does.

However, with language models, it's a bit more tricky. LMs are statefull
features, ie. they return state information which affect recombination. You
can't prevent the state from affecting recombination even if you the
weights are zero





On 10 June 2014 16:10, Lars Bungum <[email protected]> wrote:

> On 10. juni 2014 14:46, Hieu Hoang wrote:
>
>> a language model ultimately inherits from FeatureFunction. It loads data
>> by overriding
>>    virtual void Load();
>>
> I see that this is called in void StaticData::LoadFeatureFunctions(),
> which in turn is populated by FeatureFunction::GetFeatureFunctions().  Is
> that correct?
>
> What I want is to load all the LMs initially, but not using them all "side
> by side" while decoding, but in order to produce a special feature.  Can I
> use the current infrastructure to do this?  By giving their paths in
> moses.ini and somehow accessing them in my custom feature inside FF/ ?
> Loading the LMs each time inside the feature will be to slow, so I need
> some way to access the "centrally" loaded LMs.
>
> //LB
>
>


-- 
Hieu Hoang
Research Associate
University of Edinburgh
http://www.hoang.co.uk/hieu
_______________________________________________
Moses-support mailing list
[email protected]
http://mailman.mit.edu/mailman/listinfo/moses-support

Reply via email to