当前位置:  开发笔记 > 编程语言 > 正文

如何确保任意数量的权重总和为1(Python)?

如何解决《如何确保任意数量的权重总和为1(Python)?》经验,为你挑选了1个好方法。

我有一个模拟退火算法,我有一个像

result = w1*x1 + w2*x2 + ... + wn*xn

w选择新值时,模拟退火的每个循环如何确保总和w等于1并且没有单个w值小于0?

非常感谢大家!



1> Curt F...:

    使用NumPy.

    那样,而不是result = w1*x1 + w2*x2 + ... + wn*xn你能做到的result = np.dot(w, x).

    你想要的条件w似乎可能来自:

    non_negative_w = np.abs(w)
    sum_w = np.sum(non_negative_w)
    normalized_non_negative_w = non_negative_w / sum_w
    

推荐阅读
郑小蒜9299_941611_G
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有