相关疑难解决方法(0)

在Python中,小浮点数趋于零

我有一个用Python编程的贝叶斯分类器,问题是当我乘以特征概率时,我得到非常小的浮点值,如2.5e-320或类似的东西,突然变成0.0.0.0显然对我没用,因为我必须根据哪个类返回MAX值(更大的值)找到"最佳"类.

处理这个问题的最佳方法是什么?我想找到数字的指数部分(-320),如果它太低,则将该值乘以1e20或某个值.但也许有更好的方法?

python floating-point numerical-stability

23
推荐指数
4
解决办法
1万
查看次数

Backprop实施问题

我该怎么做.我有一个黑白图像(100x100px):

替代文字

我应该用这个图像训练一个反向传播神经网络.输入是图像的x,y坐标(从0到99),输出为1(白色)或0(黑色).

一旦网络学会了,我希望它能够根据其权重重现图像,并获得与原始图像最接近的图像.

这是我的backprop实现:

import os
import math
import Image
import random
from random import sample

#------------------------------ class definitions

class Weight:
    def __init__(self, fromNeuron, toNeuron):
        self.value = random.uniform(-0.5, 0.5)
        self.fromNeuron = fromNeuron
        self.toNeuron = toNeuron
        fromNeuron.outputWeights.append(self)
        toNeuron.inputWeights.append(self)
        self.delta = 0.0 # delta value, this will accumulate and after each training cycle used to adjust the weight value

    def calculateDelta(self, network):
        self.delta += self.fromNeuron.value * self.toNeuron.error

class Neuron:
    def __init__(self):
        self.value = 0.0        # the output
        self.idealValue = 0.0 …
Run Code Online (Sandbox Code Playgroud)

python matlab artificial-intelligence machine-learning neural-network

4
推荐指数
1
解决办法
411
查看次数