I want to build a model that can detect sentences that discuss requests for communication - like 'email me', 'phone us', 'contact us', etc. However, I do not have any labeled data which I can use to simply train a neural network.

How can I go about solving this problem? On way I was thinking was to create an initial labeled dataset by detecting above mentioned phrases. But I am not sure how to generalize and detect sentences expressing the similar sentiment using some other phrase not in my list.

I am open to any other ideas as well. Thank you.

  • $\begingroup$ I modified the title and tags because this is not sentiment analysis (see my answer). Feel free to revert my changes. $\endgroup$
    – Erwan
    Dec 3, 2020 at 13:05

1 Answer 1


First, this is not sentiment analysis, which is about quantifying "affective states", i.e. something along the lines of "like / don't like". This would rather correspond to a specific application of general text classification: predicting whether a sentence contains a contact request.

Now about the specific problem: you're right, it could be a good idea to start by identifying some clearly positive sentences using pattern matching. There are many approaches which can be used to expand this initial set of positive sentences:

  • semi-supervised learning
  • Using semantic similarity between words (for instance with word embeddings) to find more candidate terms for pattern matching
  • Using similarity between sentences to find potential new positive cases, then label these manually (this could be done iteratively)

Note that all the above approaches could work but they are biased in favor of the known positive cases, i.e. they risk missing positive cases which have little similarity with the original ones. The only option to avoid this issue is to take a random subset of sentences and label all of them as either positive or negative.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.