【发布时间】:2020-03-04 14:36:33
【问题描述】:
我有以下数据集:
| customer | item | number_of_orders |
| 1 | 1 | 1 |
| 1 | 2 | 0 |
| 1 | 3 | 0 |
| 1 | 4 | 1 |
| 2 | 1 | 0 |
| 2 | 2 | 0 |
| 2 | 3 | 0 |
| 2 | 4 | 1 |
...
我试图断定用户 X 是否会订购商品 Y 作为第一步。
这是我目前拥有的代码
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score
from sklearn.neighbors import KNeighborsClassifier
model = KNeighborsClassifier(n_neighbors=3)
X_train, X_test, Y_train, Y_test = train_test_split(X, Y, test_size=0.2, random_state=7)
model.fit(X_train, Y_train)
predictions = model.predict(X_test)
result = accuracy_score(Y_test, predictions)
result
它提供了非常高的准确度,但我怀疑它与 number_of_orders 的数据集中的大量零有关。
有人可以建议如何改进这个机器学习模型吗?
我也有关于价格和商品数量以及每件商品的平均价格的信息,我也想使用这些信息。
我的最终目标是根据这些数据创建一个推荐系统,根据其他订单返回一个推荐列表。
【问题讨论】:
-
您是否尝试过与 KNeighborsClassifier 不同的其他 ML 模型?回归,支持向量机,...
-
@rgralma 我尝试过回归。我还没有尝试过 SVM 或 RandomForest。我的最终目标是根据我拥有的数据制作一个推荐系统。
标签: python machine-learning scikit-learn recommendation-engine