Gaussian Pseudo-loglikelihoodWagner Hugo Bonat
asarray(y) # hyper parameters optimization def negative_log_likelihood_loss(params): self.params["l"], self.params["sigma_f"] = params[0], params[1] Kyy = self.kernel(self.train_X, self.train_X) + 1e-8 * np.eye(len(self.train_X)) return 0.5 * self.train_y.T.dot(np....
return0.5* self.train_y.T.dot(np.linalg.inv(Kyy)).dot(self.train_y) +0.5* np.linalg.slogdet(Kyy)[1] +0.5* len(self.train_X) * np.log(2* np.pi) ifself.optimize: res = minimize(negative_log_likelihood_loss, [self.para...
当然作为最后计算的结果,高斯分布的密度函数仍然不是太友好,更漂亮该是-ln后的形式,即negative log marginal likelihood(nlml) \mathcal{L} = - \ln p(\bm{y} | X, \theta) =\frac{1}{2} \bm{y}^T \Sigma^{-1}_{\theta}\bm{y} + \frac{1}{2}\ln \det \Sigma_{\theta} + \frac{n...
做了上面的铺垫后就可以引出论文的损失函数了。现在对于网络输出的每个bbox坐标都满足均值为,方差为的高斯,因此论文中使用了NLL_LOSS,即是negative log likelihood loss。 其中: 这个式子表示了对于bbox的ground truth框的每一个值在均值为和房差为的高斯分布下的值,其中高斯分布的密度函数是: 。其中每个对应的输出...
由于输出是作为高斯模型的参数,bbox的损失函数将修改为负对数似然(negative log likelihood, NLL)损失,objectness和class的损失函数不变。公式5为t_x的NLL损失,W、H和K分别为特征图宽高的grid数以及anchor数,\mu_{t_x}(x_{ijk})和{\sum}_{t_x}(x_{ijk})为t_x的值和不确定性,由模型在(i,j)grid...
在满足了高斯分布的均值和方差后,文中对损失函数也相对做了改进,采用NLL_LOSS损失函数,即negative log likelihood loss(负对数似然损失),主要修改的是坐标回归处的损失,其他的分类和前景的交叉熵损失没变化。 此外,在阈值的计算上,标准标变成了: 加入了坐标值可靠性因素Uncertainty_aver,这个值是bbox输出的四个标准...
由于输出是作为高斯模型的参数,bbox的损失函数将修改为负对数似然(negative log likelihood, NLL)损失,objectness和class的损失函数不变。公式5为txtx的NLL损失,WW、HH和KK分别为特征图宽高的grid数以及anchor数,μtx(xijk)μtx(xijk)和∑tx(xijk)∑tx(xijk)为txtx的值和不确定性,由模型在(i,j)(i...
(self.train_X) * np.log(2 * np.pi)if self.optimize: res = minimize(negative_log_likelihood_loss, [self.params["l"], self.params["sigma_f"]], bounds=((1e-4, 1e4), (1e-4, 1e4)), method='L-BFGS-B') self.params["l"], self.params["sigma_f"] = res.x[0], res....
Then, one tweaks the parameters to maximize the likelihood of the data given those assignments. Repeating this process is guaranteed to always converge to a local optimum. 实战: X_trainOut[79]: array([[4.3, 3. , 1.1, 0.1], [5.8, 4. , 1.2, 0.2], ...