質問: コピペチェックツールを作りたいと考えています。 その文章がGoogleで検索した時に、類似したものがあるかどうか、類似率はどのくらいかを調べたいと考えています。 短文であればそのまま検索クエリに投げれば検索にヒットするとは思いますが、長文の場合はどうすればいいのが最適かを考えています。 検索にはGoogleのAPIを使う予定です。 他のツールを見ますと部分的にコピーされた箇所も発見できるようなので、まずは長文をセンテンス毎に区切る必要があると思われます。 区切ったセンテンスで検索を掛ける場合、完全一致であればズバリ出てくるかと思いますが、少しだけリライトされた部分一致の場合は、類似検索が必要かと思われます。 Googleのオプションに「OR検索」や「*」「:related」というものがありますが、類似画像検索のような類似の検索結果を表示させる方法はあるのでしょうか? また、ツールを使わずに手動でコピペチェックをする場合の手順はどういった方法があるでしょうか? 知っておられる方がいましたらご助力よろしくお願い致します。
回答: Googleでの検索により探索する場合は、ご認識のように文単位程度に分割して検索して、一致する文章がヒットするかをチェックする形となるかと思います。 全ての文章は検索できないかと思いますので、抜粋してチェックし、確率的な確認に留まるかと思います。 コピペとなると、その情報源としてはWikipediaが利用されることが多いように思います。 Wikipediaは透明性の確保と二次利用のために全データをダウンロードすることができます。これを利用してWikipediaの文章との一致を確認することは可能です。 Wikipedia:データベースダウンロード - Wikipedia あいまい検索を行うには、レーベンシュタイン距離などを用いてある程度類似の文章を検索するといったことが考えられるかと思います。 そのような検索の実装としてはagrepが有名かと思います。