Question about features

46 views
Skip to first unread message

Joshua Cason

unread,
Mar 3, 2015, 7:32:52 PM3/3/15
to dis...@factorie.cs.umass.edu
Hi All,

I've been reading a lot about Factorie and factor graphs trying to wrap my head around it all. In all, I think I am getting how to use it but am still a little stuck on how to use the modeling abstractions.

I was reading the following slide set on Relational Factor Graphs, and I think using their terminology I can phrase my question a little better.


They mention the use of global, pair-wise, and local features. In the tutorial literature on Factorie I think an example of a global feature would be what you guys often call a bias. And I think the unroll methods define pairwise and n-ary-wise relational features. But how are the local features captured? For instance, I can capture tree structure using an unroll method, but are the observable features (e.g., pos tag) for the token connected somehow to the relational features?

Any hints would be greatly appreciated!

Josh

Luke Vilnis

unread,
Mar 4, 2015, 12:14:59 AM3/4/15
to dis...@factorie.cs.umass.edu
Hi Josh,
The CRF literature can be a little weird because it conflates the features that you are conditioning on with the dependencies in the graph that you do inference in. The former just affect what scores your factor graph has at inference time for given factors, the latter actually affect inference by introducing dependencies in the structure you infer. To answer your question broadly, the observable features are just captured when we create the factor scores to do BP or MCMC with. The tree structure is captured by the actual unrolling, as you said. If you give a concrete example, I can try tomorrow to give direction on exactly what goes where :)
Luke

--
--
Factorie Discuss group.
To post, email: dis...@factorie.cs.umass.edu
To unsubscribe, email: discuss+u...@factorie.cs.umass.edu

To unsubscribe from this group and stop receiving emails from it, send an email to discuss+u...@factorie.cs.umass.edu.

Joshua Cason

unread,
Mar 4, 2015, 3:55:30 PM3/4/15
to dis...@factorie.cs.umass.edu
Hi Luke,

Thanks for the explanation. So I guess what you are saying is that defining a score for factors between variables can take advantage of features like pos tags. So in the Token object I can specify features, and during inference a factor connecting it with another Token will perform some operation (e.g., dot product) to get the score for that factor. The factors themselves just allow us to specify which other tokens (labels, etc) to score with. Is that close?

And if so, is that what the Token.attr stores is values for a binary feature vector?

The problem I'm trying to solve is semantic dependency parsing (http://alt.qcri.org/semeval2015/task18/), so I'm also curious about enforcing constraints on the model like "A predicate should only have one argument of each type". I was thinking the FOL constraints might work well for that. 

Josh
Reply all
Reply to author
Forward
0 new messages