問題タブ [recommendation-engine]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
recommendation-engine - ピアソン相関係数を理解する
ピアソン相関係数を生成するための計算の一部として、次の計算が実行されます。
2番目の式では、はaがアイテムにp_a,i
与える予測評価ユーザーであり、は比較されている類似ユーザーの数であり、はユーザーによるアイテムの評価です。 i
n
ru,i
i
u
u
ユーザーがこのアイテムを評価していない場合、どのような値が使用されますか?ここで何か誤解しましたか?
php - レコメンデーション システムの実装方法
私は集合知の本を持っていますが、実際にどのように適用できるかわかりません.
mySQL データベースを備えた PHP Web サイトがあるとします。ユーザーは、タイトルと内容を含む記事をデータベースに挿入できます。簡単にするために、タイトルだけを比較します。
- コーヒーの作り方_
- コーヒーに関する15のこと。
- 大きな質問。
- 鉛筆を削るには?
- ボールに打たれる男
「コーヒーの淹れ方」を開きます。記事と、2番目と4番目のタイトルと言葉が似ているので、関連記事欄に表示します。
PHP と mySQL を使用してこれを実装するにはどうすればよいですか? Pythonを使用する必要がある場合は問題ありません。前もって感謝します。
web-services - Twitterから安定したメッセージの流れを得る
私の好みを学習し、友人や興味深いツイートを自動的に見つけて関連情報を提供するシンプルな Twitter クライアントを作成してみたいと思います。
開始するには、ランダムな Twitter メッセージの適切なストリームを取得する必要があります。これにより、いくつかの機械学習アルゴリズムをテストできます。
これにはどの API メソッドを使用すればよいですか? メッセージを取得するには定期的にポーリングする必要がありますか? または、メッセージが公開されたときに Twitter でメッセージをプッシュする方法はありますか?
また、同様のプロジェクトについても知りたいと思います。
asp.net-mvc - ASP.NET MVC コントロール
各行にチェックボックスもあるコンボボックス/ドロップダウンリストコントロールを推奨できる人はいますか? また、複数選択をサポートする必要があります。
ありがとう。
artificial-intelligence - ユーザーのグループにアイテムを推奨する最も効率的なアルゴリズムは何ですか?
協調フィルタリングの使用は通常、個々のユーザーに評価を与える場合に適用されますが、アイテムを複数の人に推奨する必要がある場合 (たとえば、映画を見たい友人や一緒に休日を選びたい場合など)、これらのアルゴリズムはどのように変化しますか?
php - (貧乏人の)商品レコメンド実装
オンライン ストアの貧乏人のレコメンデーション システムを構築しようとしています。そんなAmazonの「この商品を買った人は、こんな商品も買っている」機能を実現したくて、いろいろ読んでいます。Apache Mahout があることは知っていますが、そのようにサーバーを微調整することはできません。それからgoogleの予測APIもあるのですが、お金がかかるので自分で実験を始めています。
250.000 以上のアイテムを含む注文履歴を取得し、ネストされた MySQL クエリを作成して、現在の記事を含む注文を見つけ、他の注文アイテムをランク付けし、そのテーブルをランキング用に並べ替えました。現在の記事。
問題は、クエリに最大 10 秒かかる可能性があることです。そのため、これを直接使用することはできません。キャッシング テーブルを考えましたが、このクエリは 20 分後に停止します (60.000 個の製品と 250.000 個の注文アイテムがあります)。そのため、そのテーブルを埋めることができません。
私の現在の回避策は次のとおりです。レコメンデーション HTML は AJAX ondocumentready 経由で読み込まれるため、サイトは読み込まれますが、レコメンデーションはバックグラウンドで読み込まれます。推奨データは一度処理されてファイルキャッシュ (PEAR シンプルキャッシュ) に保存されるため、次回はより速く読み込まれます。したがって、誰かがサイトにアクセスすると、キャッシュはオンデマンドで作成され、1 日または 1 週間保存されます。
私は自分自身とあなたに尋ねます、それは受け入れられるアプローチですか、それとも愚かでパフォーマンスが悪いですか? キャッシュされたデータをデータベースまたはファイルに保存する方がよいでしょうか (パフォーマンスと並列ヒットについて考えます)。つまり、最悪の場合、60.000 個のキャッシュ ファイルが作成されることになります。
すべてのデータを含む事前計算されたテーブルが望ましいのですが、前述のとおり、時間がかかりすぎて最適化する方法がわかりません。(SQL 男が休暇から戻ってくるまで待っています ^^)
ヒント、意見をありがとう。
ところで。これはクエリです:
編集:
与えられた答えについて考えてみましたが、最初の考えに似ていると思います。上記のコードの結果は、次の表になります。
ParentID は現在のアイテム、ChildID は ParentID とともに過去に注文したアイテム、Rank は現在のアイテムで子が注文された頻度の事前計算されたカウントです。これで、新しい注文ごとに関連アイテムを更新または挿入し、DB に既に存在する場合はランクをカウントできます。私が唯一恐れているのは、本当に大きなテーブルに座ることになることです。週に1回オフラインで事前計算すれば問題ないのではないでしょうか? ただし、クエリを最適化して、アイテムごとに 10 秒かからないようにする必要があります。
どう思いますか?
php - ユーザーの行動に基づいて関連コンテンツを提案する drupal モジュール
「この記事を読んだユーザーは、これも読んでいます: ...」のようなものです。
ユーザーの行動に基づいて、関連性の高いコンテンツを提案できるようにしたいと考えています。これが役立つ場合、ユーザーは一般的にすべて認証されます..
スクリプト、モジュール、アイデアはありますか?
algorithm - 彼の推奨に基づいてユーザーにリンクを推奨する
私は、ユーザーが推奨/いいね(記事、サイトなど)の「リスト」を送信できるサービスを構築しています。システムは、ユーザーが好きな他のリンクのリストも表示します。
このプロセスを実行するための私の心の唯一のアイデアは次のとおりです。
- ユーザーAは、リンクのリストを送信します(例:10リンク)
- システムは、ユーザーAとユーザーBのリンク間で80%同じリンクを持つ他のユーザー(たとえばユーザーB)のリストを検索します
- (ユーザーBリストからの)20%の新しいリンクをユーザーAに表示する
これを行う他の方法はありますか?または、同じことを行うオープンソースプロジェクトはありますか?
どんな言語でも大丈夫ですが、私はPerl、PHP、Java、SQLにもっと興味があります
c# - 将来の変更に対応するモジュール式プログラミング (Web サイトをスクレイピングするためのソフトウェア)
Windows Forms を使用して、選択した Web サイトから画像をスクレイピングするソフトウェアを C# で開発しました。
私が抱えている最初の問題は、監視している Web サイトのルック アンド フィールが絶えず変化しているため、コードを更新する必要があることです。探している div を分離するために XPath を使用するように切り替えましたが、div id も変更されます。ソフトウェアが読み取る各サイトの div xpath を含むテキスト ファイルを使用することを考えたので、コードを編集して再コンパイルする時間を節約できます。この問題を解決するより良い方法はありますか? 多分CodeDom?
第二に、すべての Web サイトが異なるフォーマットとエンコーディングを使用しているため、HtmlDocument、HtmlWebResponse、HtmlNodes などでコードの一部を書き直す必要があり、コードの半分近くを占めることになりました。追加のスクレイピングとページネーションが必要なものとそうでないものがあるため、それらをまとめることができませんでした。この問題を単純化する方法はありますか?
最後に、コード全体を 1 つのクラス ファイルにまとめ、約 600 行のコードを記述します。私が持っている唯一の方法は、backgroundworkers、UI イベント ハンドラー、各サイトのスクレイピング メソッド、および画像を保存する 1 つのメソッドです。コード全体を 1 つのクラスにまとめても問題ありませんか? Java で書いていた頃は、複数のクラスを利用してオブジェクトとして呼び出すことがよくありました。これにより、特定のセクションの変更が容易になりました。C# でも同じことができますか?
ソフトウェアを作成するためのより効率的なアプローチはありますか? 問題のクラスを直接変更できるように、サイトごとにクラスを作成することを考えていましたが、各クラスで多くの行が繰り返されることになります。それとも、全体を 1 つのクラス ファイルにまとめても問題ありませんか。
ありがとう。
PS: このソフトウェアは個人用ですが、良いプログラミングを学び、適用する良い機会だと思います。