首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用大输入和可变输入的神经网络?

如何使用大输入和可变输入的神经网络?
EN

Data Science用户
提问于 2014-06-26 12:25:55
回答 3查看 2.2K关注 0票数 2

我刚开始机器学习,但我有一个有趣的问题。我有一个很大的样本的人和访问的网站。有些人指出了性别、年龄和其他参数。现在,我希望将这些参数还原给每个用户。

我要找哪条路?哪种算法适合解决这个问题?我熟悉神经网络(监督学习),但它们似乎不适合。

EN

回答 3

Data Science用户

回答已采纳

发布于 2014-06-27 07:06:14

我也遇到了同样的问题:“恢复”社交网络用户的年龄、性别和位置。但我使用的是用户的自我网络,而不是访问网站的统计数据。我面临着两个几乎独立的任务:

  1. “恢复”或“预测”数据。你可以使用一系列不同的技术来完成这个任务,但我的投票是最简单的(接吻,是的)。例如,在我的例子中,在年龄预测方面,自我网络用户的平均年龄给出了令人满意的结果(大约70%的用户错误小于+/-3年,在我的情况下就足够了)。这只是一个想法,但您可以尝试使用年龄预测加权平均值,将权重定义为当前用户访问站点集与其他用户之间的相似性度量。
  2. 评价预测质量。任务-1的算法几乎在所有情况下都会产生预测。第二项任务是确定预测是否可靠。例如,在自我网络和年龄预测的情况下:如果用户在自我网络中只有一个“朋友”,我们能相信预测吗?这个任务更多的是关于机器学习:这是一个二进制分类问题。您需要组合功能集,形成培训和测试样本,从您的数据与正确和错误的预测。创建适当的分类器将帮助您过滤掉不可预测的用户。但你需要确定你的特征是什么。我使用了一些网络度量,并对自我网络之间的兴趣分布特征进行了汇总统计。

这种方法不会填补所有的空白,而只是可预测的差距。

票数 0
EN

Data Science用户

发布于 2014-06-26 14:17:44

填补数据上的空白存在许多可能性。

  • 最重复的价值:用最常见的值来填补空白。
  • 创建一个分布:根据该分布创建直方图和删除值。
  • 创建一个新标签:由于您没有信息,所以不要假设任何值,并创建另一个标签/类别来表示该值为空。
  • 创建一个分类器:在具有空间隙的变量和数据的其余部分之间建立一个关系,并创建一个简单的分类器。这样,就可以填充其余的数据。

还有许多其他的,但这些是最常见的策略。我的建议是不让人知道什么是未知的。

票数 2
EN

Data Science用户

发布于 2014-06-27 19:18:11

虽然adesantos已经给出了一个很好的答案,但我想补充一些背景信息。

你所看到的问题的名称是“归罪”。正如adesantos已经说过的那样,其中一种可能是适合一个分布。例如,您可以对数据进行多变量高斯拟合。你只会从你所知道的样本中得到平均值,而你只从你知道的样本中计算协方差。然后,您可以使用标准的MVG结果来线性地计算丢失的数据。

这可能是最简单的概率计算方法,而且已经相当复杂了。如果你是一个神经网络,最近提出的一种方法就是Rezende等人提出的深潜高斯模型。然而,了解该方法需要大量的神经网络知识,相当多的关于马尔可夫链的变分Bayes知识。

我听说过的另一种方法是训练一个生成的随机网络(Bengio等人)。这是通过对你拥有的数据进行去噪自动编码器的训练来完成的(忽略重建损失中的缺失值)。假设你有一个重建函数f和一个输入x,然后通过x‘= f(x)重建它。然后,将x‘的值重置为您从x中知道的值。(也就是说,您只保留重建之前丢失的值。)如果您这样做了很多次,那么您将保证从给定的值的分布中取样。

但无论是哪种情况,这些方法都需要相当多的统计知识和神经网络知识。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档