曲线拟合地理数据

时间:2013-05-07 04:48:01

标签: machine-learning regression curve-fitting

我最近掀起了一个script,用于从Twitter的流媒体API中捕获大量geo data。我正在寻找一些方法来创建一个模型,以使用数据作为训练输入来表示世界上任何给定的纬度/经度点的地理“活动”。

我正在考虑将所有lat \ lng舍入到两个小数位,并创建所有位置出现的二维直方图。因此用于训练我的模型的输入将是:

x = lat - input
y = lng - input
z = location weight - observed output [normalized between 0.0 and 1.0]

我正在考虑创建24个模型(每小时1个)来模拟社交网络活动取决于一天中的时间这一事实。这也可以简化3-d而不是4-d。

问题:

  • 曲线拟合上述问题的最佳方法是什么?
  • 是否有一个现有的库我可以用来输入x,y,z并吐出最合适的值 回归方程?我熟悉Ruby,Python,Java或Scala。 示例代码将非常感激。

2 个答案:

答案 0 :(得分:1)

K-Means clustering算法可能对此有所帮助。考虑到所有推文的lat和lng,它可用于计算推文集群的位置。

答案 1 :(得分:0)

这是我采取的方法。您应该构建一个回归模型,至少包含以下预测变量:纬度,经度,(纬度,纬度)的人口密度,时间(可能是分类)以及任何其他相关特征。你正在回归一些活动。

就python库而言,我可以帮助你:如果你想建立一个标准的线性模型(可能不是,但你可以用它作为起点),statsmodels是一个很好的起点。您至少可以获得某些测试数据的MSE。

鉴于模型可能很复杂并且会有很多交互,您可能希望将其与神经网络回归模型进行比较 - 如果是这样,pybrain设置为非常简单做这种事。