因此,目前我正在嘗試許多不同的機器學習模型(KNN,Kmeans,神經網絡,決策樹等),以找出哪種模型最適合我的情況。 「M被陷在是,我立足我的意見算法下面是對X功能一個條目:Python機器學習準確性評分與意見
X-array([ 96255., 114452., 177551., 141049., 170292., 8155.,
502., 683.])
下面是一個樣本集的期待所輸入的功能Y值如上圖所示:
Y-array([ 70., 60., 70., 70., 70., 65., 50., 40., 60., 80., 70.,
50., 90., 70., 70., 70., 60., 30., 50., 80., 70., 75.,
80., 70., 80., 70., 80., 60., 70., 70., 60., 70., 60.,
60., 70., 60., 65., 70., 70., 50., 60., 40., 60., 80.,
75., 70.])
現在棘手的部分,預期的Y值是相同的輸入功能。例如,所描述的X陣列可以具有與其匹配的以下分數:70,60,50,70,65。由於這些都是人們的意見,所以現在還沒有對錯,我希望這個模型能夠找到。然而,當試圖預測所有模型的準確性時(看哪個是最好的模型)。我得到的結果很低(顯然),因爲它無法將單個值與多個期望值相匹配。有沒有一種好的方法來處理意見和預測意見?提示和建議,歡迎。
只是爲了過關,通常我轉換數據提供:
scaler = StandardScaler()
x = scaler.fit_transform(x)
目前與我測試的準確性:
clf_NeuralNetwork.score(X_test, y_test)
而且我爲了分裂測試使用K-折算法訓練數據以便不過度擬合數據。提前致謝!
小更新:我目前傾向於去同一個模型,如:
i = 0
j = 0
score = 0
for prediction in neigh1.predict(X_test):
print(prediction)
for predictedScore in neigh1.classes_:
if predictedScore == y_train[i]:
print(predictionMatrix[i][j])
score = score + (predictionMatrix[i][j] * 100)
print(score)
j = j + 1;
j=0
i = i + 1
print(score/i)
這需要一個正確答案的概率計算的模型是關閉多遠精度(製作50/50次分割仍然是50%準確的情況)。
感謝您的提示,我會研究XGBoost。我確實更新了自己目前正在嘗試使用的主題。基本上我試圖根據許多功能預測1-10分(目前的設置僅僅是開始)。所以我相信樹木運作良好,我只想保持其他選擇。 – Soldexio