ライセンスのtxtファイル間の類似性を計算したいので、どのライセンスに対応しているかを識別するlicense.txtに基づいています。どのような情報検索手法を使用すべきですか?いったん私はtf-idfをプログラムしましたが、これがここに当てはまるかどうかはわかりません。何を指示してるんですか?2つのlicense.txtファイル間の類似性を計算する方法は?
2
A
答えて
3
私は3年以上この問題に取り組んできましたが、それはそれほど些細なものではなく、tf-idfとコサインの類似性はもちろんのこと、単一のアルゴリズムで解決するつもりはありません。
多くの課題がありますが、私はそれらのいくつかの書き込み:
- 同様のライセンステキストを(AGPL/GPL/LGPL、BSD/apache1.1/opensslの、MIT/ISC /カール)があり、非常に困難曖昧さをなくし、非常に高いコサインの類似性を持っています(あなたが機能の選択について非常にスマートなのでなければ...)
- 同じライセンスの異なるバージョン(lgpl 2.0/2.1)
- LICENSE.TXTファイルには複数のライセンスが含まれていることが多い
- bsd通知は、すなわち、あなたは権利保持者を除いて同じテキストを持っています
残念なことに、銀の弾丸はありません。
1
Luceneを使用して、すべてのライセンスをドキュメントに索引付けすることができます(それぞれのLuceneドキュメントはライセンスです)。あなたがそれに対応するliceneを確認したい新しいlicense.txtを持っている場合は、license.txt全体を照会として使用してluceneを照会することができます。
これは、TF-IDFとすべてのIR情報を使用することになります。しかし、特定のキーワードを確認するなど、問題に固有のものを使用することもできます。
関連する問題
- 1. 2つの文章間の文法の類似度を計算する
- 2. MinHashを介して2つのバッグのJaccard類似性を持つ2つのテキストの類似度を計算する方法は?
- 3. PySparkで2つのベクトルのコサイン類似度を計算する方法は?
- 4. 2つのテンソル間のコサインの類似度を計算するには?
- 5. 2本の線図間の類似度を計算する
- 6. 2つのベクトルの各単語間のJaccardの類似度を計算する
- 7. 文の間の類似点の計算
- 8. 2つの行列を使ってコサイン類似度を計算する方法
- 9. PHP: "類似の"オブジェクトの2つの配列間の違いを計算する方法は?
- 10. ドキュメントコレクションに対するドキュメントの類似性を計算する方法は?
- 11. 特徴ベクトルを使って2つの画像間の類似度を計算する方法は?
- 12. 2つの行データの類似性を見つける方法
- 13. 2つのドキュメント間の類似性を見つける
- 14. 2つのnグラム間の意味の類似性はどのようにして計算できますか?
- 15. テキスト文字列の類似度を計算する方法は?
- 16. 2組の間隔の類似性
- 17. RapidMiner:ドキュメントの類似性を計算する
- 18. jaccardの類似度を計算する方法
- 19. 複数の辞書間の類似度 "score"を計算する
- 20. PHP - 2つの文字列間の類似度を計算するのに最適なハッシュアルゴリズムは何ですか?
- 21. 2つのジオロケーション間の角度を計算する方法は?
- 22. 属性に基づいて類似度を計算する
- 23. OrientDB - 類似度を計算する
- 24. コサイン類似度スパークデータフレームを計算する
- 25. JavaでのJaccardの類似性の計算
- 26. スパークマッピング関数の列類似性の計算
- 27. 2文の間の意味的類似性を見つけるには?
- 28. PHPを使用して2つの画像の類似度を計算する方法
- 29. matlabの2つの画像間の類似度を計算するための閾値の選択
- 30. Python:Pandasの2つの列間のtf-idf余弦類似度を計算するときのMemoryError
悪いニュース:私は正確な文字列の一致でいくつかの部分をしなければならないと思います。残りは手動で検査します。ライセンステキストにこのURLが含まれている場合は、http://www.apache.org/licenses/LICENSE-2.0.txtはApacheバージョン2.0であることを意味します。 – ilija
Fossologyプロジェクトをチェックアウトします。これは、ライセンスおよびその他の種類のIP識別のためのソースの自動スキャンを作成しようとする試みです。サビノは絶対に正しいですが、銀色の弾丸はありません。 Linux foudationのSPDXプロジェクトは、少なくとも最終的に、既知のオープンソースライセンスの共通の識別子セットを標準化しています。開発者がソースコードヘッダーでそれらを使用し始めると、ソースの解析がはるかに簡単になります。 –