2012-12-18 9 views
23

私の質問:肯定的なデータとニュートラルなデータだけで分類器を訓練するにはどうすればいいですか?肯定的なデータとニュートラルなデータだけで分類器を訓練するにはどうすればよいですか?

私は、教育目的のためのパーソナライズド記事推薦システムを構築しています。私が使用するデータはInstapaperからのものです。

データセット

私は唯一の正のデータを持っている: - 私はそれに関心を表明しているので、記事、私が読んでいる(関係なく、読み取り/未読の状態

を中性データの、「気に入りました」私はそれを好きではなかったが、私はそれを好きではなかった。

私が持っていないデータは負のデータです: - Instapaperに後で読むために送信しなかった記事(私はそのページ/記事を閲覧しましたが、興味はありません) - 私はクリックしていないかもしれないが、アーカイブがあるかもしれないそれ。

私の問題などの問題で

、負のデータは基本的に欠けています。私は、以下の溶液(S)を考えているが、まだ彼らに解決しませんでした:

1)分類器 専門家に負のデータの数をフィード:即時負のデータを分類器 短所を教えるために:の数が私は増加が好き記事、分類器の負のデータの効果は負のデータ に「中立」のデータを回す) アウト暗く長所:今、私はすべて正と(新)負のデータは、私が必要 短所を持っています。にもかかわらず、ニュートラルデータは私にはあまり関心がありませんが、私はまだこのような記事を推奨したいと思っていますが、おそらく価値の低いクラスです。

+0

分類する機能は何ですか? – ThiS

答えて

0

あなたがしようとしていることは、私が考える分類器よりも多くのrecommender systemです。

最新の技術は各記事の内容を使用してbag of wordsを作成することです。ここから、異なる記事からの距離を計算することができます。密接に類似している記事(Pearson、Tanimotoのようなクラスタリングや類似性を使用)は、読んでほしいと思われる記事になります。これは何かをすばやくする最も簡単な方法です。

さらに洗練された正確な方法があります。

+1

あなたは推奨システムがこの問題に適しているが正しいですが、元の質問には答えませんでした – tysonjh

+0

彼の分類器が学習しようとしている機能を教えてくれないと、私は正しく答えられません。学習する機能がない場合は、2つのバイナリ分類子を「作る」ことはできません。 – ThiS

+0

あなたは単語が「単語の袋」の機能であると想定していましたが、私はあなたの答えを改善するのを手伝っていました。私の答えに関するあなたのコメントを正しい場所に投稿してください。 – tysonjh

17

Spy EM algorithmはこの問題を正確に解決します。

S-EMは、正と非ラベルの例のセット(否定的な例はありません)から学習するテキスト学習または分類システムです。それは "スパイ"技術、ナイーブベイズとEMアルゴリズムに基づいています。

基本的な考え方は、あなたのポジティブセットとランダムなドキュメントの束を組み合わせることです。最初はすべてのランダムなドキュメントをネガティブなクラスとして扱い、そのセットのナイーブベイズ分類子を学習します。現在、これらのクロールされたドキュメントのいくつかは実際には肯定的なものとなり、真の肯定的なドキュメントを獲得した最低のスコアより高いスコアを付けられたドキュメントは、控えめにラベルを付け直すことができます。次に、安定化するまでこのプロセスを繰り返します。

0

2つのバイナリクラシファイアを作成します。

1 -> "liked" or not 
2 -> "neutral" or not 

また、何かが「言っています」と「ニュートラル」され、両方のケースを避けるためにそれらを一緒にチェーンにオプションがあります。これにより、コンテンツを分類することができます。

@ThierrySのもう1つの回答は、という類似のユーザーが「好き」または「中立」というコンテンツを示唆して、ソーシャルアスペクト。

0

機械学習の例から離れたい場合:TF-IDFは、類似した記事を好きな(または見た)記事に加重したポジティブな推奨を与えることができ、このユースケースでは非常に一般的です。

文書の類似性を判断するためのLSAが含まれていますが、実装するのは簡単ではなく、LSAのスペースの構築は膨大な処理能力を必要とせずに何百、 。

これらは両方ともComputational Linguisticsの分野です。

幸運を祈る!

8

異なるユーザーから多くの肯定的なフィードバックをいただいている場合は、一般的なコラボレーションフィルタリングのシナリオがあります。ここ

は、いくつかCF溶液である:

  • k最近傍(USER-またはアイテムベースのいずれか)、例えばコサイン類似
  • 1行列分解手法を用いて(両方の論文は同様の考えを持っている)
  • 別の行列因数分解アプローチをサンプリングどこもちろんあなたもSGDを使用することができます(免責事項:私は、この論文の共著者)午前

これらのアルゴリズムの公的に入手可能な実装は、例えば、存在します

ところで、あなたの場合そのような問題のために分類子を使用し、肯定のみの学習に関する文献を見てください。 http://users.csc.tntech.edu/~weberle/Fall2008/CSC6910/Papers/posonly.pdf

+0

こんにちは、BPR論文の行列分解のためにx_uijの導関数をどのように解釈しなければならないか説明できますか?ありがとう:) – user3001

+1

2つの項目のスコアの差の派生です。 – zenog

1

説明したようにhereLibSvm、特にオプションの1クラスSVM。

希望すると助かります!

関連する問題