データサイエンス

データサイエンスの専門家、機械学習の専門家、およびこの分野に関する知識が豊富な方へ

10
デコンボリューション層とは何ですか?
私は最近、ジョナサン・ロング、エヴァン・シェルハマー、トレバー・ダレルによるセマンティックセグメンテーションのための完全畳み込みネットワークを読みました。「デコンボリューション層」が何をするのか、どのように機能するのかがわかりません。 関連する部分は 3.3。アップサンプリングは逆方向のたたみ込み畳み込みです 粗い出力を密なピクセルに接続する別の方法は、補間です。たとえば、単純な双線形補間は、入力セルと出力セルの相対位置のみに依存する線形マップによって、最も近い4つの入力から各出力計算yijyijy_{ij}します。 ある意味では、係数アップサンプリングfffは、1 / fの分数入力ストライドによる畳み込みです。したがって、fffが整数である限り、アップサンプリングの自然な方法は、出力ストライドを使用した逆畳み込み(逆畳み込みとも呼ばれます) fffです。このような操作は、畳み込みの前後のパスを単純に逆にするため、実装するのは簡単です。 したがって、ピクセル単位の損失からのバックプロパゲーションによるエンドツーエンド学習のために、ネットワーク内でアップサンプリングが実行されます。 そのようなレイヤーのデコンボリューションフィルターは固定する必要はありませんが(たとえば、バイリニアアップサンプリングに)、学習することができます。デコンボリューションレイヤーとアクティベーション関数のスタックは、非線形アップサンプリングを学習することさえできます。 私たちの実験では、ネットワーク内のアップサンプリングは、密な予測を学習するために高速で効果的であることがわかりました。最適なセグメンテーションアーキテクチャは、これらのレイヤーを使用して、セクション4.2の洗練された予測のアップサンプリングを学習します。 たたみ込み層がどのようにトレーニングされるかを本当に理解していないと思います。 私が理解したと思うのは、カーネルサイズ畳み込み層がサイズk × kのフィルターを学習するということです。畳み込みカーネルサイズを有する層の出力K、ストライドS ∈ NとNフィルタは、ディメンションである入力DIMkkkk×kk×kk \times kkkks∈Ns∈Ns \in \mathbb{N}nnn。ただし、畳み込み層の学習がどのように機能するかはわかりません。(単純なMLPが勾配降下で学習する方法を理解します(それが役立つ場合))。Input dims2⋅nInput dims2⋅n\frac{\text{Input dim}}{s^2} \cdot n したがって、畳み込み層の私の理解が正しい場合、これをどのように逆にすることができるのか分かりません。 誰かがデコンボリューション層を理解するのを助けてくれますか?

30
公開されているデータセット
データサイエンスの一般的な問題の1つは、さまざまなソースからデータを何らかの形で(半構造化された)形式で収集し、さまざまなソースのメトリックを組み合わせて高レベルの分析を行うことです。他の人の努力、特にこのサイトの他の質問を見ると、この分野の多くの人がやや反復的な仕事をしているようです。たとえば、ツイート、Facebookの投稿、Wikipediaの記事などを分析することは、多くのビッグデータの問題の一部です。 これらのデータセットの一部は、プロバイダーサイトによって提供されるパブリックAPIを使用してアクセスできますが、通常、これらのAPIからいくつかの貴重な情報またはメトリックが欠落しているため、誰もが同じ分析を何度も繰り返す必要があります。たとえば、ユーザーのクラスタリングはさまざまなユースケースと機能の選択に依存する場合がありますが、Twitter / Facebookユーザーの基本的なクラスタリングは、APIによって提供されず、独立したデータセットで公開されていない多くのビッグデータアプリケーションで役立ちます。 他のビッグデータの問題の解決に再利用できる貴重なデータセットを含むインデックスまたは公開されているデータセットホスティングサイトはありますか?データサイエンスのためのGitHub(またはサイト/パブリックデータセットのグループ、または少なくとも包括的なリスト)のようなものを意味します。そうでない場合、そのようなデータサイエンスのプラットフォームがない理由は何ですか?データの商業的価値、データセットを頻繁に更新する必要がある、...?データサイエンティスト向けに考案されたデータセットを共有するためのオープンソースモデルはありませんか?

13
数値データとカテゴリデータが混在するK平均クラスタリング
データセットには、いくつかの数値属性と1つのカテゴリが含まれています。 、と言いますNumericAttr1, NumericAttr2, ..., NumericAttrN, CategoricalAttr、 はCategoricalAttr、次の3つの可能な値のいずれかを取ります:CategoricalAttrValue1、CategoricalAttrValue2またはCategoricalAttrValue3。 Octave https://blog.west.uni-koblenz.de/2012-07-14/a-working-k-means-code-for-octave/のデフォルトのk-meansクラスタリングアルゴリズムの実装を使用しています。数値データのみで機能します。 だから私の質問:カテゴリ属性CategoricalAttrを3つの数値(バイナリ)変数に分割するのは正しいIsCategoricalAttrValue1, IsCategoricalAttrValue2, IsCategoricalAttrValue3ですか?



5
ニューラルネットワークの「死にゆくReLU」問題とは何ですか?
視覚認識のための畳み込みニューラルネットワークに関するスタンフォードのコースノートを参照すると、次の段落が述べられています。 「残念ながら、ReLUユニットはトレーニング中に壊れやすく、「死ぬ」可能性があります。たとえば、ReLUニューロンを流れる大きな勾配により、ニューロンがデータポイントで再びアクティブにならないように重みが更新される可能性があります。つまり、ReLUユニットは、データマニホルドからノックオフされる可能性があるため、トレーニング中に不可逆的に死ぬ可能性があります。学習率の設定が高すぎると、ネットワークの%が「死んでいる」(つまり、トレーニングデータセット全体でアクティブにならないニューロン)場合があります。学習率を適切に設定すれば、これはあまり問題になりません。 ここでのニューロンの死はどういう意味ですか? 簡単な言葉で直感的な説明をお願いします。

5
ニューラルネットワークのクロスエントロピー誤差関数
ML初心者向けのMNISTでは、クロスエントロピーを次のように定義しています Hy′(y):=−∑iy′ilog(yi)Hy′(y):=−∑iyi′log⁡(yi)H_{y'} (y) := - \sum_{i} y_{i}' \log (y_i) i y ′ iyiyiy_iはクラス予測確率値で、はそのクラスの真の確率です。iiiy′iyi′y_i' 質問1 ()が0になるのは問題ではありませんか?これはもちろん、本当に悪い分類器を持っていることを意味します。しかし、データセットのエラー、たとえばとしてラベル付けされた「明白な」を考えてください。単にクラッシュしますか?選択したモデル(最後にソフトマックスアクティベーション)は、基本的に正しいクラスに対して確率0を与えませんか?yiyiy_ilog(yi)log⁡(yi)\log(y_i)13 質問2 クロスエントロピーは次のように定義されることを学びました Hy′(y):=−∑i(y′ilog(yi)+(1−y′i)log(1−yi))Hy′(y):=−∑i(yi′log⁡(yi)+(1−yi′)log⁡(1−yi))H_{y'}(y) := - \sum_{i} ({y_i' \log(y_i) + (1-y_i') \log (1-y_i)}) 何が正しいのですか?いずれかのバージョンの教科書の参照はありますか?これらの関数は、その特性がどのように異なりますか(ニューラルネットワークのエラー関数として)?

8
scikit_learnモデルのfitとfit_transformの違いは?
私はデータサイエンスの初心者でfitありfit_transform、scikit-learnのメソッドとメソッドの違いを理解していません。誰がデータを変換する必要があるのか​​を簡単に説明できますか? トレーニングデータにモデルを適合させ、テストデータに変換することはどういう意味ですか?たとえば、カテゴリ変数をトレイン内の数値に変換し、新しい機能セットをテストデータに変換するということですか?

6
マルチクラス分類設定でのマイクロ平均とマクロ平均のパフォーマンス
3つのクラスでマルチクラス分類設定を試しています。クラス分布は歪んでおり、ほとんどのデータは3つのクラスのうち1つに分類されます。(クラスラベルは1,2,3で、データの67.28%がクラスラベル1に含まれ、11.99%のデータがクラス2にあり、クラス3に残ります) このデータセットでマルチクラス分類器をトレーニングしており、次のパフォーマンスが得られています。 Precision Recall F1-Score Micro Average 0.731 0.731 0.731 Macro Average 0.679 0.529 0.565 なぜすべてのマイクロ平均がわからないのか パフォーマンスは同等であり、マクロ平均パフォーマンスが非常に低い理由でもあります。

15
機械学習のためのPython vs R
学術目的で機械学習アプリケーションを開発し始めたところです。私は現在Rを使用しており、Rで自分を訓練しています。しかし、多くの場所で、Pythonを使用している人を見てきました。 学界や産業界で人々は何を使用していますか?また、推奨事項は何ですか?

3
One Hot Encoding vs LabelEncoder vs DictVectorizo​​rを使用する場合
しばらくの間、カテゴリデータを使用してモデルを構築してきましたが、この状況では、基本的にscikit-learnのLabelEncoder関数を使用して、モデルを構築する前にこのデータを変換します。 私は違いを理解しOHE、LabelEncoderそしてDictVectorizor、彼らはデータに何をしているかという点では、しかし、あなたは他の上にある技術を採用することを選択する可能性がある場合、私には明確ではないものです。 あるものが他のものに対して利点/欠点を持っている特定のアルゴリズムまたは状況はありますか?

6
GRU over LSTMを使用する場合
GRUとLSTMの主な違いは、GRUには2つのゲート(リセットおよび更新ゲート)があり、LSTMには3つのゲート(つまり、入力、出力、および忘却ゲート)があることです。 (3つのゲートがあるので)LSTMモデルを介してネットワークをより明確に制御できるのに、なぜGRUを使用するのですか?どのシナリオでGRUがLSTMよりも優先されますか?

12
ビッグデータはどのくらいですか?
多くの人々は、大きなデータセットが計算に関与していることを示す手段として、かなり商業的な方法でビッグデータという用語を使用しているため、潜在的なソリューションには優れたパフォーマンスが必要です。もちろん、ビッグデータには、スケーラビリティや効率などの関連用語が常に含まれていますが、問題をビッグデータの問題として正確に定義しているのは何ですか? 計算は、データマイニング/情報検索などの特定の目的のセットに関連する必要がありますか、またはデータセットが十分に大きい場合、一般的なグラフ問題のアルゴリズムにビッグデータのラベルを付けることができますか?また、どのように大きいです十分な大きさ(これを定義することが可能である場合)?

8
学習率の選択
現在SGD、バックプロパゲーションを使用したニューラルネットの確率的勾配降下法の実装に取り​​組んでおり、その目的は理解していますが、学習率の値を選択する方法についていくつか質問があります。 学習率は、降下率を決定するため、誤差勾配の形状に関連していますか? もしそうなら、この情報をどのように使用して価値についての決定を知らせるのですか? それがどのような種類の値を選択する必要がない場合、どのように選択する必要がありますか? オーバーシュートを避けるために小さな値が必要なようですが、ローカルミニマムにとらわれたり、下降に時間がかかったりしないように、どのように選択しますか? 一定の学習率を持つことは理にかなっていますか、または勾配の最小値に近づくにつれてその値を変更するために何らかのメトリックを使用する必要がありますか? つまり、SGDの学習率を選択するにはどうすればよいですか?


Licensed under cc by-sa 3.0 with attribution required.