2
$\begingroup$

I want to write a program that looks at abbreviated words, then figures out what the words are. For example, the abbreviation is "blk comp", and the translation is "black computer".

In order to give it context for more ambiguous terms, I will be inputting sets of words with each request. So, if I input the set "keyboard, software, mouse, monitor", I would expect to get "black computer". On the other hand, if I input "Honda, transmission, mileage, Ford", I then would expect to get "black compact", or at least something that has anything to do with cars.

Basing on the above case scenario, what kind of an algorithm should be applied in this case?

$\endgroup$
2
$\begingroup$

For your first question,take a look at using a skip grab model to find what the abbreviated text is. The skip gram model turns a word into a vector which allows it to be processed by other machine learning algorithms. Or , alternatively you can do some really cool addition and subtraction problems with the resulting vectors. With the skip gram model in your case you could generate a vector for your input and then compare it with other skip gram vectors and once you have found a near perfect match then that is the unabbreviated word.

You could also look at using sparse distributed representations of words to do this. This approach is similar to the skip gram model except that instead of a vector with maybe 500 values a sparse representation may contain thousands of binary digits of which only a couple are positive or 1.

If you would like to look at this approach take a look at cortical.io which has free API that you can use. As for your second question I reccomend that you use a deep neural network in combination with the skip gram model to produce your output.

$\endgroup$
  • $\begingroup$ Thank you, Aiden! This sounds like a good starting point to try to solve this problem. $\endgroup$ – Neo_999 Mar 7 '17 at 16:39

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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