データサイエンス

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

3
次元削減のための自動エンコーダーが対称的であるのはなぜですか?
私はオートエンコーダーやニューラルネットワークの専門家ではありませんので、これがばかげた質問であればご容赦ください。 次元削減または高次元データのクラスターの視覚化の目的で、オートエンコーダーを使用して、2つのノードを持つネットワークレイヤーの出力を検査することにより、(損失のある)2次元表現を作成できます。たとえば、次のアーキテクチャでは、3番目の層の出力を検査します [ X] → N1= 100 → N2= 25 → (N3= 2 )→ N4= 25 → N5= 100 → [ X][バツ]→N1=100→N2=25→(N3=2)→N4=25→N5=100→[バツ][X] \rightarrow N_1=100 \rightarrow N_2=25 \rightarrow (N_3=2) \rightarrow N_4=25 \rightarrow N_5=100 \rightarrow [X] ここで、入力データとなるN L内のノードの数であり、L層目。バツバツXNlNlN_llll さて、私の質問は、なぜ対称アーキテクチャが必要なのかということです。深い「圧縮」フェーズのミラーは、同様に複雑な「圧縮解除」フェーズがあり、非常に直感的であるように強制されない2ノード出力になる可能性があることを意味しませんか?言い換えると、単純なデコードフェーズを使用すると、2つのノードを持つレイヤーの出力も必然的にシンプルになりませんか? ここでの私の考えは、圧縮解除フェーズが複雑でないほど、2D表現はより単純(線形に近い)でなければならないということです。より複雑な解凍フェーズでは、より複雑な2D表現が可能になります。

3
畳み込みが常に奇数をfilter_sizeとして使用する理由
CNN(ConvNet)を使用して発行された論文の90〜99%をご覧ください。それらの大半は、奇数のフィルターサイズを使用します:{ 1、3、5、7 }。 この状況はいくつかの問題を引き起こす可能性があります:これらのフィルターサイズでは、通常、畳み込み演算は2のパディング(一般的なパディング)では完全ではなく、input_fieldの一部のエッジはプロセスで失われます... 質問1:畳み込みフィルターサイズに奇数番号のみを使用する理由 質問2:畳み込み中にinput_fieldの一部を省略することは実際には問題ですか?なぜそうなのか?

3
ニューラルネットワークには、ディシジョンツリーのような説明可能性がありますか?
デシジョンツリーでは、ツリー構造の出力を理解でき、デシジョンツリーが決定を下す方法を視覚化することもできます。したがって、決定木には説明可能性があります(その出力は簡単に説明できます)。 デシジョンツリーのように、ニューラルネットワークに説明可能性がありますか?

1
ディープラーニングの1D畳み込み層とは
私は、2Dまたは3D実装の場合の画像処理のためのディープラーニングにおける畳み込み層の役割とメカニズムについて十分に理解しています。彼らは「単純に」画像の2Dパターンをキャッチしようとします しかし最近、自然言語処理のコンテキストで1D畳み込み層にぶつかりました。これは、私にとっては驚きの種です。画像のピクセル。1Dコンボリューションの背後にあるロジックは何ですか?

3
とにかくMax Poolingが単に画像をダウンサンプリングするのであれば、なぜ畳み込みますか?
フィルタを適用してエッジの識別などを行うというアイデアは、かなりクールなアイデアです。 たとえば、7の画像を撮影できます。一部のフィルターを使用すると、元の画像のさまざまな特性を強調する変換された画像になります。元の7: ネットワークは次のように体験できます。 各画像が元の画像の異なるエッジを抽出していることに注目してください7。 これはすべて素晴らしいことですが、ネットワークの次の層は最大プーリング層であると言えます。 私の質問は、一般的に、これはちょっとやり過ぎのように思えませんか?フィルターを使用してエッジを特定することは非常に慎重で意図的でした-今では、ピクセル値から地獄を吹き飛ばしたので、それについてはもう気にしません!間違っている場合は修正してください。ただし、25 X 25から2 X 2に変更しました。それでは、なぜマックスプーリングに直行しないのか、基本的に同じことになるのではないでしょうか? 私の質問の延長として、偶然にも、4つの正方形のすべてに同じ最大値のピクセルがあった場合、どうなるのか疑問に思わずにはいられません。確かにこれはまれなケースではありませんよね?突然、すべてのトレーニング画像がまったく同じに見えます。

1
リカレントニューラルネットワーク(RNN)のレイヤーを忘れる-
私は忘却層のRNNの各変数の次元を把握しようとしていますが、正しい軌道に乗っているかどうかはわかりません。次の図と方程式は、Colahのブログ投稿「Understanding LSTM Networks」からのものです。 どこ: xtxtx_tはサイズm∗1m∗1m*1ベクトルの入力です ht−1ht−1h_{t-1}はサイズn∗1n∗1n*1ベクトルの隠れ状態です 例えば、もしは(連結である X T = [ 1 、2 、3 ] 、時間T - 1 = [ 4 、5 、6 ]、次に [ X 、T、HのT - 1 ] = [ 1 、2 、3 、4 、5 、6 ])[xt,ht−1][xt,ht−1][x_t, h_{t-1}]xt=[1,2,3],ht−1=[4,5,6]xt=[1,2,3],ht−1=[4,5,6]x_t=[1, 2, 3], h_{t-1}=[4, 5, 6][xt,ht−1]=[1,2,3,4,5,6][xt,ht−1]=[1,2,3,4,5,6][x_t, h_{t-1}]=[1, 2, 3, 4, 5, …


4
事前に訓練されたモデルの重みで新しいword2vecモデルを初期化する方法は?
word2vectorモデルの使用とトレーニングにPythonのGensimライブラリを使用しています。最近、(GoogleNewDataset事前学習済みモデル)などの事前学習済みのword2vecモデルでモデルの重みを初期化することを検討していました。私は数週間それと格闘してきました。さて、私はgesimに、事前に訓練されたモデルの重みでモデルの重みを初期化するのに役立つ関数があることを調べました。以下に説明します。 reset_from(other_model) Borrow shareable pre-built structures (like vocab) from the other_model. Useful if testing multiple models in parallel on the same corpus. この関数で同じことができるかどうかはわかりません。助けてください!!!

4
word2vecモデルのトレーニング中に転移学習を使用する利点を活用できますか?
Googleニュースデータなど、すでにトレーニング済みのモデルの事前トレーニング済みの重みを探しています。十分な量(10 GBなど)のデータを使用して新しいモデルをトレーニングするのは難しいと感じました。したがって、事前学習済みのレイヤーの重みを取得し、ドメイン固有の単語でそれらの重みを再学習できる転送学習の恩恵を受けたいと思います。したがって、トレーニングにかかる​​時間は比較的短くなります。どんな種類の助けも大歓迎です。前もって感謝します :)

4
決定木とKNN
どのケースでデシジョンツリーを使用し、他のケースではKNNを使用した方が良いですか? 特定のケースでそれらの1つを使用する理由 そして、別のケースで他の?(アルゴリズムではなく、その機能を見ることにより) これについての説明や参考文献はありますか?

2
倫理的かつ費用対効果の高いデータスクラップのスケーリング
構造化されたデータと構造化されていないデータをインターネットからスクレイピングし、それを自分のモデルで利用するような喜びを私に与えるものはほとんどありません。 たとえば、Data Science Toolkit(またはRDSTKRプログラマー)を使用すると、IPまたはアドレスを使用して多くの適切なロケーションベースのデータを取得でき、tm.webmining.pluginfor Rのtmパッケージにより、財務データとニュースデータを簡単にスクレイピングできます。このような(半)構造化データを超える場合は、を使用する傾向がありますXPath。 ただし、許可されるクエリの数の制限により、私は常に抑制されています。Googleは24時間あたり約50,000件のリクエストに制限していると思いますが、これはビッグデータにとって問題です。 技術的な観点からは、これらの制限を簡単に回避できます。IPアドレスを切り替えて、環境から他の識別子を削除するだけです。しかし、これは倫理的および財政的な懸念の両方を示しています(私は思う?)。 私が見落としている解決策はありますか?

8
Pythonはビッグデータに適していますか
私はこの記事で読んR言語はビッグデータに適してビッグデータを構成していること5TB、そしてそれがないながらにこのタイプのデータでの作業の実現可能性についての情報提供の良い仕事R、それはについてはほとんど情報を提供しますPython。Pythonこれだけのデータを扱うことができるのかと思っていました。
13 bigdata  python 

3
さまざまなタイプの属性を持つデータセットを分類する最良の方法
テキストと数値など、さまざまな種類の属性で構成されるデータセットを分類する最良の方法は何かを知りたいと思います。テキストをブール値に変換できることは知っていますが、語彙は多様であり、データがあまりにもまばらになります。また、属性のタイプを個別に分類し、メタ学習手法で結果を結合しようとしましたが、うまくいきませんでした。

2
抄録をクロールするためのAPIはありますか?
論文名のリストが非常に長い場合、インターネットまたはデータベースからこれらの論文の要約を取得するにはどうすればよいですか? 紙の名前は「公衆衛生の領域のためのWebマイニングにおけるユーティリティの評価」のようなものです。 誰かが私に解決策を与えることができるAPIを知っていますか?Google学者をクロールしようとしましたが、Googleがクローラーをブロックしました。

2
Kerasで「1対多」および「多対多」のシーケンス予測を実装する方法は?
1対多(たとえば、単一の画像の分類)と多対多(たとえば、画像シーケンスの分類)のシーケンスのラベル付けについて、Kerasコーディングの違いを解釈するのに苦労しています。2種類のコードが頻繁に表示されます。 タイプ1では、TimeDistributedは次のように適用されません。 model=Sequential() model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1], border_mode="valid", input_shape=[1, 56,14])) model.add(Activation("relu")) model.add(Convolution2D(nb_filters, kernel_size[0], kernel_size[1])) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=pool_size)) model.add(Reshape((56*14,))) model.add(Dropout(0.25)) model.add(LSTM(5)) model.add(Dense(50)) model.add(Dense(nb_classes)) model.add(Activation("softmax")) タイプ2は、TimeDistributedが次のように適用される場所です。 model = Sequential() model.add(InputLayer(input_shape=(5, 224, 224, 3))) model.add(TimeDistributed(Convolution2D(64, (3, 3)))) model.add(TimeDistributed(MaxPooling2D((2,2), strides=(2,2)))) model.add(LSTM(10)) model.add(Dense(3)) 私の質問は: タイプ1は1対多の種類であり、タイプ2は多対多の種類であるという私の仮定は正しいですか?それともTimeDistributed、この側面に関連性はありませんか? 1対多または多対多のいずれの場合も、最後の密な層は1ノードの「長い」(順番に1つの値のみを放出する)と想定され 、前の反復層は 1 対多の数を決定する責任があります。放出する値?または、最後の高密度層はN個のノードで構成されているはずN=max sequence lengthです。もしそうなら、 N個の並列「バニラ」推定器を 使用して複数の出力を持つ同様の入力を生成できる場合、ここでRNN を使用するポイントは何ですか? RNNのタイムステップ数を定義する方法は?それはどういうわけか 出力シーケンスの長さと相関していますか、それとも単に 調整するハイパーパラメータですか? …
13 keras  rnn  lstm  sequence 

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