What are the pros and cons of supervised, semi-supervised and unsupervised relation extraction in NLP?
Supervised

Pros:


highest accuracy


Cons:


need a large human-labeled training set
brittle (doesn't work well with examples that are in a different genre from the training set)


Semi-supervised

Relation bootstrapping

Pros:


only requires a small set of labeled data (seed relations)


Cons:


complex iterative process


Distant supervision

Pros:


training happens in one go (no iterative process)


Cons:


requires a big database of relations


Unsupervised

Pros:


don't need any labeled data


Cons:


need to process a huge quantity of unlabeled data (usually web crawling)