我有一个程序,我正在编写,我想知道我将如何使用一些人工智能算法为我的程序,以便它可以学习和分配适当的权重值给我的领域。
例如,我有字段a,b,c,d和e。每个字段都有不同的权重,因为字段a比d更有价值。我想知道我将如何做到这一点,以便使我的值正常化,并使用这些值的和进行比较。
示例:
Weight of a = 1
Weight of b = 2
Weight of c = 3
Weight of d = 4
Weight of e = 5对于和,将每个字段的值与其指定的权重相乘:
Result = (value of a) * 1 + (value of b) * 2 + (value of c) * 3 + (value of d) * 4 + (value of e) * 5我希望输入一些训练数据,并训练我的程序来学习和比较每个对象所拥有的a,b,c,d,e值,以便它可以为每个对象分配权重。
编辑:我只是在寻找解决这个问题的方法,不管是使用神经网络,还是其他一些方法来学习和分配这些字段的权重。
发布于 2013-12-16 23:45:16
要做到这一点,最好的方法很大程度上取决于您正在编写的程序类型。你如何评估result的回答有多好?
如果result可以是正确的,也可以是不正确的,那么神经网络将是一个很好的选择。您可以使用两层拓扑(即所有输入节点都连接到每个输出节点,其中没有层),并让每个输入节点对应于您的一个字段(a、b、c等)。然后,您可以使用反向传播来训练网络,以便每一组字段值映射到正确的类别。最后得到的边缘权重将是与每个字段相关联的权重。
然而,如果result可以或多或少地以某种连续的方式精确,那么遗传算法可能是一个更好的解决方案。如果您将result与某个理想值进行比较,如果您将权重用于具有可评估结果(如游戏)或其他类似情况的函数中,则可能会出现这种情况。您使用的健身功能将取决于您的确切情况(对于上面的例子,您可能使用接近理想的值,或双赢比时,玩这些值)。有多种方法可以对候选解决方案进行格式化:
如果你想提供更多关于你的计划想要完成什么的信息,我可以尝试提供一个更具体的建议。
https://stackoverflow.com/questions/20600758
复制相似问题