我對機器學習和python非常陌生,我試圖構建一個模型來預測患者(N = 200)與對照(N = 200)形成結構性神經影像數據。最初的預處理是後我重塑了神經影像數據到一個二維數組,我建立以下模型:是否可以向SVM模型添加協變量(對不感興趣的變量的控制)?
from sklearn.svm import SVC
svc = SVC(C=1.0, kernel='linear')
from sklearn.grid_search import GridSearchCV
from numpy import range
k_range = np.arange(0.1,10,0.1)
param_grid=dict(C=k_range)
grid=GridSearchCV(svc, param_grid, cv=10, scoring='accuracy')
grid.fit(img,labels)
grid.grid_scores_
print grid.best_score_
print grid.best_params_
這給了我一個體面的結果,但我想,以控制不同的圖像,用所獲得的事實不同的掃描儀(例如用掃描儀1掃描對象1至150,用掃描儀2掃描對象101至300,用掃描儀3掃描對象301至400)。無論如何,這可以添加到上面的模型?
我讀過之前做過的功能選擇可能會有幫助。但是,當這些功能可能與掃描儀相關時,我不想簡單地提取有意義的功能。事實上,我想根據掃描儀對患者和控制進行分類(即控制掃描儀)。
對此有何想法,將不勝感激, 謝謝
只是評論,參數'C'的網格應該是對數間隔的。 'k_range = np.logspace(-1,1,100)' –
謝謝@ZichenWang您的建議,會更新代碼。 –
這聽起來像你正在尋找某種形式的規範化,其中掃描儀錯誤被抽象出來。我不確定這些方法是什麼,但也許更廣泛的術語可能會有所幫助。 –