畳み込みニューラル ネットワークから抽出された機能を使用して SVM をトレーニングしています。この論文 ( http://arxiv.org/pdf/1405.3531v4.pdf ) に書かれているように、フィーチャに SVM を適用する前にフィーチャを L2 正規化することをお勧めします。
この関数を使用してベクトルを正規化します。
def l2normalize(features):
l2norm = np.sum(np.abs(features)**2,axis=-1)**(1./2)
return features/l2norm
この正規化の後、精度が約 60% から 20% に低下したため、明らかに何かが間違っています。L2 ノルムを使用して SVM 用にベクターを適切に準備するにはどうすればよいですか?