python - 需要输入:路线难度的线性回归预测相当糟糕
问题描述
(数据: https ://1drv.ms/u/s!ArLDiUd-U5dtg1H6y1_0f_m5f2by?e=OmKeWp )
我正在尝试预测路线的难度。一条路线由一系列点组成,每个点相距 10 米。每个点都有以下信息:
路径宽度
森林密度
下落速度(你的身体在下落时会达到什么速度)
坡度
对于每条路线,也有给定的难度。但这些困难是由不同的人给的,而且差别很大。所以一个人给了一条路线 4。但另一个人可能给了这条路线 2。所以数据包含人为错误。
到目前为止我所做的:
我计算了每条路线的平均值和标准差。所以我取了一条路线的所有点并用它来计算这些统计值。我还添加了路线的长度(点数 * 10)。(差异 = 路线的难度。值从 1 到 12)
然后我将这些值放入线性回归模型中。结果证明这是一个好的开始:
Mean Absolute Error: 1.239902061226418
Mean Squared Error: 2.3566221702532917
Root Mean Squared Error: 1.53512936596669
问题
但是现在我不知道该怎么做才能改善它,因为我缺乏机器学习方面的知识。
我有使用神经网络并输入所有点的想法。最长的路线是 5300 点长,所以我只想说,每条路线有 5300 个输入,并且这些路线的填充点为 0,这还不够长。任何类似的信息或输入?
但我也想通过使用如上所示的预测值(平均值、标准等)来获得一个好的结果。那么我能做些什么来改进预测呢?
解决方案
以下是开发最佳模型所需遵循的一些步骤:
- 检查数据中的异常值并对数据进行规范化
- 检查自变量和因变量之间的相关强度。
- 估算缺失值或创建单独的段来处理数据列中的缺失值。
- 寻找变化膨胀因子和公差这将提高数据质量并提高模型的准确性。
推荐阅读
- c# - System.Data.SqlClient.SqlException: '无效的列名'"
- java - MS SQL Server 域授权因 JDBC 失败
- php - \n 使用 chrome 浏览器时不能在 php 代码中工作
- dimensions - R dim 参数说明
- dart - 如何将 Iconbutton 单击后更改为不同的 Iconbutton
- c# - unity:围绕两个Vector3的中心旋转一个网格
- linear-programming - CVRP 无需访问每个节点
- python - 如何在 Postgres 数据库中保存会话?
- json - 如何从 KeyValue 管道中过滤特定值以显示在 html 表中的特定标题下 | 角 6 +
- java - 无注射器的guice注射