[developers] Subsumption check
Emily M. Bender
ebender at uw.edu
Mon Jun 10 18:41:26 CEST 2013
[Moving this to `developers', because I think others might be interested,
and because I'd be interested in input from a broader audience, too.]
Regarding the first point: As I understand it, doing the subsumption check
"outside" --- in the external, 'MRS' universe --- requires that the sem-i
mirror all subsumption relations between types used in variable properties
and between underspecified and fully specified PRED values that the
grammar also has internally. Is there some other reason that we want
to be doing this? (E.g., is there any reason an external MRS-producing
component would need this info?) If not, then I think the case can be
made that the determination of whether a string satisfied the requirements
handed to the generator is a question to be handled grammar-internally.
Having to maintain the same information in two places (grammar and
sem-i) is just asking for bugs. Alternatively, if we could create this part
of the sem-i fully automatically, then the maintenance question disappears.
On Wed, Jun 5, 2013 at 11:32 PM, Woodley Packard
<sweaglesw at sweaglesw.org> wrote:
> The grammar external input MRS is what defines the user's requirements for the realization, and the grammar external output MRS is what the grammarian declares the semantics of the resulting string to be, so those seem like the natural things to compare to me. There is also pressure from Norway and England to not admit that the label "MRS" can apply to anything *other* than those external MRSes.
> From the implementation point of view, there are a number of other types of subsumption checks that could be done, and ACE has tried some of those in the past. The LKB subsumption test is on nominally internal MRSes, but the result MRS gets (at least part of it) passed forward and then back again through the VPM "in order to pick up defaults" (according to the LKB source code). I consider that a hack -- although one that was implemented in the past and currently #ifdef'd out in ACE.
> There is at least one other point worth mentioning about the subsumption check when comparing the LKB to ACE. As you doubtless recall, when actually building edges in the chart, it is normal to work with "specialized" signs, where certain features of the grammar signs are made more specific than they would be in the parsing direction. These specializations include variable properties and skolem constants, and in principal potentially other features as well (such as PRED values, when they are not terminal types on a grammar sign). When the LKB constructs the feature structure for a reading during unpacking, and reads the MRS off of it, it uses the specialized versions of the grammar signs, so that (for example) if the input MRS says [ PERNUM 2sg ] and the grammar sign ordinarily just says [ PERNUM 2nd ], the MRS the LKB constructs for the reading will say [ PERNUM 2sg ]. ACE by contrast constructs the feature structure during unpacking from the original (unspecified) grammar signs, so in this case ACE would say the MRS of the reading is [ PERNUM 2nd ]. This can lead to a different set of readings passing the subsumption test in ACE vs the LKB. Stephan assures me that the LKB is in the wrong about this, and I am happy enough to agree -- after all, the meaning the grammar assigns to a string shouldn't really be different in different generation contexts.
> The question of how to filter generation results in a useful way, though, is perhaps still an open one. Strictly checking for subsumption by the input MRS is the right thing in most situations, I think. The LKB has long implemented the option (which you presumably have been using) to normally only output the subsumed subset, but output all the results if none of them are subsumed. While a handy hack, this strikes me as a unprincipled. Some kind of ranking of the outputs by how severely they fail to be subsumed by the input would be better (sounds a little like optimality theory).
> Does that help to explain?
> On Jun 5, 2013, at 8:01 PM, Emily M. Bender wrote:
>> Hi Woodley,
>> Follow up question from our conversation this afternoon:
>> What is the logic behind using the grammar external MRSes
>> for the subsumption check, rather than the internal ones?
>> Emily M. Bender
>> Associate Professor
>> Department of Linguistics
>> Check out CLMS on facebook! http://www.facebook.com/uwclma
Emily M. Bender
Department of Linguistics
Check out CLMS on facebook! http://www.facebook.com/uwclma
More information about the developers