データサイエンス

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

1
マルチクラスデータセットで誤った分類を引き起こす不均衡なデータ
39のカテゴリ/クラスと850万件のレコードがあるテキスト分類に取り組んでいます。(将来的にはデータとカテゴリーが増えるでしょう)。 私のデータの構造またはフォーマットは次のとおりです。 ---------------------------------------------------------------------------------------- | product_title | Key_value_pairs | taxonomy_id | ---------------------------------------------------------------------------------------- Samsung S7 Edge | Color:black,Display Size:5.5 inch,Internal | 211 Storage:128 GB, RAM:4 GB,Primary Camera:12 MP Case cover Honor 8 | Color:transparent,Height:15 mm,width:22 mm | 212 Ruggers Men's T-Shirt | Size:L,ideal for:men,fit:regular, | 111 sleeve:half sleeve Optimum Nutrition Gold | …

1
Octaveにシグモイド関数を実装するにはどうすればよいですか?[閉まっている]
休業。この質問には詳細または明確さが必要です。現在、回答を受け付けていません。 この質問を改善してみませんか?詳細を追加し、この投稿を編集して問題を明確にしてください。 2年前休業。 シグモイド関数がhθ(x)= g(θ^(T)x)として定義されている場合、g = zeros(size(z))が指定されている場合、この関数をOctaveにどのように実装できますか?

2
適切なポイントを選択するために適用するアルゴリズム
下の写真は、原点の周りの7つのポイントを示しています。それらの1つは、ルールと経験に基づいて人間によって選択されており、赤(左下の四分円にある1つ)に色分けされています。 現在、これらのポイントのセットは1000以上あり、各セットに対して人間が単一のポイントを選択しています。これらの条件はすべてのセットに適用されます。 各セットには約3〜10のポイントがあります 外れ値はありません ポイントは正と負の値を持つことができます ポイントを選択するときに間違いはありませんでした 私の質問は、これらのセットと人間が行った選択から学習する機械学習アルゴリズムがあり、新しいポイントのセットが与えられたときにどのポイントを選択するかを自動的に決定できるかどうかです。この新しいセットは、もちろん上記の最初の3つの条件を満たす。 2つの最後の発言: 私が挙げた例は、ランダムに作成された例であり、選択された原点とともに、原点の周りの平面内の点に関するアイデアをサポートします。実際にはもっと多くの構造があるかもしれませんが、今のところ私は好奇心が強く、このケースで何が可能か知りたいです。 バリエーションは可能ですか?それが約2つの選択されたポイントであるか、またはポイントの代わりに特定の半径を持つ円があるとします。

1
HDF5は、別個のpythonプロセスによって同時に確実に読み書きできますか?
このプロジェクトのデータセット全体が含まれる単一のHDF5ファイルにライブデータを経時的に記録するスクリプトを書いています。私はPython 3.6を使用clickしていて、データの収集に使用するコマンドラインツールを作成することにしました。 私の懸念は、データ収集スクリプトがHDF5ファイルに書き込んでいて、まだ作成されていないMLアプリケーションが同じファイルからデータを読み取ろうとするとどうなるかです。 私はHDF5パラレルI / Oに関するHDFグループのドキュメントを調べましたが、それではあまりわかりませんでした。
9 python  dataset 

1
クラスの1つが「他のどれでもない」によって定義されている分類問題にどのようにアプローチしますか
3つのクラスc1c1c_1、c2c2c_2、ます。しかし、私のデータセットには実際にはさらにいくつかの実際のクラスます。c3c3c_3(cj)nj=4(cj)j=4n(c_j)_{j=4}^n 明白な答えは、新しいクラスを定義することで、C 4、すべてのクラスを意味し、C J、J > 3を、私は、これは中のサンプル以来、良いアイデアではありません疑いますc^4c^4\hat c_4cjcjc_jj>3j>3j>3互いに非常に類似したまれではないだろう。c^4c^4\hat c_4 私は、私は、次の2つの変数空間を持っているとクラスとし、言うことをしようとしているものを可視化するために、C 2、C 3、C 4 = ⋃ N J = 4のC jは緑、ゴマ、赤で描かれており、それぞれ黒。これは私のデータがどのように見えるかと私が思う方法です。c1c1c_1c2c2c_2c3c3c_3c^4=⋃nj=4cjc^4=⋃j=4ncj\hat c_4= \bigcup_{j=4}^n c_j この問題に取り組むための標準的な方法はありますか?最も効率的な分類器は何ですか?なぜですか?

2
「ディープノーザーの定理」:対称制約の構築
固有の対称性が必要な学習問題がある場合、学習を強化するために学習問題に対称制約を適用する方法はありますか? たとえば、画像認識を行う場合、2D回転対称性が必要になる場合があります。つまり、画像の回転されたバージョンは元の画像と同じ結果になるはずです。 または、私が三目並べをプレイすることを学んでいる場合、90度回転させると同じゲームプレイが得られます。 これについて何か研究が行われましたか?


4
多変量時系列の分類
約40のディメンションを持つ時系列(8ポイント)で構成されるデータのセットがあります(したがって、各時系列は8 x 40です)。対応する出力(カテゴリの可能な結果)は0または1です。 複数の次元を持つ時系列の分類子を設計するための最良のアプローチは何でしょうか? 私の最初の戦略は、それらの時系列から特徴を抽出することでした:平均、標準、各次元の最大変動。RandomTreeForestのトレーニングに使用したデータセットを取得しました。これの全体的な素朴さを認識していて、悪い結果を得た後、私は今、より改善されたモデルを探しています。 私のリードは次のとおりです。各次元のシリーズを(KNNアルゴリズムとDWTを使用して)分類し、PCAで次元を減らし、多次元カテゴリに沿って最終的な分類子を使用します。MLは比較的新しいので、完全に間違っているかどうかはわかりません。

3
ハイパーパラメータチューニング基準のテストデータとモデル選択基準の検証データを実行した後、データ全体で最終モデルをトレーニングしませんか?
データ全体とは、トレーニング+テスト+検証を意味します 検証データを使用してハイパーパラメーターを修正し、テストデータを使用してモデルを選択したら、モデル全体をトレーニングするのではなく、データ全体でモデルをトレーニングして、パラメーターをトレーニングする方が良いでしょう。データのトレーニング

2
CNNをオートエンコーダとしてトレーニングすることには意味がありますか?
私は脳波データの分析に取り組んでいますが、最終的には分類する必要があります。ただし、レコーディングのラベルを取得するにはいくらか費用がかかるため、非常に大量のラベルなしデータをより適切に利用するために、教師なしアプローチを検討するようになりました。 これは当然、スタックオートエンコーダの検討につながりますが、これは良いアイデアかもしれません。ただし、畳み込みニューラルネットワークを使用することも意味があります。これは、何らかのフィルタリングがEEGに対して非常に有用なアプローチであり、考慮されるエポックが全体ではなくローカルで分析される必要があるためです。 2つのアプローチを組み合わせる良い方法はありますか?人々がCNNを使用するとき、彼らは一般的に教師付きトレーニングを使用しているようです、または何ですか?私の問題についてニューラルネットワークを探索することの2つの主な利点は、教師なしの側面と微調整であるようです(たとえば、人口データにネットワークを作成し、次に個人を微調整することは興味深いでしょう)。 それで、CNNが「不自由な」オートエンコーダであるかのようにCNNを事前トレーニングできるのか、それとも無意味なのか、誰かが知っていますか? たとえば、深い信念ネットワークなど、他のアーキテクチャを検討する必要がありますか?

3
従来のCVテンプレートマッチングよりも目視検査タスクに畳み込みNNを使用する理由
私たちが取り組んでいるプロジェクトに基づいて興味深いディスカッションがありました。なぜテンプレートマッチングアルゴリズムに対してCNN目視検査システムを使用するのですか? 背景:特定のタイプのオブジェクトが「壊れている」/欠陥があるかどうか(この場合はPCB回路基板)を検出する単純なCNNビジョンシステム(ウェブカメラ+ラップトップ)のデモを示しました。私のCNNモデルは、静的な背景に適切な、壊れた回路基板(それぞれ約100枚の画像)の例を示していました。私たちのモデルは、事前に訓練されたVGG16(imagenet上)の最初のいくつかのconv / maxpoolレイヤーを使用し、次にいくつかの密集度を持ついくつかのさらにトレーニング可能なconvs / poolsを追加し、分類のためのdim-3 one hotエンコードされたベクトル化された出力に導きました:(is_empty、has_good_product、has_defective_product)。 モデルはかなり簡単にトレーニングされ、問題なく99%の検証に達しました。また、データセットが小さいことがわかっているため、さまざまなデータ拡張を使用してトレーニングを行いました。実際には、10回のうち約9回動作しましたが、同じ回路基板のいくつかのランダムな変換/回転により、逆のクラスに配置される場合があります。おそらく、より積極的なデータ拡張が役立つでしょう。とにかく、プロトタイプのコンセプトプロジェクトについては私たちは幸せでした。 今、私たちは別のエンジニアと彼の同僚に提示していました、そして彼はNNがこれには過剰であるという議論を持ち出しました、ただテンプレートマッチングを使うべきです、なぜCNNをしたいのでしょうか? 私たちのアプローチが特定のアプリケーション(たとえば、検査する他の部品)でより優れている理由について、良い答えはありませんでした。私たちが提起したいくつかのポイント: 1)不変性に対してよりロバスト(たとえば、データ拡張を介して) 2)システムを改善するためにオンライン学習を行うことができます(たとえば、人間はどの例が間違っているかをソフトウェアに伝えることができます) 3)従来のコンピュータービジョンアルゴリズムのようにしきい値を設定する必要はありません。皆さんはどう思いますか、このタイプの検査タスクのためのCNNシステムにはもっと利点がありますか?どのような場合に、テンプレートマッチングよりも優れていますか? 深いNNが仕事の技術になる可能性がある場合のいくつかのランダムなアイデア:入力の一部として3D深度センシングを必要とするシステム、または変形/ストレッチ/押しつぶすことができるが、依然として「良好」である任意のタイプのオブジェクト不良品ではない(例:ぬいぐるみ、ワイヤーなど)。あなたの考えを聞いて興味があります:)

1
たたみ込み層は通常のたたみ込みネットワークとどのように異なりますか?
現在、この論文の結果を再現する作業をしています。この論文では、特徴抽出にCNNを使用する方法について説明し、RBNを使用して事前トレーニングされたDnn-hmmの音響モデルを使用しています。 セクションIIIサブセクションAは、入力データを表すことができるさまざまな方法を述べています。静的、デルタ、デルタデルタのスペクトルプロットを縦に積み重ねることにしました。 したがって、次のようになります。 その後、ネットワークはどうあるべきかを説明します。彼らは畳み込みネットワークを使用すると述べていますが、ネットワークの構造については何もありませんか?さらに、ネットワークは常に畳み込み層と呼ばれますか?通常のネットワーク畳み込みニューラルネットワーク(cnn)と比較して、違いがあると思います。 ペーパーは違いに関してこれを述べます: (セクションIIIサブセクションBから) ただし、畳み込み層は、2つの重要な点で標準の完全に接続された非表示層とは異なります。まず、各畳み込み単位は、入力のローカル領域からのみ入力を受け取ります。これは、各単位が入力のローカル領域のいくつかの特徴を表すことを意味します。第2に、畳み込み層の単位自体をいくつかの特徴マップに編成できます。同じ特徴マップ内のすべての単位は同じ重みを共有しますが、下位層の異なる場所から入力を受け取ります 私が不思議に思っていたもう1つのことは、dnn-hmm音響モデルに供給するために必要な出力パラメーターの数が実際に紙に記述されているかどうかです。フィルターの数、フィルターのサイズなど、ネットワークの一般的な詳細をデコードできないようです。

1
畳み込み層のパラメーター数
この高度に引用された論文、著者らは、重みパラメータの数に関する以下の説明を与えます。なぜパラメータがあるのか​​、私にはよくわかりません 私はそれがあるべきだと思う49 Cの各以来、Cの入力チャネルを共有している同じフィルタ、49個のパラメータを。49C249C249C^249C49C49CCCC494949

3
大きな混同行列を読みやすくするにはどうすればよいですか?
私は最近、369クラスのデータセット(リンク)を公開しました。いくつかの実験を行って、分類作業がいかに難しいかを感じました。通常、発生しているエラーのタイプを確認するための混同行列がある場合、私はそれが好きです。ただし、マトリックスは実用的ではありません。369 × 369369×369369 \times 369 大きな混乱行列の重要な情報を提供する方法はありますか?たとえば、通常、あまり興味のない0がたくさんあります。完全な混同行列の一部である複数の行列を表示できるようにするために、ほとんどの非ゼロエントリが対角線の周りになるようにクラスを並べ替えることはできますか? これは大きな混同行列の例です。 野生の例 EMNISTの図6は見栄えがします。 多くのケースがどこにあるかを簡単に確認できます。ただし、これらはクラスのみです。1列だけではなくページ全体を使用した場合、これはおそらく3倍になりますが、それでもクラスのみになります。HASYの369クラスやImageNetの1000クラスにも近くありません。26日26日263 ⋅ 26 = 783⋅26日=783 \cdot 26 = 78 こちらもご覧ください CS.stackexchangeに関する私の同様の質問

4
機能の重要性に照らしてディシジョンツリーを解釈する
私は、sklearnで構築された決定木分類モデルの決定プロセスを完全に理解する方法を理解しようとしています。私が見ている2つの主な側面は、ツリーのgraphviz表現と機能の重要度のリストです。私が理解していないのは、ツリーのコンテキストで機能の重要度がどのように決定されるかです。たとえば、これは私の機能の重要性のリストです: 機能のランク:1. FeatureA(0.300237) FeatureB(0.166800) FeatureC(0.092472) FeatureD(0.075009) FeatureE(0.068310) FeatureF(0.067118) FeatureG(0.066510) FeatureH(0.043502) フィーチャーI(0.040281) FeatureJ(0.039006) FeatureK(0.032618) FeatureL(0.008136) FeatureM(0.000000) しかし、ツリーの一番上を見ると、次のようになっています。 実際、「最も重要」にランク付けされた機能の一部は、ツリーのずっと下まで表示されません。ツリーの上部は、最も低いランクの機能の1つであるFeatureJです。私の素朴な仮定は、最も重要な機能が最大の影響を与えるためにツリーの上部近くにランク付けされるということです。それが正しくない場合、機能を「重要」にするのは何ですか?

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