【发布时间】:2016-08-09 19:11:38
【问题描述】:
我将这段代码放在那里,我已经完成了逻辑回归和 PCA + 逻辑回归。使用逻辑我得到了 95% 的准确率,而使用 PCA + 逻辑我得到了奇怪的结果。我对 50000 X 370 维数据的二元分类问题执行了逻辑回归。我得到了大约 90% 的准确率。但是当我对数据进行 PCA +logistic 时,我的准确率下降到了 5%,看到这个结果我非常震惊。谁能解释可能出了什么问题?任何人都可以看到什么是错误或者我应用 PCA 错误。我真的很困惑,请提出一些解决办法。
X_train1, X_test1, y_train1, y_test1 = train_test_split(X_test,y_test, test_size=0.50)
pca=PCA(n_components=0.98).fit(X_train1)
X_train1pca=pca.transform(X_train1)
X_test1pca=pca.transform(X_test1)
lr=LogisticRegression()
y_pred1=lr.fit(X_train1,y_train1).predict(X_test1)
y_pred2=lr.fit(X_train1pca,y_train1).predict(X_test1pca)
acc_pca=(y_pred2==y_test1).sum()/len(y_test1)
acc=(y_pred1==y_test1).sum()/len(y_test1)
print(acc_pca,acc)
print(acc_pca+acc)
我得到的结果如前所述:
0.954836446549 0.959221257564
1.91405770411
>>>
========= RESTART: C:\Users\prashant\Desktop\santandar\santander.py =========
0.0430588441638 0.962992195036
1.0060510392
>>>
========= RESTART: C:\Users\prashant\Desktop\santandar\santander.py =========
0.0463913005349 0.960098219767
1.0064895203
【问题讨论】:
-
请不要发布同一问题的多个版本。如果您当前的问题没有引起注意,请为清晰起见进行编辑或耐心等待。 stackoverflow.com/questions/36668768/…
-
我就是那个发帖的人,但是那里的人建议我用代码提出问题。所以我把它分开了。错了吗?
-
正如@arcticless 所说,你得到的结果标签很可能是倒置的。
-
@PrashantSharma - 您可以随时编辑之前的问题,添加您认为可能有助于人们回答您的问题的任何代码或额外信息。
标签: python machine-learning statistics pca logistic-regression