後のサポートベクターマシンのスタートコードチュートリアルのSVMの原理を理解してください。
特定の分類の考えは、非常に明確に指摘しています。
#1 アイデア分類器 #2 どのように?最適な分類超平面探している #3 の核を:ライン #4 のデータ:サンプル #5 訓練列車がSVM_createの予測 #のSVMは、本質的に最適な分類超平面求めている #のSVMの核:ライン #の身長と体重トレーニング予測 インポートCV2の インポートnumpyのをAS NP インポートmatplotlib.pyplot AS PLTの #1 の調製男の子と女の子の二つのクラスのデータ・サンプル・データ、身長および体重を調製 RAND1 = np.array([ 155、48 ]、[ 159、50 ]、[ 164は、53れています ]、[ 168、56である ]、[ 172、60 ]]) RAND2 = np.array([ 152、53である ]、[ 156、55 ]、[ 160は、56である ]、[ 172、64 ]、[ 176、65 ]]) #2 タグ・ラベル(および0.1) ラベル = np.array([[ 0 ]、[ 0 ]、[ 0 ]、[ 0 ]、[ 0 ]、[ 1 ]、[ 1 ]、[ 1 ]、[ 1 ] [ 1 ]) #3 データ データ = np.vstack((RAND1、RAND2)) データ = np.array(データ、DTYPE = ' のfloat32 ' ) SVM位は、すべてのデータラベル有していなければならない #[ 155、48 - ] 0女の子[ 152を、53 ] --- 1人の 男の子 #学習-supervised 0陰性サンプル1つの陽性サンプル #4 トレーニング SVM = cv2.ml.SVM_create()#mlの機械学習モジュールSVM_create()を作成するため に#プロパティ (cv2.ml.SVM_C_SVCをsvm.setTypeをタイプの)#1 SVM svm.setKernel(cv2.ml.SVM_LINEAR)#ライン svm.setC(0.01 ) #トレーニング 結果 = svm.train(データ、cv2.ml.ROW_SAMPLE、ラベル) #予測 pt_data = np.vstack([ 167は、55 [、] 162、57である ]])#0 少女1人の少年 pt_data = NP .ARRAY(pt_data、DTYPE = ' のfloat32 ' ) 印刷(pt_data) (PARl、PAR2) = svm.predict(pt_data) 印刷(PAR2)