gpt4 book ai didi

python - 机器学习 - 如何根据过去的特征预测一组固定字段

转载 作者:行者123 更新时间:2023-11-30 09:30:22 26 4
gpt4 key购买 nike

我有一个相当大的数据集(> 100k 行),其中包含物流运输信息。 (导出出货量)

数据集如下所示:

|shipper|consignee                    |origin|destination                                  |
|-------|-----------------------------|------|---------------------------------------------|
|6409292|288882 |USSFO |CNPVG |
|6409292|288882 |USSFO |CNPVG |
|6409292|182724 |USSFO |HKHKG |
|6409292|182724 |USSFO |HKHKG |
|8201922|948292 |USSFO |FRCDG |
|8201922|948292 |USSFO |FRCDG |
|8201922|948292 |USSFO |FRNIC |
|8201922|291222 |USEWR |AEDXB |

我们这里有一份过去发货的列表。它显示了发货人和收货人之间的关系,以及 cargo 的来源和目的地。

根据过去的数据,我希望能够通过查看收货人代码原产地来预测何时添加新货件。

示例

以下新预订为例:

|shipper|consignee                    |origin|destination                                  |
|-------|-----------------------------|------|---------------------------------------------|
|1234567|948292 |USMOB |? |

如何训练模型来预测目的地? ML 中的这个区域指的是什么?

最佳答案

在深入研究机器学习之前,理解概念很重要:

  • 数据集:这是您的数据集合,其中包含我们要预测的列和目标列。

  • 问题类型:这是我们面临的问题。请检查以下链接,了解更多相关信息:problem types .

  • 指标:这是为了评估我们模型的性能,您必须选择一个指标才能正确评估它。例如,如果您有 TrueFalse,您可能希望每次模型犯错时都会受到惩罚,就好像他选择 True 作为答案一样他可能会得到 50% 的正确率,而这是一个 0.5 准确度的模型,这是不正确的,因为它只回答 True。我希望这个post帮助您更好地理解。

  • 交叉验证:crossvalidation sklearn .

  • 训练和测试分割:我们将数据集分割成多个部分,我们将使用数据的某些部分来训练,其他部分来测试或评估我们的数据模型。

大部分工作都可以通过流行的库 sklearn 来完成,如下例所示:

from sklearn.datasets import load_iris
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import make_scorer, accuracy_score
from sklearn.model_selection import cross_val_score, train_test_split

dataset = load_iris()

X_train, X_test, y_train, y_test = train_test_split(
dataset.data, dataset.target, test_size=0.3, random_state=0)
# No corss validation
model = RandomForestClassifier()
model.fit(X_train, y_train)
predictions = model.predict(X_test)
accuracy_score(y_test, predictions)

# With cross validation
model = RandomForestClassifier()
accuracy_scorer = make_scorer(accuracy_score)

scores = cross_val_score(model, X_train, y_train, scoring=accuracy_scorer)
scores.mean()

这个例子只是一个非常简单的例子,数据处理很简单,而且在大多数情况下问题都以 0.9 的精度得到解决。为了解决包含更多列的问题,您可能需要进行更多的研究。我的建议是深入研究kaggle并寻找带有示例的笔记本或内核,其中人们处理某种数据集并获取给定问题的基线,您可能会学到诸如 OneHotEncoding FeatureExtractions 等新主题。

还有 ara 库可以为您执行此操作,或将其自动化并可以解决分类问题,请查看 MLBlocksATM .

关于python - 机器学习 - 如何根据过去的特征预测一组固定字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60167533/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com