The decoder should handle no translation without falling over. But yes, the
model is too toy
On 29 Jan 2016 9:15 pm, "Matthias Huck" <mh...@inf.ed.ac.uk> wrote:

> Hi,
>
> It seems to me that this toy string-to-tree setup is either outdated,
> or it always had issues. It should be replaced.
>
> Under real-world conditions, the decoder should always be able to
> produce some hypothesis. We would therefore usually extract a whole set
> of glue rules. And we would typically also add an [unknown-lhs] section
> to the moses.ini that would tell the decoder which left-hand side non
> -terminal labels to use for out-of-vocabulary words. To my knowledge,
> these two techniques are crucial for being able to parse any input
> sentence provided to the chart decoder in syntax-based translation.
>
> So, in my opinion, the problem is most likely neither the server
> implementation nor the syntax-based decoder, but a problematic setup.
> I would consider it okay for the server to crash (or at least print a
> warning) under such circumstances. You don't want it to silently not
> translate complete sentences.
>
> (I must admit that I didn't look into it in too much detail, but it sho
> uld be easy to confirm.)
>
> Cheers,
> Matthias
>
>
> On Fri, 2016-01-29 at 20:28 +0000, Barry Haddow wrote:
> > Hi All
> >
> > I think I see what happened now.
> >
> > When you give the input "dies ist ein haus" to the sample model, the
> > "dies" is unknown, and there is no translation. The server did not check
> > for this condition, and got a seg fault. I have added a check, so if you
> > pull and try again it should not crash.
> >
> > In the log pasted by Martin, he passed "das ist ein haus" to
> > command-line Moses, which works, and gives a translation.
> >
> > I think ideally the sample models should handle unknown words, and give
> > a translation. Maybe adding a glue rule would be sufficient?
> >
> > cheers - Barry
> >
> > On 29/01/16 11:13, Barry Haddow wrote:
> > > Hi
> > >
> > > When I run command-line Moses, I get the output below - i.e. no best
> > > translation. The server crashes for me since it does not check for the
> > > null pointer, but the command-line version does.
> > >
> > > I think there should be a translation for this example.
> > >
> > > cheers - Barry
> > >
> > > [gna]bhaddow: echo 'dies ist ein haus' | ~/moses.new/bin/moses  -f
> > > string-to-tree/moses.ini
> > > Defined parameters (per moses.ini or switch):
> > >           config: string-to-tree/moses.ini
> > >           cube-pruning-pop-limit: 1000
> > >           feature: KENLM name=LM factor=0 order=3 num-features=1
> > > path=lm/europarl.srilm.gz WordPenalty UnknownWordPenalty
> > > PhraseDictionaryMemory input-factor=0 output-factor=0
> > > path=string-to-tree/rule-table num-features=1 table-limit=20
> > >           input-factors: 0
> > >           inputtype: 3
> > >           mapping: 0 T 0
> > >           max-chart-span: 20 1000
> > >           non-terminals: X S
> > >           search-algorithm: 3
> > >           translation-details: translation-details.log
> > >           weight: WordPenalty0= 0 LM= 0.5 PhraseDictionaryMemory0= 0.5
> > > line=KENLM name=LM factor=0 order=3 num-features=1
> path=lm/europarl.srilm.gz
> > > Loading the LM will be faster if you build a binary file.
> > > Reading lm/europarl.srilm.gz
> > >
> ----5---10---15---20---25---30---35---40---45---50---55---60---65---70---75---80---85---90---95--100
> > > **The ARPA file is missing .  Substituting log10 probability -100.000.
> > >
> **************************************************************************************************
> > > FeatureFunction: LM start: 0 end: 0
> > > line=WordPenalty
> > > FeatureFunction: WordPenalty0 start: 1 end: 1
> > > line=UnknownWordPenalty
> > > FeatureFunction: UnknownWordPenalty0 start: 2 end: 2
> > > line=PhraseDictionaryMemory input-factor=0 output-factor=0
> > > path=string-to-tree/rule-table num-features=1 table-limit=20
> > > FeatureFunction: PhraseDictionaryMemory0 start: 3 end: 3
> > > Loading LM
> > > Loading WordPenalty0
> > > Loading UnknownWordPenalty0
> > > Loading PhraseDictionaryMemory0
> > > Start loading text phrase table. Moses format : [3.038] seconds
> > > Reading string-to-tree/rule-table
> > >
> ----5---10---15---20---25---30---35---40---45---50---55---60---65---70---75---80---85---90---95--100
> > >
> ****************************************************************************************************
> > > max-chart-span: 20
> > > Created input-output object : [3.041] seconds
> > > Line 0: Initialize search took 0.000 seconds total
> > > Translating:  dies ist ein haus   ||| [0,0]=X (1) [0,1]=X (1)
> > > [0,2]=X (1) [0,3]=X (1) [0,4]=X (1) [0,5]=X (1) [1,1]=X (1) [1,2]=X (1)
> > > [1,3]=X (1) [1,4]=X (1) [1,5]=X (1) [2,2]=X (1) [2,3]=X (1) [2,4]=X (1)
> > > [2,5]=X (1) [3,3]=X (1) [3,4]=X (1) [3,5]=X (1) [4,4]=X (1) [4,5]=X (1)
> > > [5,5]=X (1)
> > >
> > >     0   1   2   3   4   5
> > >     0   1   2   2   1   0
> > >       0   0   0   2   0
> > >         0   0   4   0
> > >           0   0   0
> > >             0   0
> > >               0
> > > Line 0: Additional reporting took 0.000 seconds total
> > > Line 0: Translation took 0.002 seconds total
> > > Translation took 0.000 seconds
> > > Name:moses      VmPeak:74024 kB VmRSS:11084 kB  RSSMax:36832 kB
> > > user:2.972      sys:0.048       CPU:3.020       real:3.058
> > >
> > >
> > > On 29/01/16 00:40, Hieu Hoang wrote:
> > > > If it works ok on the command line but crashes when using the server,
> > > > then that suggest a server issue.
> > > >
> > > > I don't know much about the server code, to be honest.
> > > >
> > >
> >
> >
>
> --
> The University of Edinburgh is a charitable body, registered in
> Scotland, with registration number SC005336.
>
>
_______________________________________________
Moses-support mailing list
Moses-support@mit.edu
http://mailman.mit.edu/mailman/listinfo/moses-support

Reply via email to