Are there any algorithms (or software libraries) that can be used to detect the similarity of concepts in text, regardless of articulation, grammar, synonyms, etc.?
For example, these phrases:
Outside, it is warm.
Outside, it is hot.
Outside, it is not cold.
It is not cold outside.
Should be similar to this phrase:
It is warm outside.
Ideally, the algorithm (or software) would be capable of generating a score from 0 to 1, based on the concept similarity. The goal is to use this algorithm or software to map a large number of statements to a single, similar original statement. It is for this mapping of a given statement to the original statement that the aforementioned similarity score would be generated.
Does such an algorithm (or software) already exist?