タグ付けされた質問 「image-classification」

画像の分類に関する質問:アルゴリズムが入力画像が属するクラス(「猫」、「椅子」、「木」)を決定しなければならないという決定問題。

1
指定された変数に直交する(相関しない)予測を生成する
私が持っているXマトリックス、y変数、および他の変数をORTHO_VAR。私はをy使用して変数を予測する必要がありますXが、そのモデルからの予測は、可能な限りORTHO_VAR相関する一方で、直交する必要がありますy。 私は予測がノンパラメトリックな方法で生成されることを望みxgboost.XGBRegressorますが、どうしても必要な場合は線形法を使用できます。 このコード: import numpy as np import pandas as pd from sklearn.datasets import make_regression from xgboost import XGBRegressor ORTHO_VAR = 'ortho_var' TARGET = 'target' PRED = 'yhat' # Create regression dataset with two correlated targets X, y = make_regression(n_features=20, random_state=245, n_targets=2) indep_vars = ['var{}'.format(i) for i in range(X.shape[1])] # …
8 correlation  machine-learning  dataset  logistic-regression  prediction  linear-regression  prediction  dummy-variables  neural-network  image-classification  python  k-nn  python  neural-network  neural-network  deep-learning  keras  tensorflow  image-classification  tensorflow  reinforcement-learning  policy-gradients  machine-learning  decision-trees  neural-network  overfitting  data-analysis  metric  python  scikit-learn  distance  scipy  machine-learning  python  scikit-learn  decision-trees  logistic-regression  keras  image-classification  implementation  machine-learning  python  scikit-learn  random-forest  decision-trees  machine-learning  feature-selection  feature-engineering  word2vec  word-embeddings  natural-language-process  scikit-learn  time-series  clustering  k-means  python  cross-validation  pyspark  statistics  cross-validation  multiclass-classification  evaluation  machine-learning  nlp  machine-translation  neural-network  deep-learning  keras  tensorflow  image-classification  machine-learning  python  similarity  distance  lstm  text  named-entity-recognition  machine-learning  keras  optimization  gan  learning-rate  neural-network  data-mining  dataset  databases  books  neural-network  rnn 

2
大きな変動を示す検証。原因は何でしょうか?
3クラスの画像分類問題のためにCNNをトレーニングしています。トレーニングの損失はスムーズに減少しました。これは予想される動作です。しかし、私の検証損失は多くの変動を示しています。 これは私が心配する必要があることですか、それともパフォーマンス測定(精度)で最高のスコアを得るモデルを選択するだけですか? 追加情報: PyTorchのImageNetデータで事前トレーニングされたResnet-18の最後のレイヤーを微調整しています。データが非常に不均衡であるため、トレーニングフェーズに加重損失関数を使用していることに注意する必要があります。ただし、損失をプロットするために、検証とトレーニング損失を比較できるように、重み付けされていない損失を使用します。私は、重み付けされていない損失を使用します。トレーニングデータセットと検証データセットの分布が多少異なるというわけではありません(ただし、どちらも非常に不均衡です)。

3
mnistの例でのReLUとシグモイド
注意してください:私は次の例を改善しようとはしていません。99%以上の精度が得られることは知っています。コード全体が問題です。この単純なコードを試したところ、約95%の精度が得られました。アクティベーション関数をシグモイドからreluに変更すると、50%未満に低下します。これが起こる理論的な理由はありますか? 次の例をオンラインで見つけました。 from keras.datasets import mnist from keras.models import Sequential from keras.layers.core import Dense, Activation from keras.utils import np_utils (X_train, Y_train), (X_test, Y_test) = mnist.load_data() X_train = X_train.reshape(60000, 784) X_test = X_test.reshape(10000, 784) Y_train = np_utils.to_categorical(Y_train, classes) Y_test = np_utils.to_categorical(Y_test, classes) batch_size = 100 epochs = 15 model = Sequential() …

3
ニューラルネットワークを使用して段ボール箱を検出する方法
複数のクラスの人(人)とともに段ボール箱を検出する方法をニューラルネットワークにトレーニングしようとしています。 人を検出し、正しく分類するのは簡単ですが、段ボール箱を検出するのは非常に困難です。 ボックスは次のようになります。 私の疑いは、ボックスがオブジェクトに対して単純すぎることです。オブジェクトから抽出する機能が少なすぎるため、ニューラルネットワークはそれを検出することが困難です。 データセットの分割は次のようになります。 personA: 1160 personB: 1651 personC: 2136 person: 1959 box: 2798 人は、分類されているアイテムに基づいてさまざまな安全アイテムを着用していますが、アイテムだけでなく、人全体として検出されています。 私が使用しようとしました: ssd300_incetpionv2 ssd512_inceptionv2 faster_rcnn_inceptionv2 これらはすべて、箱よりもはるかに優れた人物の検出と分類です。正確には提供できませんmAP(それがありません)。 何か案は? ありがとう。

2
画像のコピーを識別するためのニューラルネットワークアーキテクチャ
大規模な画像コレクションがあり、コレクションから他の画像をコピーしているように見える、そのコレクション内の画像を特定したいと考えています。 一致として分類したい画像ペアの種類を理解するために、次の例を検討してください。 私はおよそ.25Mの一致する画像のペアを手で分類しました。次に、それらの手でラベル付けされた一致を使用してニューラルネットワークモデルをトレーニングします。どのアーキテクチャがこのタスクに理想的に適しているかはわかりません。 元々は同様のタスクに使用されているので、シャムネットワークが適切かもしれないと思っていましたが、これらの分類子からの出力は、同じオブジェクトの異なる形を見つけるのに理想的です(これは私が望むものではありません)。同じ形の(それが私が欲しいものです)。 私が準備したトレーニングデータを前提として、画像の特定に理想的な論文やアーキテクチャを推奨できる人がいれば、私はあなたが提供できるあらゆる洞察に非常に感謝します。

1
視覚的な言葉のバッグ
私がやろうとしていること: 一部の画像をローカルおよびグローバル機能を使用して分類しようとしています。 これまでに行ったこと: 各画像のシフト記述子を抽出しました。これをk平均の入力として使用して、すべての画像のすべての機能から語彙を作成しています。ここから、画像のふるい分け機能をk平均法の予測メソッドに渡してクラスターのラベルを取得することで、各画像のクラスターからヒストグラムを作成します。ここから、各ビンのラベルの数をカウントしてヒストグラムを作成します。これでnxm行列ができました。nは画像の数、mは各画像のクラスター(特徴/単語)の数です。 このマトリックスを分類器に送り、画像の分類を取得します。 一言で言えば、ステップ: 各画像にnx128行列を与えるシフト機能記述子を抽出します すべての機能記述子を1つの大きなリストにスタックします これらの機能すべてをkmeansアルゴリズム設定k = 100に適合させます。 すべての画像について、そのシフト機能を使用して、同じトレーニング済みkmeansモデルを使用してクラスターのラベルを予測します ビンの数としてkを使用してクラスターからヒストグラムを作成し、モデルの各ラベルのビンに1を追加します。(画像にシフトからの10個の特徴がある場合、10個のラベルが与えられ、これらの10個のラベルはkの範囲にあるため、各ラベルについて、ヒストグラムの対応するビンに追加します)。 これでnxk行列ができました。nは画像の数、kはクラスターの数です。 次に、ヒストグラムを分類子にフィードし、テストデータを予測するように依頼します。 問題: Bag of Visual Wordsを正しく実行していますか? これが私のコードです: def extract_features(df): IF = imageFeatures() global_features = [] sift_features = [] labels = [] for i, (index, sample) in enumerate(df.iterrows()): image = cv2.imread(sample["location"]) image = cv2.resize(image, shape) hist = …

1
ケラスの事前学習済みモデルの特徴抽出
Kerasには、事前トレーニングされたモデルの機能を抽出する方法があります。ここで説明しますhttps://keras.io/applications/ from keras.applications.vgg16 import VGG16 from keras.preprocessing import image from keras.applications.vgg16 import preprocess_input import numpy as np model = VGG16(weights='imagenet', include_top=False) img_path = 'elephant.jpg' img = image.load_img(img_path, target_size=(224, 224)) x = image.img_to_array(img) x = np.expand_dims(x, axis=0) x = preprocess_input(x) features = model.predict(x) いくつかのサンプル画像でこれを試しました。私のベクトルxは、100回の観測で形状(100、3、224、224)、RGBで3、ピクセルサイズが224x224です。はpreprocess_inputVGGモデルのこれを再形成します(別の順序を想定しています)。 ただし、の出力形状featuresは(100、512、7、7)です。この形は何ですか?これらの機能をロジスティック回帰の入力として使用したい。したがって、(100、n)のような形状が必要です。観測ごとに1行と列の特徴です。出力をこの次元に再形成するにはどうすればよいですか? 今、自分のシンプルなConvnetを構築したいとします。 from keras.models import Sequential from …

1
分類の課題に使用されるImageNet ILSVRC 2012データを取得するにはどうすればよいですか?
画像のネット結果の一部を再現できるかどうかを確認したいと思います。しかし、ILSVRC 2012(またはそれ以降)の分類の課題でトレーニング/テストに使用されたデータ(URLのリスト)が見つかりませんでした。http://www.image-net.org/download-imageurlsしか見つかりませんでした。 ImageNet ILSVRC 2012(またはそれ以降)の分類の課題に使用されるデータはどこにありますか?

3
トレーニングデータ画像を手動で分類するためのツールを構築する
クラスタリングアルゴリズムをトレーニングするために分類する必要がある画像が多数あり、オフラインでデータを取得したいと考えています(データは独自のものです)。基本的に、各画像を1つまたは2つのカテゴリにすばやく配置できるデスクトップ調査ツールを構築したいと思います。理想的には、ツールは: 事前に指定されたデスクトップフォルダーで画像を検索します。 画像とカテゴリの静的リストを表示し、クリックできるようにします。 クリックすると、画像に関連付けられたカテゴリが記録されます。 画像のファイル名と関連カテゴリをデータセットのどこかに保存します。 フォルダ内の次のタグなし画像を表示し、プロセスを繰り返します。 この種のツールをPythonで簡単に構築する方法、または無料でオフラインで使用できる他のビルド済みユーティリティはありますか?


2
トレーニングデータとテストデータの分布の違い
機械学習の基本的な前提は、トレーニングデータとテストデータが同じ母集団から抽出され、したがって同じ分布に従うことです。しかし、実際には、これはほとんどありません。共変量シフトはこの問題に対処します。誰かがこれに関する以下の疑問をクリアできますか? 2つの分布が統計的に異なるかどうかをどのように確認しますか?カーネル密度推定(KDE)を使用して、確率分布を推定して違いを伝えることはできますか?特定のカテゴリの画像が100枚あるとします。テスト画像の数は50で、トレーニング画像の数を5から50に5のステップで変更しています。KDEで推定した後、5つのトレーニング画像と50のテスト画像を使用すると、確率分布が異なると言えますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.