メルカリでこんな記事がありました
inceptionV3の中間層から取り出した特徴デカすぎない?リアルタイムで計算できるの?
特徴はPCAで次元潰して計算コスト下げてる
メルカリにおける AI 活用事例 PyCon JP 2018
これに書いてあるのはinceptionv3の中間層から取り出した特徴ベクトルを、PCAで次元削減しているようです。
自分も試しにやって見たのですが、上手く行きません?
kerasのmodelに次元削減は無理なのでしょうか?
この中間層のベクトルを次元削減する手法はどのようにやるのかについて、何か参考になること、推論、資料なんでもいい良いので、知恵を貸していただけないでしょうか?
=>実験
python
1 2# tfrecordの場合 3train_image, train_labels=distorted_input(filenames, batch_size=256, train=True) 4train_image 5>>><tf.Tensor 'Sub_1:0' shape=(256, 150, 150, 3) dtype=float32> 6model= InceptionV3(include_top=False, weights=None, input_tensor=train_image, pooling='avg', classes=200) 7model 8>>> <keras.engine.training.Model at 0x1a325c4eb8> 9 10 11# shape指定の場合 12model= InceptionV3(include_top=False, weights=None, input_shape=(150,150,3), pooling='avg', classes=200) 13model 14>>> <keras.engine.training.Model at 0x1a38b6a208> 15 16# 次元削減 17pca = PCA(n_components=500) 18pca.fit(model) 19 20plt.plot(np.cumsum(pca.explained_variance_ratio_)) 21 22# エラー 23TypeError Traceback (most recent call last) 24<ipython-input-11-ceb44ec0ea8f> in <module>() 25 1 26 2 pca = PCA(n_components=500) 27----> 3 pca.fit(model) 28 4 29 5 plt.plot(np.cumsum(pca.explained_variance_ratio_)) 30 31/anaconda3/lib/python3.6/site-packages/sklearn/decomposition/pca.py in fit(self, X, y) 32 327 Returns the instance itself. 33 328 """ 34--> 329 self._fit(X) 35 330 return self 36 331 37 38/anaconda3/lib/python3.6/site-packages/sklearn/decomposition/pca.py in _fit(self, X) 39 368 40 369 X = check_array(X, dtype=[np.float64, np.float32], ensure_2d=True, 41--> 370 copy=self.copy) 42 371 43 372 # Handle n_components==None 44 45/anaconda3/lib/python3.6/site-packages/sklearn/utils/validation.py in check_array(array, accept_sparse, dtype, order, copy, force_all_finite, ensure_2d, allow_nd, ensure_min_samples, ensure_min_features, warn_on_dtype, estimator) 46 431 force_all_finite) 47 432 else: 48--> 433 array = np.array(array, dtype=dtype, order=order, copy=copy) 49 434 50 435 if ensure_2d: 51 52TypeError: float() argument must be a string or a number, not 'Model'
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/09/22 05:26
2018/09/22 09:00
2018/09/22 09:48