問題タブ [machine-learning]

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.

0 投票する
5 に答える
6296 参照

sql - SQLでの単純ベイズ計算

単純ベイズを使用して、ドキュメントを比較的多数のクラスに分類したいと考えています。私は、エンティティが正しく検証された記事とその記事が類似しているかどうかに基づいて、記事内のエンティティ名の言及が本当にそのエンティティであるかどうかを確認しようとしています。

たとえば、ある記事で「General Motors」というテキストを見つけたとします。記事とその中で言及されている正しいエンティティを含む一連のデータがあります。したがって、新しい記事で言及されている「ゼネラルモーターズ」が見つかった場合、既知の本物を含む以前のデータの記事のクラスに該当する必要があります。 「ゼネラルモーターズ」に言及するのと、そのエンティティに言及していない記事のクラスとの比較は?

(すべてのエンティティのクラスを作成して、すべての新しい記事を可能なすべてのクラスに分類しようとしているわけではありません。エンティティ名のもっともらしい言及を見つけるためのヒューリスティックな方法が既にあり、限られた数の妥当性を検証したいだけです。メソッドが既に検出した記事ごとのエンティティ名の言及)。

潜在的なクラスと記事の数が非常に多く、単純なベイズが比較的単純であることを考えると、SQL ですべてを実行したかったのですが、スコアリング クエリに問題があります...

これが私がこれまでに持っているものです:

マークされたデータ内の各記事は個別の単語に分割され、各エンティティの各記事について、すべての単語が に追加され、each_entity_wordおよび/またはその単語がword_countインクリメントされ、doc_countインクリメントされます。これは、その記事で言及されている既知のエンティティごとに繰り返されます。entity_word_sumentity_id

各単語に含まれるエンティティに関係なく、記事ごとtotal_entity_word total_entity_word_sumに同様にインクリメントされます。

  • P(word|any document) は、その単語 のword_countinに等しい必要があり ますtotal_entity_worddoc_counttotal_entity_sum
  • P(単語|ドキュメントは エンティティx言及word_countし ています)each_entity_wordentity_id doc_counteach_entity_sumentity_id
  • P(単語|ドキュメントはエンティティxについて言及していませ) は、(そのエンティティのinからその単語のinを引いたもの) 以上 ( inのそのエンティティの inを引いたもの)に等しくなければなりませんword_counttotal_entity_wordword_counteach_entity_worddoc_counttotal_entity_sumdoc_counteach_entity_sum
  • P(ドキュメントはエンティティxdoc_countに言及しています) は、each_entity_sumそのエンティティ ID に対して等しい必要がありますdoc_counttotal_entity_word
  • P(ドキュメントはエンティティxについて言及していません) は 1 マイナス ( xのエンティティ ID に対してin )doc_countに等しい必要があります。each_entity_sumdoc_counttotal_entity_word

入ってくる新しい記事の場合、それを単語に分割し、または のいずれeach_entity_wordかに対して ('I'、'want'、'to'、'use'...) の単語を選択するだけtotal_entity_wordです。私が(mysql)で作業しているdbプラットフォームでは、IN句は比較的適切に最適化されています。

また、SQLにはproduct()集計関数がないため、もちろん、sum(log(x))またはexp(sum(log(x)))を実行して、product(x)と同等のものを取得できます。

したがって、新しい記事を取得し、それを個別の単語に分割し、それらの単語を大きな IN() 句とテストする潜在的なエンティティ ID に入れる場合、記事がそのエンティティに該当する単純なベイジアン確率を取得するにはどうすればよいですか? SQLのidのクラス?

編集:

#1を試してください:

0 投票する
9 に答える
687 参照

tdd - TDD とベイジアン スパム フィルターの問題

ベイジアン分類器がスパムをフィルタリングする効果的な方法であることはよく知られています。これらはかなり簡潔にできますが (私たちのものは数百の LoC にすぎません)、結果を得る前にすべてのコア コードを事前に記述する必要があります。

ただし、TDD アプローチでは、テストに合格するための最小限のコードしか記述できないことが義務付けられているため、次のメソッド シグネチャが与えられます。

次のテキスト文字列は、明らかにスパムです。

私が書くことができるコードの最小量は次のとおりです。

ここで、別のテスト メッセージを追加するかもしれません。

コードを次のように変更できます。

...などなど。ある時点までは、コードは文字列チェックや正規表現などでごちゃごちゃになってしまいます。最初から考えたり、別の方法で書いたりするのではなく、コードを進化させたからです。

では、可能な限り単純なコードからコードを進化させてテストに合格することが適切なアプローチではない、このような状況で TDD はどのように機能するのでしょうか? (特に、最良の実装を自明に進化させることができないことが事前にわかっている場合)。

0 投票する
4 に答える
11735 参照

machine-learning - 電子メールスパム検出のためのニューラルネットワーク

2つのグループに分類された過去数年間に受信した電子メール(約1万通の電子メール)の履歴を持つ電子メールアカウントにアクセスできるとします。

  • 本物のメール
  • スパム

スパム検出に使用できるニューラルネットワークソリューションを作成するタスクにどのようにアプローチしますか?基本的に、電子メールをスパムまたは非スパムのいずれかに分類しますか?

電子メールのフェッチがすでに行われており、分類部分のみに焦点を当てる必要があると仮定します。

私が答えてもらいたい主なポイントは次のとおりです。

  1. NNの入力として選択するパラメーターとその理由を教えてください。
  2. NNのどの構造が、そのようなタスクに最適である可能性が最も高いでしょうか。

また、リソースの推奨事項、または既存の実装(できればC#)は大歓迎です

ありがとうございました

編集

  • プロジェクトの主な側面は、スパム検出でNNアプローチがどのように機能するかをテストすることであるため、ニューラルネットワークを使用することにしました。
  • また、ニューラルネットワークとスパムの主題を単に調査することは「トイプロブレム」です
0 投票する
2 に答える
1204 参照

web-services - 特定の URL の最も一般的な GET パラメータのバリエーションのリストを取得しますか?

私はリンク伝播に関するインテリジェンスの構築に取り組んでおり、正確な URL アドレスからの逆引きが必要な多くの短い URL サービスを扱う必要があるため、同じ URL の複数の近似バージョンを解決できる必要があります。

たとえば、 http://www.example.com?ref=affil&hl=en&ct= 0 のような URL です。

もちろん、特定の状況で GET パラメータを変更すると、特に問題の GET パラメータがプロファイルまたはコンテンツ ID を参照している場合は、まったく別のページを参照できます。

しかし、ページをすばやく解析すると、ページが互いにどの程度似ているかがすぐにわかります。少しの機械学習を使用すると、特定のサイトに対して返されるページのコンテンツに影響を与えない GET パラメータがすぐに明らかになる可能性があります。

URL を送信して非常に類似した URL のリストを取得するサービスは、Google や Yahoo (または Twitter) などによってのみ提供されると想定していますが、この機能を提供していないようです。他のサービスを見つけました。

前述の方法でほぼ同一の URL のグループをクラスター化するサービスを知っている場合は、お知らせください。

私の懸賞金は抱擁です。

0 投票する
2 に答える
19910 参照

c++ - クラスタリング用のC/C++機械学習ライブラリ

多次元データのクラスタリングをサポートするC/c ++機械学習ライブラリにはどのようなものがありますか?(たとえば、K-Means)

これまでに出くわした

私は自分自身を転がしたくなりますが、既存のものは、コードにもっと目を向けることで、はるかに優れたパフォーマンス最適化であると確信しています。

0 投票する
6 に答える
11808 参照

machine-learning - 音楽分析ソフトウェア

ご挨拶

私はこれを想像したかもしれませんが、Last.fmが以前に何らかの形式のオープンソースプロジェクトを使用して音楽の分析を実行し、類似した音楽を特定したかどうかは誰にもわかりません。

有料版に移行したので、プレイリストに既知の音楽を追加できるものを作りたいと思います。(コンピューターで同様の音楽を手動でスキャンするのは嫌いです)

それが失敗した-これを置き換えるために私が使用できるシステムを誰かが知っていますか?理想的には、プロセス全体をバッチジョブに自動化するために使用できる何らかの形式のAPI/ソースコードが必要です。

ありがとう、

[編集]理想的には、コンテンツマッチングのラインに沿ってもっと何かを探していました。私は、すべての音楽を整理されていない1つの場所に放り込むタイプの人です。それから怠惰である私は理想的には私に同様の音楽タイプのプレイリストを与えるプレイリストが生成されることを期待します。

Last.fmはhttp://www.audioscrobbler.net/を使用しています-APIを介してデータベースへのアクセスも提供します。

[/編集]

0 投票する
3 に答える
7069 参照

c++ - ニューラル ネットワーク XOR バックプロパゲーション情報が必要

の NN バックプロパゲーションに関するサンプル コードがどこにあるのか、XORトレーニング後にシステムをテストできることを知っている人はいますか?

できれば C++ または MATLAB で。

0 投票する
4 に答える
2794 参照

database - 監視カメラ設置場所データベース

django プログラミングをさらに理解するために、A から B へのルートを検索する Google マップ マッシュアップを作成する予定ですが、公共の監視カメラの視点と交差する通りやジャンクションは避けます。そのため、以下を含むデータベースを作成します (GIS 機能のため、おそらく Postgres ベースです)。

  • 監視タイプ(監視カメラ、スピードカメラ、ロードチャージカメラなど)
  • 地理的位置
  • タイムアウト (主にスピードカメラに使用)

もちろん、このデータはユーザーが自由に編集できます。ただし、開始するには、実行するためのデータが必要です。監視カメラの(おおよその)地理的位置を含む公開データベースはありますか?

0 投票する
3 に答える
633 参照

artificial-intelligence - ストリートビュー画像から監視カメラの位置を抽出

以前の質問に関連して、コンピュータ ビジョン アルゴリズムを使用して、Google ストリートビューの写真から監視カメラの位置を抽出する現実的な可能性はありますか? 私はその分野の専門家ではありません。しかし、顔検出などよりは簡単なはずです。