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

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


2
多数の機能を備えたロジスティック回帰を実行するにはどうすればよいですか?
330のサンプルと各サンプルに27の特徴を持つデータセットがあり、ロジスティック回帰のバイナリクラスの問題があります。 「10の場合のルール」によると、各機能を含めるには少なくとも10のイベントが必要です。しかし、私は20%の陽性クラスと80%の陰​​性クラスの不均衡なデータセットを持っています。 その結果、イベントは70件になり、ロジスティックモデルに含めることができる機能は約7/8だけになります。 すべての機能を予測変数として評価したいのですが、機能を手動で選択したくありません。 それであなたは何を提案しますか?7つの機能をすべて組み合わせる必要がありますか?アソシエーションモデルで各機能を単独で評価し、最終的なモデルに最適な機能のみを選択する必要がありますか? カテゴリカルな機能と継続的な機能の扱いについても知りたいのですが、混在させることはできますか?カテゴリー[0-1]と連続[0-100]がある場合、正規化する必要がありますか? 私は現在Pythonを使用しています。 あなたの助けをありがとう!

1
英語の文章の複雑さを判断するにはどうすればよいですか?
私は人々が第二言語として英語を学ぶのを助けるアプリに取り組んでいます。文章が追加のコンテキストを提供することで言語の学習に役立つことを検証しました。60人の生徒の教室で小規模な調査を実施しました。 私はWikipediaから10万以上の文をさまざまな英語の単語(Barronsの800の単語と1000の最も一般的な英語の単語を含む)についてマイニングしました データ全体はhttps://buildmyvocab.inで入手できます コンテンツの品質を維持するために、理解しにくい可能性があるため、160文字を超える文章は除外しました。 次のステップとして、このコンテンツを理解しやすい順に並べ替えるプロセスを自動化できるようにしたいと考えています。私自身は英語を母国語としない人です。簡単な文章と難しい文章を区別するために使用できる機能を知りたい。 また、これは可能だと思いますか?

2
word2vecの特徴マトリックスは何ですか?
私はニューラルネットワークの初心者で、現在はword2vecモデルを探索しています。しかし、機能マトリックスが正確に何であるかを理解するのに苦労しています。 最初の行列が特定の単語のワンホットエンコーディングベクトルであることは理解できますが、2番目の行列は何を意味していますか?より具体的には、これらの各値(つまり、17、24、1など)はどういう意味ですか?

3
最適な通話時間を予測する
カリフォルニア州のさまざまな都市にいる顧客のセット、各顧客の呼び出し時間、および呼び出しのステータス(顧客が呼び出しに応答する場合はTrue、応答しない場合はFalse)を含むデータセットがあります。 電話に出る確率が高くなるように、将来の顧客を呼び込む適切な時期を見つけなければなりません。それで、この問題の最良の戦略は何ですか?時間(0、1、2、... 23)がクラスである分類問題と見なす必要がありますか?それとも、時間が連続変数である回帰タスクと見なす必要がありますか?電話に出る確率が高いことを確認するにはどうすればよいですか? 任意の助けいただければ幸いです。同様の問題を紹介していただければ幸いです。 以下はデータのスナップショットです。

1
方法:ディープニューラルネットワークの重みの初期化
難しい学習タスク(高次元、固有のデータの複雑さなど)が与えられると、ディープニューラルネットワークはトレーニングが難しくなります。多くの問題を緩和するには、次のようにします。 ハンドピック品質データを正規化する 別のトレーニングアルゴリズムを選択する(たとえば、勾配降下の代わりにRMSprop) 勾配の急なコスト関数を選択します(例:MSEの代わりにクロスエントロピー) 異なるネットワーク構造を使用する(例:フィードフォワードではなくたたみ込み層) より良い重みを初期化する賢い方法があると聞いたことがあります。例えば、あなたはより良い等級を選ぶことができます:Glorot and Bengio(2010) シグモイド単位の場合: Uniform(-r、r)をサンプリングしますr = 6NI N+ NoU T−−−−−−√r=6N私ん+Noあなたtr = \sqrt{\frac{6}{N_{in} + N_{out}}} または双曲線正接単位: Uniform(-r、r)をサンプリングしますr = 4 6NI N+ NO U T−−−−−−√r=46N私ん+Noあなたtr =4 \sqrt{\frac{6}{N_{in} + N_{out}}} 重みをより適切に初期化する一貫した方法はありますか?

1
ユーザー製品のポジティブ(データをクリック)を利用できます。ネガティブ(クリックなしのデータ)を生成する方法は?
レコメンダーでは、「クリック」などのラベルが付いたユーザー製品データがあることが非常に一般的です。モデルを学習するために、クリックデータと非クリックデータが必要です。 生成する最も簡単な方法は、クリックデータにはないユーザーと製品のペアを取得することです。ただし、それは誤解を招く可能性があります。例: user1, product1 (click) user2, product2 (click) user2, product3 (click) user3, product2 (click) user1をproduct1以外のすべての製品で取得し、「no_click」などのラベルを付けることができます。しかし、これは本当ではないかもしれません。たぶん、user1がproduct2を表示された場合、user1はproduct2をクリックしたでしょう。しかし、他の製品のセットが表示されたからといって、クリックするかクリックしないかを決定する機会がありませんでした2。 では、単項データの問題にどのように対処するのでしょうか?

2
テストデータの機能がトレーニングデータよりも少ない場合はどうすればよいですか?
店舗の売上を予測していて、トレーニングデータに2つの機能セットがあるとします。 日付のある店舗の売上に関する1つ(「店舗」フィールドは一意ではありません) 店舗タイプに関する1つ(「店舗」フィールドはここでは一意です) したがって、マトリックスは次のようになります。 +-------+-----------+------------+---------+-----------+------+-------+--------------+ | Store | DayOfWeek | Date | Sales | Customers | Open | Promo | StateHoliday | +-------+-----------+------------+---------+-----------+------+-------+--------------+ | 1 | 5 | 2015-07-31 | 5263.0 | 555.0 | 1 | 1 | 0 | | 2 | 5 | 2015-07-31 | 6064.0 | 625.0 …

2
科学者はどのようにして正しい隠れマルコフモデルのパラメーターとトポロジーを思い付きますか?
隠れマルコフモデルが、遺伝子の検索などのゲノムシーケンスでどのように使用されるかを理解しています。しかし、特定のマルコフモデルを考え出す方法がわかりません。つまり、モデルにはいくつの状態があるべきですか?可能な遷移はいくつありますか?モデルにループが必要ですか? 彼らは自分のモデルが最適であることをどのようにして知るのでしょうか? 彼らは、10の異なるモデルを想像し、それらの10のモデルをベンチマークして、最高のモデルを公開しますか?

1
以前のたたみ込み層のデルタ項と重みを考慮して、たたみ込み層のデルタ項を計算するにはどうすればよいですか?
2つの畳み込み層(c1、c2)と2つの非表示層(c1、c2)を持つ人工ニューラルネットワークをトレーニングしようとしています。標準のバックプロパゲーションアプローチを使用しています。バックワードパスでは、前のレイヤーの誤差、前のレイヤーの重み、現在のレイヤーのアクティベーション関数に関するアクティベーションの勾配に基づいて、レイヤーの誤差項(デルタ)を計算します。より具体的には、レイヤーlのデルタは次のようになります。 delta(l) = (w(l+1)' * delta(l+1)) * grad_f_a(l) 通常のレイヤーに接続するc2の勾配を計算できます。私はh1の重みにデルタを掛けます。次に、その行列をc2の出力の形式に再形成し、活性化関数の勾配を掛けて、完了です。 今私はc2のデルタ項を持っています-これはサイズの4D行列です(featureMapSize、featureMapSize、filterNum、patternNum)。さらに、c2の重みがあります。これは、サイズの3Dマトリックス(filterSize、filterSize、filterNum)です。 これら2つの項とc1のアクティブ化の勾配を使用して、c1のデルタを計算します。 短い話: 以前の畳み込み層のデルタ項とその層の重みが与えられた場合、畳み込み層のデルタ項をどのように計算しますか?

2
局所性に敏感なハッシュの増幅
可能なすべてのペアを比較する必要なく、類似した候補アイテムのペアを見つけることができるように、コサイン局所性に敏感なハッシュを作成しようとしています。基本的には機能していますが、データ内のほとんどのペアは-0.2から+0.2の範囲でコサイン類似度を持っているようですので、細かくダイシングしてコサイン類似度0.1以上のものを選択しようとしています。 私は大量データセットのマイニングの第3章を読んでいます。これは、局所性に敏感なファミリーを増幅することにより、候補ペアの選択の精度を高めることについて説明しています。私は数学的な説明を理解するところだと思いますが、これを実際に実装する方法を見るのに苦労しています。 これまでのところは次のとおりです 100万人のユーザーの一部の選択からの評価付きの1000本の映画と言っています。各映画は、ユーザースコアのスパースベクトルで表されます(行番号=ユーザーID、値=ユーザーのスコア) N個のランダムなベクトルを作成します。ベクトルの長さは、映画のベクトルの長さ(つまり、ユーザー数)と一致します。ベクトル値は+1または-1です。私は実際にこれらのベクトルをバイナリとしてエンコードしてスペースを節約し、+ 1を1に、-1を0にマッピングします 映画とN個のランダムベクトルのそれぞれのドット積をとって、各映画のスケッチベクトルを構築します(または、N個のランダムベクトルを水平に配置し、それらを互いの上に重ねてからスケッチで行列Rを作成した場合は、スケッチ映画mはR * m)であり、結果のベクトルの各要素の符号を取るので、+ 1と-1の各映画のスケッチベクトルで終わります。各ベクトルは長さNビットです。 次に、次のようにして類似のスケッチを探します スケッチベクトルをrビットのbバンドに分割します rビットの各バンドは数値です。その番号をバンド番号と組み合わせて、その番号の下のハッシュバケットに映画を追加します。各ムービーは複数のバケットに追加できます。 次に、各バケットを調べます。同じバケットにある映画はすべて候補ペアです。 これをmmdsの3.6.3と比較すると、私のANDステップは、rビットのバンドを見るときです。rビットの値が同じであれば、2つのムービーがANDステップを通過します。私のORステップはバケットで発生します。両方のバケットに含まれている映画は候補ペアです。 この本は、ANDとORのステップを追加することで結果を「増幅」できることを示唆していますが、追加のレイヤーの構築プロセスの説明は、ペアワイズの同等性のチェックではなく、バケット番号を考え出す。 誰かがこれを行う方法を理解するのを手伝ってくれる?

2
scikit分類器が分類にかかる時間はどれくらいですか?
100万のラベル付きドキュメントで構成されるコーパスのテキスト分類にscikit線形サポートベクターマシン(SVM)分類器を使用することを計画しています。私がやろうとしていることは、ユーザーがキーワードを入力すると、分類子はまずそれをカテゴリーに分類し、次にそのカテゴリーのカテゴリーのドキュメント内で後続の情報検索クエリが発生することです。少し質問があります: 分類にそれほど時間がかからないことを確認するにはどうすればよいですか?より良い結果を得るために、ユーザーが分類が完了するのを待つ時間を費やす必要はありません。 ウェブサイト/ウェブアプリケーションにPythonのscikitライブラリを使用することはこれに適していますか? アマゾンまたはフリップカートがユーザークエリで分類を実行する方法を知っている人はいますか?それとも完全に異なるロジックを使用していますか?

2
ニューラルネットワークのデバッグ
scipy.optimize.minimize(共役勾配)最適化関数を使用して、Pythonで人工ニューラルネットワークを構築しました。 私は勾配チェックを実装し、すべてをダブルチェックしました、そしてそれが正しく機能していることは確かです。 何度か実行したところ、「最適化は正常に終了しました」に達しましたが、隠れ層の数を増やすと、正常に終了した後、仮説のコストが増加します(他のすべては同じままです)。 直感的には、隠れ層の数が増えるとコストが下がるように感じられます。これは、データに適合するより複雑な仮説を生成できるためですが、そうではないようです。 ここで何が起こっているのかを理解するのに興味がありますか、またはニューラルネットを間違って実装した場合はどうなりますか?

2
scikitのmax_depthは、決定木の枝刈りと同等ですか?
決定木を使って作成した分類器を分析していました。scikitのディシジョンツリーには、max_depthというチューニングパラメータがあります。これは決定木の枝刈りに相当しますか?そうでない場合、scikitを使用してディシジョンツリーをプルーニングするにはどうすればよいですか? dt_ap = tree.DecisionTreeClassifier(random_state=1, max_depth=13) boosted_dt = AdaBoostClassifier(dt_ap, random_state=1) boosted_dt.fit(X_train, Y_train)

2
バッチ正規化はReLUアクティベーション機能に意味がありますか?
バッチ正規化は、このホワイトペーパーでは、スケール変数とシフト変数およびβを使用したアクティブ化関数への入力の正規化として説明されています。このペーパーでは、主にシグモイドアクティベーション関数の使用について説明します。ただし、バッチ正規化によって生成された正規化分布からの入力をm a x (0 、x )の ReLU活性化関数に供給することは、βγγ\gammaββ\betamax(0,x)max(0,x)max(0,x)ββ\betaReLUが入力情報を失わないように、ほとんどの入力を0を超えてシフトすることを学習しません。つまり、ReLUへの入力が標準正規化されただけである場合、0未満の多くの情報が失われます。この情報が失われないことを保証する保証または初期化はありますか?BNとReLUの操作方法に何か不足していますか?ββ\beta

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