「より一般的」、「一般的ではない」、「同じ意味」、「反対の意味」などの2つの文字列を一致させるというこの問題があります。
文字列は任意のドメインから取得できます。文字列が人々の電子メールからのものである可能性があると仮定します。
例を挙げると、
String 1 = "movies"
String 2 = "Inception"
ここで、インセプションは映画ほど一般的ではないことを知っておく必要があります (一種の is-a 関係)。
String 1 = "Inception"
String 2 = "Christopher Nolan"
ここで、インセプションはクリストファー・ノーランほど一般的ではないことを知っておく必要があります
String 1 = "service tax"
String 2 = "service tax 2015"
一見すると、S-match でうまくいくように見えます。しかし、WordNet や GeoWordNet 以外のナレッジ ベースで S-match を機能させることができるかどうかはわかりません (そのページに記載されています)。
word2vec
またはを使用するdl4j
と、類似性スコアが得られると思います。more general
しかし、文字列が他の文字列であるかどうかを伝えることもサポートしていますless general
か?
しかし、word2vec はトレーニング セットやウィキペディアなどの大規模なコーパスに基づいている可能性があります。
誰かが前に進む道に光を当てることができますか?