【问题标题】:Machine learning not predicting correct results机器学习不能预测正确的结果
【发布时间】:2021-11-26 19:58:51
【问题描述】:

我正在创建一个简单的 python 机器学习脚本,它将根据以下参数预测贷款是否会被批准

business experience: should be greater than 7
year of founded: should be after 2015
loan: no previous or current loan

如果符合上述条件,则只会批准贷款。这个数据集可以从这个链接下载:

https://drive.google.com/file/d/1QtJ3EED7KDqJDrSHxHB6g9kc5YAfTlmF/view?usp=sharing

对于以上数据,我有以下脚本

from sklearn.linear_model import LogisticRegression
import pandas as pd
import numpy as np

data = pd.read_csv("test2.csv")
data.head()

X = data[["Business Exp", "Year of Founded", "Previous/Current Loan"]]
Y = data["OUTPUT"]

clf = LogisticRegression()
clf.fit(X, Y)

test_x2 = np.array([[9, 2017, 0]])
Y_pred = clf.predict(test_x2)
print(Y_pred)

我正在通过test_x2 中的测试数据。测试数据是如果business exp是9,成立年份是2017并且没有当前/以前的贷款,那么这意味着将提供贷款。所以它应该预测,结果应该是1,但它显示为 0。代码或数据集是否有任何问题。由于我是机器学习的新手并且仍在学习它,所以我创建了这个自定义数据集以供自己理解。

请任何人提供一些好的建议。谢谢

【问题讨论】:

  • 如果您有确定贷款是否获得批准的确切标准,您为什么要使用机器学习? if biz_exp > 7 and founded > 2015 and prior_loans == 0 应该准确地“预测”贷款是否被批准。
  • @TomMcLean 你能推荐其他型号吗
  • @ddejohn 我有很多其他参数,它们有很多值。我不想从大量数据开始,所以我只是从较少的数据开始,以便我有很好的理解
  • 嗯,机器学习模型从来都不是精确的。您还进行了哪些其他测试?你检查过ROC 曲线吗?也许您的模型比您想象的要好?
  • OP,请参阅this 文章了解您可以研究的其他二元分类模型。

标签: python machine-learning scikit-learn logistic-regression


【解决方案1】:

您应该在管道中使用 StandardScaler()

from sklearn.linear_model import LogisticRegression
from sklearn.preprocessing import StandardScaler
from sklearn.pipeline import make_pipeline
import pandas as pd
import numpy as np

data = pd.read_csv("test2.csv")
data.head()

X = data[["Business Exp", "Year of Founded", "Previous/Current Loan"]]
Y = data["OUTPUT"]

clf = make_pipeline(StandardScaler(), LogisticRegression())
clf.fit(X, Y)

test_x2 = np.array([[9, 2017, 0]])
Y_pred = clf.predict(test_x2)
print("prediction = ", Y_pred.item())
prediction =  1
print("score = ", clf.score(X, Y))
score =  0.95535

【讨论】:

  • 只是想知道我们如何打印模型的准确度?
  • 使用评分函数。
猜你喜欢
  • 2019-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-10-04
  • 1970-01-01
  • 2017-11-05
  • 1970-01-01
  • 2018-10-17
相关资源
最近更新 更多