Difference between revisions of "Structured SVMs"

From Cohen Courses
Jump to navigationJump to search
Line 2: Line 2:
  
 
== The Method and When to Use it ==
 
== The Method and When to Use it ==
Tsochantaridis
 et 
al. 
(2005) 
 –
extends 
their 
2004
 paper

 
  
SVMstruct is a Support Vector Machine (SVM) algorithm for predicting multivariate or structured outputs. It performs supervised learning by approximating a mapping
+
Structured (or Structural) Support Vector Machines (SSVM), as the name states, is a machine learning model that generalizes the [[Support Vector Machines| Support Vector Machine (SVM)]] classifier, allowing training a classifier for structured output.
  
h: X --> Y
+
In general, SSVMs perform supervised learning by approximating a mapping <math>h</math>
using labeled training examples (x1,y1), ..., (xn,yn). Unlike regular SVMs, however, which consider only univariate predictions like in classification and regression, SVMstruct can predict complex objects y like trees, sequences, or sets. Examples of problems with complex outputs are natural language parsing, sequence alignment in protein homology detection, and markov models for part-of-speech tagging. The SVMstruct algorithm can also be used for linear-time training of binary and multi-class SVMs under the linear kernel [4].
 
  
The structured support vector machine is a machine learning algorithm that generalizes the Support Vector Machine (SVM) classifier. Whereas the SVM classifier supports binary classification, multiclass classification and regression, the structured SVM allows training of a classifier for general structured output labels.
+
<math>
As an example, a sample instance might be a natural language sentence, and the output label is an annotated parse tree. Training a classifier consists of showing pairs of correct sample and output label pairs. After training, the structured SVM model allows one to predict for new sample instances the corresponding output label; that is, given a natural language sentence, the classifier can produce the most likely parse tree.
+
h: X \rightarrow Y
 +
</math>
  
 +
where <math>x = \{(x_1,y_1), ..., (x_n,y_n)\}</math> is a set of labeled training examples and <math>Y</math> is a complex structured object, like trees, sequences, or sets, instead of simple univariate predictions (as in the SVM case).
  
 +
Thus, training a SSVM classifier consists of showing pairs of correct sample and output label pairs, that are used for training, allowing to predict for new sample instances the corresponding output label
 +
 +
In NLP one can fing a great variety of problems that rely on complex outputs, such as parsing and Markov Models for part-of-speech tagging.
  
 
== The Algorithm ==  
 
== The Algorithm ==  

Revision as of 16:36, 2 November 2011

Being edited by Rui Correia

The Method and When to Use it

Structured (or Structural) Support Vector Machines (SSVM), as the name states, is a machine learning model that generalizes the Support Vector Machine (SVM) classifier, allowing training a classifier for structured output.

In general, SSVMs perform supervised learning by approximating a mapping

where is a set of labeled training examples and is a complex structured object, like trees, sequences, or sets, instead of simple univariate predictions (as in the SVM case).

Thus, training a SSVM classifier consists of showing pairs of correct sample and output label pairs, that are used for training, allowing to predict for new sample instances the corresponding output label

In NLP one can fing a great variety of problems that rely on complex outputs, such as parsing and Markov Models for part-of-speech tagging.

The Algorithm

Slightly
 different 
version 
of 
the
 loss 
function:


      

Related Papers