問題タブ [information-retrieval]
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.
algorithm - 標準スコアの時間枠
トレンドのトピックを見つけるために、標準スコアと移動平均を組み合わせて使用します。
今まで、私は次のようにしています:
いつでも、歴史的な傾向については、24 時間前にさかのぼります。現在、1 月 12 日午後 3 時 45 分があるとします。
current_trend = ヒット数 [1 月 11 日 3:45 - 1 月 12 日 3:45]
history_trends = ヒット数 [1 月 10 日 3:45 - 1 月 11 日 3:45] + ヒット数 [1 月 9 日 3:45 - 1 月 10 日 3:45] + ヒット数 [1 月 8 日 3:45 - 1 月 9 日 3: 45] + ...
しかし、これは本当に適切ですか?いつも0時から始めたほうがいいんじゃない?たとえば、同じデータ (午後 3 時 45 分) の場合は次のようになります。
current_trend = ヒット数 [1 月 11 日 0:00 - 1 月 12 日 0:00]
history_trends = ヒット数 [1 月 10 日 0:00 - 1 月 11 日 0:00] + ヒット数 [1 月 9 日 0:00 - 1 月 10 日 0:00] + ヒット数 [1 月 9 日 0:00 - 1 月 9 日 0:00: 0] + ...
きっと結果は違うと思います。しかし、どのアプローチがより良い結果をもたらすでしょうか?
あなたが私の質問を理解し、私を助けてくれることを願っています。:) 前もって感謝します!
python - 特定のWebページを開くときにIEアクティビティを分析する方法
urllibライブラリを使用して特定のWebページからデータを取得したい。問題は、このページを開くために、いくつかのデータを前にサーバーに送信する必要があることです。IEで行う場合は、最初にいくつかのチェックボックスを更新してから、[データの表示]ボタンを押す必要があります。これにより、目的のページが開きます。ソースコードを見ると、「データの表示」を押すと、ある種のフォームが送信されることがわかります。特定のURLアドレスはありません。サーバーに送信されるパラメーターをコードで確認することはできません...「データの表示」ボタンを押した後、IEとWebサーバー間の通信を分析するのがおそらくより簡単な方法だと思います。IEの機能を明示的に確認できれば、urllibで模倣できます。
それを行う最も簡単な方法は何ですか?
web-applications - システム情報を判別する Web ベースのスクリプト
Web ベースのスクリプトを使用して、ビジターの特性 (ディスプレイ解像度、Java バージョン、OS、アーキテクチャ、レンダリング エンジンなど) を特定できることを知っています。
しかし、訪問者の PC に常駐するシステム メモリの量を教えてくれるものはありますか?
text - 関連記事を提案するための、試行錯誤された真のアルゴリズムは何ですか?
かなり一般的な状況です、私は賭けます。あなたはブログやニュースサイトを持っていて、たくさんの記事やブログ、またはあなたがそれらと呼んでいるものがあり、それぞれの下部に、関連しているように見える他の人を提案したいと思います。
各アイテムに関するメタデータはほとんどないと仮定しましょう。つまり、タグやカテゴリはありません。タイトルと著者名を含む、1つの大きなテキストの塊として扱います。
関連する可能性のあるドキュメントをどのように見つけますか?
私は実際のアルゴリズムに興味があり、すぐに使えるソリューションではありませんが、rubyやpythonで実装されているものを調べたり、mysqlやpgsqlに依存したりしても大丈夫です。
編集:現在の答えはかなり良いですが、もっと見たいです。たぶん、1つか2つのもののためのいくつかの本当に裸のサンプルコード。
language-agnostic - ユーザー入力を修正する方法(グーグルの種類「あなたは意味しましたか?」)
私には次の要件があります:-
私は多くの(たとえば100万)値(名前)を持っています。ユーザーは検索文字列を入力します。
ユーザーが名前を正しくつづることは期待していません。
だから、私は一種のグーグルを「あなたは意味しましたか」にしたいです。これにより、データストアからのすべての可能な値が一覧表示されます。ここに似ているが同じではない質問があります。これは私の質問に答えませんでした。
私の質問:-1)これらのデータをRDBMSに保存することはお勧めできません。その場合、SQLクエリにフィルターを適用しません。そして、私は全表スキャンをしなければなりません。では、この状況では、データをどのように保存する必要がありますか?
2)2番目の質問はこれと同じです。しかし、私の質問を完全にするために、大規模なデータセットを検索するにはどうすればよいですか?データセットにFrankyという名前があるとします。ユーザーがPhrankyと入力した場合、Frankyと一致させるにはどうすればよいですか?すべての名前をループする必要がありますか?
レーベンシュタイン距離に出くわしました。これは、可能な文字列を見つけるための優れた手法になります。しかし、繰り返しになりますが、私の質問は、データストアからの100万個すべての値を操作する必要があるかどうかです。
3)私は知っています、Googleはユーザーの行動を監視することによってそれを行います。しかし、私はユーザーの行動を見ずにそれをやりたいと思っています。つまり、距離アルゴリズムを使用して、まだわかりません。前者の方法では、最初に大量の検索が必要になるためです。
4)カークブロードハーストが以下の回答で指摘したように、2つの可能なシナリオがあります:-
- 単語のタイプミス(距離編集アルゴリズム)
- 単語を知らず、推測しているユーザー(音声一致アルゴリズム)
私はこれらの両方に興味があります。それらは実際には2つの別個のものです。たとえば、SeanとShawnは同じように聞こえますが、編集距離は3です。タイプミスと見なすには高すぎます。
comparison - 2つのテキストの「関連性」を見つけるためのいくつかの良い方法は何ですか?
ここに問題があります-私は数千の小さなテキストスニペットを持っています、数語から数文までのどこかにあります-最大のスニペットはディスク上で約2kです。それぞれを比較し、関連性係数を計算して、ユーザーに関連情報を表示できるようにしたいと考えています。
これを行うためのいくつかの良い方法は何ですか?これを行うための既知のアルゴリズムはありますか?GPLされたソリューションなどはありますか?
すべてを事前に計算できるので、これをリアルタイムで実行する必要はありません。私は実行時よりも良い結果を得ることに関心があります。
自分のことを書く前に、StackOverflowコミュニティに聞いてみようと思っただけです。以前にこれに対する良い解決策を見つけた人々がそこにいる必要があります。
search - どのオープンソース検索エンジンを使用する必要がありますか?
私の目的は、ニュース フィードとブログ フィードのアグリゲーターを構築して、エンティティの検索/追跡を容易にすることです。Terrier、Lucene、SWISH-E など、多くのソリューションを検討してきました。
基本的に、これらのエンジンで行われた比較研究のソースは 2 つしか見つかりませんでしたが、そのうちの 1 つは時代遅れです。基本的には、データサイズがそれほど大きくない場合に使用される検索エンジンが必要ですが、インデックス作成は 30 分ごとに頻繁に行われます。この場合、Terrier は使用するのに適したツールではないと思います。データサイズが大きく、更新頻度が低い場合に有効です。情報検索の分野で働いたことのある人からアドバイスをいただけますか?
parsing - 情報検索/テキストマイニングアプリケーションまたはライブラリを探しています
フライト、レンタカー、ホテルなど、さまざまな情報をメールから抽出します。この方法は、メールの本文を抽出することです。通常はHTML形式ですが、テキストである場合や、PDF / Word/RTF添付ファイルの情報を使用する場合もあります。次に、表形式(フライトテーブル、ホテルテーブルなど)で提供される情報を取得するために、正規表現を(場合によってはいくつかのステップで)適用します。HTMLを解析しますが、これはWebスクレイピングではないことに注意してください。
現在、QL2のWebQLエンジンを使用していますが、ビジネス上の理由から置き換えることを検討しています。別のエンジンでお勧めできますか?Linuxで実行され、Javaからアクセスできる必要があります(Java APIが最適ですが、Webサービスも優れたソリューションです)。また、HTML構造に基づくだけでなく、テキスト抽出の正規表現をサポートする必要があります。
database - 巨大な逆索引を作成する方法
約 10 6用語の大きな転置インデックスを作成したいと考えています。どのような方法をお勧めしますか? 東京キャビネット、voldemort などの高速バイナリ キー ストア DB で考えています。 index、クエリは非常に遅かったです。このような状況では、SQL データベースのオーバーヘッド、トランザクションのオーバーヘッド、クエリの解析などが多すぎると思います。私は、優れた応答時間とパフォーマンスを持ちながら拡張できるテクノロジまたはアルゴリズムのアプローチを探しています。私は研究目的で独自のソリューションを展開しています。