Speed aside, quality did not improve significantly?

W dniu 14.11.2014 o 11:11, Eva Hasler pisze:
Let's say there was a bit of disillusionment about the advantages of online vs batch mira. Online mira was slow in comparison, but that's also because the implementation was still in a kind of development state and not optimised


On Fri, Nov 14, 2014 at 9:59 AM, Marcin Junczys-Dowmunt <junc...@amu.edu.pl <mailto:junc...@amu.edu.pl>> wrote:

    Thanks. For some reasons I usually have quite week results with
    kbmira.
    What happened to that interesting Online MIRA idea? Died due to
    lack of
    maintenance?

    W dniu 14.11.2014 o 10:54, Barry Haddow pisze:
    > Hi Marcin
    >
    > Our default option would be kbmira (kbest batch mira). It seems
    to be
    > the most stable,
    >
    > cheers - Barry
    >
    > On 14/11/14 09:43, Marcin Junczys-Dowmunt wrote:
    >> Apropos MIRA, what's the current best practice tuner for sparse
    >> features? What are you guys using now for say WMT-grade systems?
    >>
    >> W dniu 14.11.2014 o 10:39, Barry Haddow pisze:
    >>> Hi Prashant
    >>>
    >>> We had to do these kind of dynamic weight updates for online
    MIRA. The
    >>> code is still there, although might have rotted, start by
    looking at
    >>> the
    >>> weight update methods in StaticData,
    >>>
    >>> cheers - Barry
    >>>
    >>> On 13/11/14 17:05, Prashant Mathur wrote:
    >>>> But in CAT scenario we do like this:
    >>>>
    >>>> translate: sentence 1
    >>>> tune: sentence 1 , post-edit 1
    >>>> translate: sentence 2
    >>>> tune: sentence 2 , post-edit 2
    >>>> ...
    >>>>
    >>>> In this case, I don't have any features generated or tuned
    before I
    >>>> start translating the first sentence.
    >>>>
    >>>> Old version is complicated, I am coding on the latest version
    now.
    >>>>
    >>>> --Prashant
    >>>>
    >>>>
    >>>> On Thu, Nov 13, 2014 at 5:26 PM, Philipp Koehn
    <pko...@inf.ed.ac.uk <mailto:pko...@inf.ed.ac.uk>
    >>>> <mailto:pko...@inf.ed.ac.uk <mailto:pko...@inf.ed.ac.uk>>> wrote:
    >>>>
    >>>>       Hi,
    >>>>
    >>>>       Typically you want to learn these feature weights when
    >>>> tuning. The
    >>>>       current setup supports and produces a sparse feature file.
    >>>>
    >>>>       -phi
    >>>>
    >>>>       On Nov 13, 2014 11:18 AM, "Prashant Mathur"
    <prash...@fbk.eu <mailto:prash...@fbk.eu>
    >>>>       <mailto:prash...@fbk.eu <mailto:prash...@fbk.eu>>> wrote:
    >>>>
    >>>>           what if I don't know the feature names before hand?
    >>>>           In that case, can I set the weights directly during
    >>>> decoding?
    >>>>
    >>>>           On Thu, Nov 13, 2014 at 4:59 PM, Barry Haddow
    >>>>           <bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>
    >>>>           <mailto:bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>>> wrote:
    >>>>
    >>>>               Hi Prashant
    >>>>
    >>>>               You add something like this to your moses.ini:
    >>>>
    >>>>               [weight-file]
    >>>>  /path/to/sparse/weights/file
    >>>>
    >>>>               The sparse weights file has the form:
    >>>>
    >>>>               name1 weight1
    >>>>               name2 weight2
    >>>>               name3 weight3
    >>>>               .
    >>>>               .
    >>>>               .
    >>>>
    >>>>               At least that's how it works in Moses v2.
    >>>>
    >>>>               cheers - Barry
    >>>>
    >>>>               On 13/11/14 15:42, Prashant Mathur wrote:
    >>>>
    >>>>                   Thanks a lot Barry for your answers.
    >>>>
    >>>>                   I have another question.
    >>>>                   When I print these sparse features at the
    end of
    >>>>                   decoding, all sparse features are assigned a
    >>>> weight of
    >>>>                   0 because all of them were initialized during
    >>>> decoding.
    >>>>                   How can I set these weights for sparse features
    >>>> before
    >>>>                   they are evaluated?
    >>>>
    >>>>
    >>>>                   Thanks Hieu for the link..
    >>>>                   I am going to update the code as soon as I
    can.. but
    >>>>                   it will take some time.. will get back to
    you when I
    >>>>                   do that.
    >>>>
    >>>>                   --Prashant
    >>>>
    >>>>
    >>>>                   On Thu, Nov 13, 2014 at 2:34 PM, Hieu Hoang
    >>>>                   <hieu.ho...@ed.ac.uk
    <mailto:hieu.ho...@ed.ac.uk> <mailto:hieu.ho...@ed.ac.uk
    <mailto:hieu.ho...@ed.ac.uk>>
    >>>>                   <mailto:hieu.ho...@ed.ac.uk
    <mailto:hieu.ho...@ed.ac.uk>
    >>>>                   <mailto:hieu.ho...@ed.ac.uk
    <mailto:hieu.ho...@ed.ac.uk>>>> wrote:
    >>>>
    >>>>                       re-iterating what Barry said, you
    should use the
    >>>>                   github moses if
    >>>>                       you want to create your own feature
    functions,
    >>>>                   especially with
    >>>>                       sparse features. The reasons:
    >>>>                         1. Adding new feature functions is a
    pain in v
    >>>>                   0.91. It's
    >>>>                       trivial now. You can watch my talk to find
    >>>> out why
    >>>> http://lectures.ms.mff.cuni.cz/video/recordshow/index/44/184
    >>>>                         2. It's confusing exactly when the
    feature
    >>>>                   functions are
    >>>>                       computed. It's clear now (hopefully!)
    >>>>                         3. I think you had to set special flags
    >>>>                   somewhere to use sparse
    >>>>                       features. Now, all feature functions
    can use
    >>>>                   sparse features as
    >>>>                       well as dense features
    >>>>                         4. I don't remember the 0.91 code very
    >>>> well. So
    >>>>                   I can't help you
    >>>>                       if you get stuck
    >>>>
    >>>>
    >>>>                       On 13 November 2014 11:06, Barry Haddow
    >>>>                       <bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>
    >>>>                   <mailto:bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>>
    >>>>                   <mailto:bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>
    >>>> <mailto:bhad...@staffmail.ed.ac.uk
    <mailto:bhad...@staffmail.ed.ac.uk>>>>
    >>>>
    >>>>                       wrote:
    >>>>
    >>>>                           Hi Prashant
    >>>>
    >>>>                           I tried to answer your questions
    inline:
    >>>>
    >>>>
    >>>>                           On 12/11/14 20:27, Prashant Mathur
    wrote:
    >>>>                           > Hi All,
    >>>>                           >
    >>>>                           > I have a question about implementing
    >>>> sparse
    >>>>                   feature function.
    >>>>                           > I went through the details on its
    >>>>                   implementation, still
    >>>>                           somethings are
    >>>>                           > not clear.
    >>>>                           > FYI, I am using an old version of
    moses
    >>>>                   which dates back to
    >>>>                           Release
    >>>>                           > 0.91 I guess. So, I am sorry if my
    >>>> questions
    >>>>                   don't relate to the
    >>>>                           > latest implementation.
    >>>>
    >>>>                           This is a bad idea. The FF
    interface has
    >>>>                   changed a lot since 0.91.
    >>>>
    >>>>                           >
    >>>>                           > 1. I was looking at the
    >>>> TargetNgramFeature where
    >>>>  MakePrefixNgrams adds
    >>>>                           > features in Evaluate function.
    From the
    >>>> code
    >>>>                   it seems
    >>>>  MakePrefixNgrams
    >>>>                           > is adding sparse features on the fly.
    >>>> Is it
    >>>>                   correct?
    >>>>
    >>>>                           Yes, you can add sparse features on
    the fly.
    >>>>                   That's really
    >>>>                           what makes
    >>>>                           them sparse features.
    >>>>
    >>>>                           >
    >>>>                           > what is the weight assigned to
    this newly
    >>>>                   added feature? 1 or 0?
    >>>>
    >>>>                           The weight comes from the weights
    file that
    >>>>                   you provide at
    >>>>                           start-up. If
    >>>>                           the feature is not in the weights
    file, then
    >>>>                   it gets a weight
    >>>>                           of 0.
    >>>>
    >>>>                           >
    >>>>                           > 2. What is the difference between
    these
    >>>> two
    >>>>                   functions?
    >>>>                           >
    >>>>                           > /void PlusEquals(const
    ScoreProducer*sp,
    >>>>                   const std::string&
    >>>>                           name,
    >>>>                           > float score)/
    >>>>                           > /
    >>>>                           > /
    >>>>                           > /void SparsePlusEquals(const
    std::string&
    >>>>                   full_name, float
    >>>>                           score)
    >>>>                           > /
    >>>>
    >>>>                           In the first, a string from the
    >>>> ScoreProducer
    >>>>                   is prepended to
    >>>>                           the name,
    >>>>                           whilst in the second the string
    full_name is
    >>>>                   used as the name.
    >>>>                           I think
    >>>>                           we should really use the first form
    to keep
    >>>>                   features in their own
    >>>>                           namespace, but the second form has
    >>>> pervaded Moses.
    >>>>
    >>>>                           >
    >>>>                           > It seems like both of them are
    used for
    >>>>                   updating sparse feature
    >>>>                           > values.. correct?
    >>>>                           > Or, do the first one points to sparse
    >>>>                   features of a
    >>>>                           particular FF and
    >>>>                           > second one to generic sparse
    features?
    >>>>                           >
    >>>>                           > 3. How is the structure like if I
    use one
    >>>>  StatelessFeatureFunction
    >>>>                           > with unlimited scores? Is it
    different
    >>>> from
    >>>>                   having unlimited
    >>>>                           sparse
    >>>>                           > features?
    >>>>                           >
    >>>>                           > I assume if there is one FF then
    there is
    >>>>                   one weight
    >>>>                           assigned to it
    >>>>                           > but in the case of sparse
    features I have
    >>>>                   one weight for
    >>>>                           each feature.
    >>>>                           FFs can be dense or sparse. What
    that really
    >>>>                   means is that the
    >>>>                           number of
    >>>>                           feature values for a dense FF is
    known in
    >>>>                   advance (and so space is
    >>>>                           allocated in the feature value
    array) but
    >>>> for
    >>>>                   sparse FFs the
    >>>>                           number of
    >>>>                           feature values are not known in
    advance. So
    >>>>                   even dense FFs can
    >>>>                           have
    >>>>                           several weights associated with
    them - e.g.
    >>>>                   the phrase table
    >>>>                           features.
    >>>>                           In more recent versions of Moses a
    given FF
    >>>>                   can have both
    >>>>                           dense and
    >>>>                           sparse values.
    >>>>
    >>>>                           >
    >>>>                           > 4. In general when should I
    compute the
    >>>>                   sparse features?
    >>>>
    >>>>                           In general, computing them as soon
    as you
    >>>> can
    >>>>                   will probably
    >>>>                           make your
    >>>>                           code more efficient. When you are
    able to
    >>>>                   compute your sparse
    >>>>                           feature
    >>>>                           depends on the feature itself. For
    >>>> example, if
    >>>>                   the feature
    >>>>                           depends on
    >>>>                           only on the phrase pair then it
    could be
    >>>>                   computed and stored
    >>>>                           in the
    >>>>                           phrase table. This makes the phrase
    table
    >>>>                   bigger (which could
    >>>>                           slow you
    >>>>                           down) but saves on computation at
    >>>> decoding. On
    >>>>                   the other hand,
    >>>>                           a sparse
    >>>>                           reordering feature has to be mainly
    computed
    >>>>                   during decoding,
    >>>>                           since we
    >>>>                           do not know the ordering of
    segments until
    >>>>                   decoding. When I
    >>>>                           implemented
    >>>>                           sparse reordering features though, I
    >>>>                   precomputed the feature
    >>>>                           names since
    >>>>                           you don't want to do string
    concatenation
    >>>>                   during decoding.
    >>>>
    >>>>
    >>>>                           cheers - Barry
    >>>>
    >>>>                           >
    >>>>                           > Thanks for the patience,
    >>>>                           > --Prashant
    >>>>                           >
    >>>>                           > PS: I am still trying to figure
    out stuff,
    >>>>                   so questions
    >>>>                           might seem stupid.
    >>>>                           >
    >>>>                           >
    >>>>                           >
    >>>> _______________________________________________
    >>>>                           > Moses-support mailing list
    >>>>                           > Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>
    >>>>                   <mailto:Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>>
    >>>>                   <mailto:Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>
    >>>>                   <mailto:Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>>>
    >>>>                           >
    >>>> http://mailman.mit.edu/mailman/listinfo/moses-support
    >>>>
    >>>>
    >>>>                           --
    >>>>                           The University of Edinburgh is a
    charitable
    >>>>                   body, registered in
    >>>>                           Scotland, with registration number
    SC005336.
    >>>>
    >>>> _______________________________________________
    >>>>                           Moses-support mailing list
    >>>> Moses-support@mit.edu <mailto:Moses-support@mit.edu>
    <mailto:Moses-support@mit.edu <mailto:Moses-support@mit.edu>>
    >>>>                   <mailto:Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>
    >>>>                   <mailto:Moses-support@mit.edu
    <mailto:Moses-support@mit.edu>>>
    >>>> http://mailman.mit.edu/mailman/listinfo/moses-support
    >>>>
    >>>>
    >>>>
    >>>>
    >>>>                       --     Hieu Hoang
    >>>>                       Research Associate
    >>>>                       University of Edinburgh
    >>>> http://www.hoang.co.uk/hieu
    >>>>
    >>>>
    >>>>
    >>>>
    >>>>               --
    >>>>               The University of Edinburgh is a charitable body,
    >>>>               registered in
    >>>>               Scotland, with registration number SC005336.
    >>>>
    >>>>
    >>>>
    >>>>  _______________________________________________
    >>>>           Moses-support mailing list
    >>>> Moses-support@mit.edu <mailto:Moses-support@mit.edu>
    <mailto:Moses-support@mit.edu <mailto:Moses-support@mit.edu>>
    >>>> http://mailman.mit.edu/mailman/listinfo/moses-support
    >>>>
    >>>>
    >> _______________________________________________
    >> Moses-support mailing list
    >> Moses-support@mit.edu <mailto:Moses-support@mit.edu>
    >> http://mailman.mit.edu/mailman/listinfo/moses-support
    >>
    >
    >

    _______________________________________________
    Moses-support mailing list
    Moses-support@mit.edu <mailto:Moses-support@mit.edu>
    http://mailman.mit.edu/mailman/listinfo/moses-support



_______________________________________________
Moses-support mailing list
Moses-support@mit.edu
http://mailman.mit.edu/mailman/listinfo/moses-support

Reply via email to