Keyword matching software

Consider algos/softwares that take keywords in one document and match them (possibly a kind of set intersection) with keywords in N other documents, possibly producing a match ranking.

a. Is there a specific name for this?
b. Are there implementations in Java and PHP?

Example use cases would be
  • patients submitting a list of symptoms and then software looking for matches against known conditions
  • applicants submitting skillsets and looking for potential job matches
  • dating websites
LVL 86
Who is Participating?
For a), it *might* be worth scanning “document clustering“ as a topic.
CEHJAuthor Commented:
Great. Thanks for that. Of course, my general googling in the past has brought up that term but also many others that are probably sub-operations of clustering. Curiously difficult to avoid seeing trees when i need the use-case forest
David FavorLinux/LXD/WordPress/Hosting SavantCommented:
You might try just creating a generic approach to this with...

1) Rows of data with an associated condition name.

2) Then use a FTS (Full Text Search) index with keywords describing symptoms, as single words or phrases.

3) Searching simply returns Rows in order of matches... so first match might match all search keywords + subsequent matches are any matches, ordered by number of matches.

So if a person typed in 4 keywords, search results would match 4 keywords, then 3 keywords, the 2, then 1.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.