タグ付けされた質問 「machine-learning」

「経験とともに自動的に改善するコンピューターシステム」を構築する方法と原則。

1
Kerasを使用して時系列の将来の値を予測する方法
KerasでこのLSTMニューラルネットワークを構築しました import numpy as np import pandas as pd from sklearn import preprocessing from keras.layers.core import Dense, Dropout, Activation from keras.activations import linear from keras.layers.recurrent import LSTM from keras.models import Sequential from matplotlib import pyplot #read and prepare data from datafile data_file_name = "DailyDemand.csv" data_csv = pd.read_csv(data_file_name, delimiter = ';',header=None, …

2
データセットは分類可能ではないと私たちはいつ言いますか?
何も分類できないデータセットを何度も分析しました。分類子を取得できるかどうかを確認するには、通常、次の手順を使用しました。 数値に対するラベルの箱ひげ図を生成します。 次元数を2または3に減らして、クラスが分離可能かどうかを確認します。LDAも試してみました。 SVMとランダムフォレストを強制的に適合させ、機能の重要性を調べて、機能に意味があるかどうかを確認します。 クラスの不均衡が問題であるかどうかを確認するために、アンダーサンプリングやオーバーサンプリングなどのクラスと手法のバランスを変更してみてください。 私が考えることができる他の多くのアプローチがありますが、試していません。これらの機能が良くなく、予測しようとしているラベルにまったく関連していないことを時々知っています。次に、その直感を使用して演習を終了し、より優れた機能またはまったく異なるラベルが必要であると結論付けます。 私の質問は、これらの機能では分類できないとデータサイエンティストがどのように報告するかです。これを報告したり、最初に異なるアルゴリズムでデータをフィッティングしたりするための統計的方法はありますか?

2
P(Y | X)でトレーニングしたときに優れたパフォーマンスを持つモデルがある場合、最適なP(X | Y)を見つける
入力データ: バツバツX > Tシャツの特徴(色、ロゴなど) YYY >利益率 上記のとランダムフォレストをトレーニングし、テストデータで妥当な精度を達成しました。ので、私は持っていますYバツバツXYYY P(Y| バツ)P(Y|バツ)P(Y|X)。 ここで、つまりフィーチャの確率分布を見つけたいと思います。これだけの利益率を期待しているからです。XP(X| Y)P(バツ|Y)P(X|Y)バツバツX ランダムフォレスト(またはその他の識別モデル)でそれを行うにはどうすればよいですか? 私に対する提案の1つは、差別モデルではなく生成モデルから始めることです。しかし、私の理解では、生成モデルは、ナイーブベイズの場合のの条件付き独立性などの非常に限定的な仮定を行わない限り、一般にトレーニングに多くのデータを必要とします。バツバツX その他の提案としては、とを入れ替えて、判別モデルをトレーニングすることもできます。今、利益率となり、シャツでの機能となります。は、目標利益率が与えられている場合、Tシャツの特徴の確率分布を直接示します。しかし、このアプローチは私には適切ではないようです。私はいつもを偶然の変数として考え、が効果的だからです。Y X Y P (Y | X )X YバツバツXYYYバツバツXYYYP(Y| バツ)P(Y|バツ)P(Y|X)バツバツXYYY また、私が聞いたところから、同様の質問が創薬のために提起されており、アルゴリズムは高度な成功を収める新薬候補を生み出すように設計されています。誰かがこのドメインの文献を研究するように私に指摘できますか? 更新: 私はこれに遭遇し、これは創薬に使用されているGANについて語っています。生成的な敵対的なネットワークは、私の問題の発言に適しているように思えるので、私はそれらについて読んでいます。しかし、私が理解したことの1つは、GANが監視なしの方法でサンプルを生成することです。彼らは最初にXの基になる分布をキャプチャし、次にその分布からサンプリングするようなサンプルを生成しようとします。しかし、私はX | Yに興味があります。XとYは上記で定義されています。GAN以外のものを探索する必要がありますか?ポインタはありますか? フォローアップ質問: Tシャツ(出力サンプルX)の作成方法を学習したGANのトレーニングを受けたとします。特定のYの上位5枚のシャツを入手するにはどうすればよいですか?

2
機械学習モデルをトレーニングするのに十分な量のデータはありますか?
私はしばらくの間機械学習とバイオインフォマティクスに取り組んできましたが、今日、データマイニングの主な一般的な問題について同僚と会話しました。 私の同僚(機械学習のエキスパート)は、彼の意見では、機械学習の間違いなく最も重要な実用的な側面は、機械学習モデルをトレーニングするのに十分なデータを収集したかどうかを理解する方法だと述べました。 私はこの側面をそれほど重視していなかったので、この発言は私を驚かせました... その後、インターネットで詳細情報を探したところ、FastML.comのレポートで、この投稿は経験則として、機能の約10倍のデータインスタンスが必要であることがわかりました。 2つの質問: 1-この問題は機械学習に特に関連していますか? 2 - 10倍の作業を支配ですか?このテーマに関連する他のソースはありますか?

2
拡張型畳み込みとデコンボリューションの違いは何ですか?
これら2つの畳み込み演算は、現在、深層学習で非常に一般的です。 このペーパーで拡張した畳み込み層について読みました:WAVENET:A GENERATIVE MODEL for RAW AUDIO とデコンボリューションはこの論文にあります:セマンティックセグメンテーションのための完全たたみ込みネットワーク どちらも画像をアップサンプリングするようですが、違いは何ですか?

1
TensorflowニューラルネットワークTypeError:Fetch引数に無効なタイプがあります
私はテンソルフローを使用して単純なニューラルネットワークを作成していますが、自分で収集したデータを使用していますが、それは協力的ではありません:PIは、修正できない、または修正を見つけることができないエラーに遭遇しました。 エラーメッセージ: TypeError:2861.6152のFetch引数2861.6152に無効なtypeが含まれています。文字列またはTensorでなければなりません。(float32をTensorまたはOperationに変換できません。) エラーは私のコードの次の行を参照しています: _, cost = tf_session.run([optimizer, cost], feed_dict = {champion_data: batch_input, item_data: batch_output}) コードで次の行をコメントアウトしてもエラーが発生しないことはすでにわかっています。 prediction = neural_network_model(champion_data) cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(prediction, item_data)) optimizer = tf.train.AdamOptimizer().minimize(cost) _, cost = tf_session.run([optimizer, cost], feed_dict = {champion_data: batch_input, item_data: batch_output}) したがって、これらの行の1つが、期待どおりに表示されないものを取得しています。私はすでに明白なことを試しました(batch_inputとbatch_outputからnp.array()を削除するか、それをlist()で置き換えます)が、それは問題を解決しません。私の現在の仮説は、neural_network_model(champion_data)の出力が何らかの形で間違った形またはタイプであるというものですが、それをテストする方法、またはそうであることが判明した場合の解決方法はわかりません。 完全なコードはここにあります:https : //gist.github.com/HasseIona/4bcaf9f95ae828e056d5210a2ea07f88 編集:neural_network_modelに入力されるチャンピオンデータ、予測、およびコストがすべてテンソルであることを確認しました。私は問題がなんとかしてコードのfeed_dict = {}の部分にあるという仮説を使用して問題を解決しようとしましたが、今のところどこにも行きません


6
機械学習におけるモデルの定義
基礎となる分布を常に想定しているわけではないため、この定義は完全には当てはまりません。では、実際にモデルとは何でしょうか?指定されたハイパーパラメーターを持つGBMをモデルと見なすことはできますか?モデルはルールのコレクションですか?

2
「意図的認識機能」はどのように機能しますか?
AmazonのAlexa、NuanceのMix、およびFacebookのWit.aiはすべて同様のシステムを使用して、テキストコマンドをインテントに変換する方法、つまりコンピューターが理解できるものを指定する方法を指定しています。これの「正式な」名前が何であるかはわかりませんが、「意図認識」と呼んでいます。基本的に、「ライトを50%の明るさに設定してください」からに進む方法lights.setBrightness(0.50)です。 それらが指定される方法は、インテントに関連付けられ、オプションで「エンティティ」(基本的にパラメータ)の場所でタグ付けされた「サンプル発話」のリストを開発者に提供することです。Wit.aiの例を次に示します。 私の質問は、これらのシステムはどのように機能するのですか?それらはすべて非常に類似しているので、私はそれらすべてが使用するいくつかの精巧な仕事があると思います。誰か知っていますか? 興味深いことに、Houndifyは正規表現に似た別のシステムを使用しています["please"] . ("activate" | "enable" | "switch on" | "turn on") . [("the" | "my")] . ("lights" | "lighting") . ["please"]。私はそれが彼らの音声認識システムのビーム検索に統合されていると思いますが、Alexa、Wit.ai、Mixは別々のSpeech-> TextおよびText-> Intentシステムを持っているようです。 編集:出発点- 非公式の音声コマンドによる人間とロボットの相互作用のメカニズムを見つけました。これは、潜在セマンティック分析と呼ばれるものを使用して発話を比較します。私はそれについて読みます。少なくともそれは私に引用ネットワークの出発点を与えました。 編集2: LSAは基本的に、テキストの各段落で使用されている単語(Bag of Words)を比較しています。この場合、単語の順序が完全に失われるため、どのようにうまく機能するかわかりません。おそらく、これらの種類のコマンドでは、単語の順序はそれほど重要ではありません。 編集3: 非表示のトピックマルコフモデルは、興味深いかもしれないように見えます。

1
文字シーケンスが英単語かノイズかを判別する方法
将来の予測のために単語リストからどのような機能を抽出しようとしますか?それは既存の単語ですか、それとも単なる文字の混乱ですか? そこで見つけたタスクの説明があります。 あなたは与えられた単語が英語であるかどうかに答えることができるプログラムを書かなければなりません。これは簡単です—辞書で単語を検索する必要があるだけです—しかし、重要な制限があります。プログラムは64 KiBを超えてはいけません。 そのため、問題を解決するためにロジスティック回帰を使用することは可能だと思いました。私はデータマイニングの経験があまりありませんが、その仕事は私にとって興味深いものです。 ありがとう。

1
小さなテキストファイルにword2vecを適用する
私はword2vecがまったく新しいので、plsは私と一緒にそれに耐えます。私はテキストファイルのセットを持っています。それぞれに1000〜3000のツイートのセットが含まれています。共通のキーワード( "kw1")を選択し、word2vecを使用して "kw1"に意味的に関連する用語を見つけたいと考えています。たとえば、キーワードが「apple」の場合、入力ファイルに基づいて「ipad」、「os」、「mac」などの関連用語が表示されます。したがって、この「kw1」の関連用語のセットは、word2vecが個々のファイルでトレーニングされるため(たとえば、5つの入力ファイル、各ファイルでword2vecを5回実行)、入力ファイルごとに異なります。 私の目標は、他の目的で使用される共通のキーワード( "kw1")が指定された各入力ファイルの関連用語のセットを見つけることです。 私の質問/疑問は: このようなタスクにword2vecを使用することには意味がありますか?入力ファイルのサイズが小さいことを考慮して使用するのは技術的に正しいですか? :私はcode.google.comからコードをダウンロードしているhttps://code.google.com/p/word2vec/と、次のようにちょうどそれに予行演習を与えています: time ./word2vec -train $file -output vectors.bin -cbow 1 -size 200 -window 10 -negative 25 -hs 1 -sample 1e-3 -threads 12 -binary 1 -iter 50 ./distance vectors.bin 私の結果から、「距離」ツールを使用して関連する用語を「kw1」に取得すると、多くのノイズの多い用語(ストップワード)が表示されることがわかりました。そのため、ストップワードやユーザーの言及など、その他のノイズの多い用語は削除しました。しかし、word2vecがクリーンな入力データを必要とすることはどこにもありません...? どのようにして正しいパラメータを選択しますか?「-window」、「-iter」などのパラメーターを変更すると、(距離ツールの実行による)結果が大きく異なることがわかります。パラメータの正しい値を見つけるには、どの手法を使用すればよいですか。(私はデータセットをスケールアップするので、手動で試行錯誤することはできません)。

4
ランダムフォレストでの過剰適合を回避する方法は?
無作為の森での過剰適合を避けたいです。この点で、mtry、nodesize、maxnodesなどを使用するつもりです。これらのパラメーターの値を選択するのを手伝っていただけませんか?私はRを使用しています。 また、可能であれば、ランダムフォレスト(R)に対してk分割交差検証を使用する方法を教えてください。


2
サーバー監視用のニューラルネット
サーバーモニターアラームを取得し、問題の根本的な原因を特定するためのpybrainを調べています。教師あり学習を使用してトレーニングしたり、トレーニングデータセットをキュレーションしたりして満足しています。データは次のような構造になっています。 サーバータイプA#1 警報タイプ1 警報タイプ2 サーバータイプA#2 警報タイプ1 警報タイプ2 サーバータイプB#1 アラームタイプ99 警報タイプ2 だから、あるn個のサーバーがして、XのことができるアラームUPまたはDOWN。どちらnとx可変です。 サーバーA1のアラーム1および2がDOWNである場合、そのサーバーでサービスaがダウンしており、問題の原因であると言えます。 すべてのサーバーでアラーム1がダウンしている場合、サービスaが原因であると言えます。 原因には複数のオプションが存在する可能性があるため、単純な分類は適切ではないようです。 また、後のデータソースをネットに結び付けたいと思います。一部の外部サービスにpingを実行するスクリプトだけなど。 シリアルサービスチェックのため、適切なアラームがすべて一度にトリガーされるとは限らないため、あるサーバーがダウンしてから5分後に別のサーバーがダウンする可能性があります。 私は最初にいくつかの基本的なことをしようとしています: from pybrain.tools.shortcuts import buildNetwork from pybrain.datasets import SupervisedDataSet from pybrain.supervised.trainers import BackpropTrainer INPUTS = 2 OUTPUTS = 1 # Build network # 2 inputs, 3 hidden, 1 output neurons net = buildNetwork(INPUTS, 3, …

1
RにおけるMLEのフィッシャースコアリング対座標降下
R基本関数glm()はMLEにフィッシャースコアリングglmnetを使用しますが、は同じ方程式を解くために座標降下法を使用しているようです。フィッシャースコアリングは、他のいくつかの行列演算に加えて2次微分行列を計算するため、座標降下はフィッシャースコアリングよりも時間効率が高くなります。これは実行に費用がかかりますが、座標降下はO(np)時間で同じタスクを実行できます。 R基底関数がフィッシャースコアリングを使用するのはなぜですか?この方法は他の最適化方法よりも優れていますか?座標降下とフィッシャースコアリングはどのように比較されますか?私はこのフィールドを実行するのが比較的新しいので、ヘルプやリソースは役に立ちます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.