12

レコメンデーションエンジンの目的でニューラルネットワークをどのように設計しますか。各ユーザーには独自のネットワークが必要だと思いますが、データベース内のアイテムを推奨するための入力と出力をどのように設計しますか。良いチュートリアルか何かがありますか?

編集:私はネットワークをどのように設計するかをもっと考えていました。入力ニューロンの数と出力ニューロンがデータベース内のレコードを指す方法のように。6つの出力ニューロンを言い、それを整数(0〜63のいずれか)に変換します。これがデータベース内のレコードのIDです。それは人々がそれをする方法ですか?

4

2 に答える 2

8

自己組織化マップなどの教師なし学習を使用したニューラル ネットワークを調べることをお勧めします。学習のためにデータを非常に正確に分類できない限り、通常の教師ありニューラル ネットワークを使用して目的を達成することは非常に困難です。自己組織化マップにはこの問題はありません。これは、ネットワークが分類グループをすべて独自に学習するためです。

音楽の音楽レコメンデーション システムについて説明しているこの論文を ご覧ください http://www.springerlink.com/content/xhcyn5rj35cvncvf/

このトピックについて Google 学者から書かれたさらに多くの論文 http://www.google.com.au/search?q=%09+A+Self-Organizing+Map+Based+Knowledge+Discovery+for+Music+Recommendation+ Systems+&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a&safe=active

于 2010-02-23T01:00:25.523 に答える
2

最初に、どのような状況で何を推奨するのかを正確に決定する必要があります。考慮すべきことがたくさんあります。「Xを購入した他のユーザーがYも購入した」ことを検討しますか?お互いに似た性質を持つアイテムだけを推薦するつもりですか?あちらとこっちの方が使いやすい、という関係のアイテムをオススメしていますか?

他にも多くの決定があると思いますが、それぞれに独自の目標があります。上記のすべてを処理するように 1 つの巨大なネットワークをトレーニングすることは非常に困難です。

ニューラル ネットワークはすべて同じものに要約されます。与えられた一連の入力があります。ネットワーク トポロジがあります。活性化機能があります。ノードの入力に重みがあります。出力があり、エラーを測定して修正する手段があります。それぞれのタイプのニューラル ネットワークには、これらのことを行う独自の方法があるかもしれませんが、それらは常に存在しています (私の限られた知識では)。次に、既知の出力結果を持つ一連の入力セットをフィードして、ネットワークをトレーニングします。このトレーニングセットを、トレーニングの過不足なしに好きなだけ実行すると(次の人の推測と同じくらいあなたの推測です)、準備が整います。

基本的に、入力セットは、手元にある基本的な機能に関連すると思われる特定の品質のセットとして説明できます (例: 降水量、湿度、温度、病気、年齢、場所、コスト、スキル、時刻、日)ある曜日にゴルフに行くかどうかを決定する上で、週の曜日、勤務状況、および性別のすべてが重要な役割を果たしている可能性があります)。したがって、何を推奨しようとしているのか、またどのような条件の下にあるのかを正確に判断する必要があります。ネットワーク入力は、本質的にブール値 (たとえば、0.0 が false で 1.0 が true) または疑似連続空間 (0.0 はまったくないことを意味し、.45 は多少、.8 は可能性が高いことを意味し、1.0 は可能性を意味する) にマップすることができます。はい)。この 2 番目のオプションは、特定の入力の信頼度をマッピングするツール、または関連性があると思われる単純な数学計算を行うツールを提供する場合があります。

これが役に立ったことを願っています。あなたは続けるために多くを与えませんでした:)

于 2010-02-23T00:25:14.680 に答える