2011-02-01 10 views
2

私は質問のDBを持っているとしましょう、そう!ユーザーが質問をしたときに、関連する質問をサイドバーで提供したいと思います。関連するコンテンツクエリの基本的なアルゴリズムは何ですか?

標準化された手法はありますか?スペースで質問を分割し、各単語を検索するなど... ??

どこから始めるべきかわかりません。

+0

* "標準化されたテクニックはありますかこれは? " - - No. –

答えて

0

ほとんどの場合、キーワードを格納しているテーブルを設計し、質問のタイトルに基づいて関連するアイテムを検索する必要があります。したがって、質問が入力されると、キーワードごとのヒットカウンターが質問の他の格納された質問との関連性を定義し、ランキングで最も高いヒット数で他の質問を最も低く表示することができます。それが私の考え方です。私の考えが助けてくれることを願って、ベストを尽くしたので、あなたにとって最良の答えではないかもしれないが、それが貢献するのを助けるかもしれない。 :)

0

よくある質問は、一般的な単語の質問の文字列を照会することです。

例えば、彼らは、開発、およびその他の多様な分野を学び、SQLについて話すように見えるが、このページの関連質問のほとんどは、そのタイトルに単語「クエリ」「アルゴリズム」を持っています。

基本的には、質問文字列を分割してストップワードを削除し、他の質問タイトルでできるだけ多くの単語をマッチさせることができます。

タイトルに一致する単語がある場合は、一致数やその他の指標(SOの例:アップワード、回答、ビューカウントなど)で並べ替えます。

+0

あなたの答えを書く時間をとっていただきありがとうございます。 – Chaddeus

0

私はこのような問題にアプローチします。まず、すべての接着剤の言葉を落としてください:「ああ、でも、もしかしたら、できない、できない、そうでない」など(おそらく巨大なリスト)...

主に名詞と動詞である。

これらの単語に対して、K-Meansクラスタリングなどの方法で投稿をクラスタ化します。最後に、クラスタに対してベイズ分類子を訓練し、新しい投稿を取得したらクラスターのように分類します...最後に、そのクラスターから他の質問を返します....

+0

なぜdownvote? – diugalde

関連する問題