我有一个神经网络,它接收大约十二个值,并输出一个概率。问题是网络似乎足够聪明,可以意识到三个值与输出之间存在非常显着的相关性,并且似乎没有识别出与其余输入的任何相关性。换句话说,该模型已经计算出,如果三个特定输入的 和 不为零,则输出为 1 的可能性约为 80%。
这似乎是预期的行为,但我希望网络使用来自其他九个输入的数据来增强其 80% 的预测。这可能吗?
我提出的解决方案需要更多关于数据性质的信息。十二个输入可以分为四组,每组三个变量。例如,我们有三个指标:采购成本、保修期和平均维护成本。然后将这三个指标应用于家庭中的四种不同电器:锅炉、洗衣机、洗碗机和冰箱。然后,该网络应该输出家庭所有者在几个月内搬出的概率。在这个例子中,冰箱和房主搬家之间恰好有 80% 的相关性:如果他们拥有冰箱,那么他们有 80% 的机会在接下来的几个月内搬出去。
如前所述,网络足够智能,可以识别冰箱和搬出之间的相关性,但我希望通过包含其他输入来增强这个预测。
我解决此问题的第一个策略是将单个网络拆分为四个独立的网络,每个网络处理一个设备。这些将总共输出四个概率,然后我可以手动加权和计算,或者输入第五个网络进行最终处理。我担心这会导致同样的问题发生 - 最终网络将确定忽略前三个输入并仅返回基于冰箱的概率是最小化错误的最佳方法。
我的第二个可能的解决方案是简单地增加数据集的迭代次数,希望网络碰巧找到一个稍微好一点的解决方案,然后努力优化它。这似乎不太可能,并且过度依赖于问题。
我的第三个也是最后一个可能的解决方案是最初仅在房主不拥有冰箱(所有冰箱值为零)的输入上训练网络,以便网络优化其解决方案而不必担心冰箱,然后逐渐引入来自有冰箱的房主的投入。
这些都行吗?有更好的解决方案吗?
我正在使用 Tensorflow Estimator API。
谢谢!