一種高速的互資訊 聯合熵計算方法

2021-10-08 12:43:31 字數 904 閱讀 5490

最近在寫乙個歸一化互資訊的方法,由於電腦效能不夠對於演算法進行了若干次優化,獲得了基本和c語言速度相似的歸一化互資訊計算速度

**如下

import numpy as np

import math

import pandas as pd

def h_matrix(m): #m為影象矩陣

s = pd.series(m.reshape(-1))

m_array = kksk.values.tolist()

m_array = np.array(m_array)

hm = 0 # hm 熵 h(matrix)

hm = hm - m_array * np.log2(m_array)

hm = np.sum(hm)

return hm

def h_joint(m1): # m1是兩層陣列,兩幅影象重疊部分

m1 = m1.reshape(2, (m1.shape[1] * m1.shape[2])) # 重構陣列到二維

m1 = m1.t

m2 = m1[::, 0] * np.max(m1[::, 1]) + m1[::, 1]

s = pd.series(m2)

mhist = s.value_counts(normalize=true)

a = m1.shape[0]

hm = 0

hm = hm - (mhist * np.log2(mhist))

hm = np.sum(hm)

return hm

def nmi(m): # 定義nmi #m為兩層陣列

return (h_matrix(m[0]) + h_matrix(m[1])) / h_joint(m)

一種計算e的方法

原理 平均e個 0,1 之間的隨機數之和會大於1.原因 n個數之和小於1的概率是1 n 則n個數之和大於1的概率則是1 1 n 恰好n個數之後大於1的概率,等於n個數之後大於1的概率減去n 1個數之和大於1的概率,即 1 1 n 1 1 n 1 n 1 n 則n的期望為 sum n 1 n n su...

語義軌跡資料分析 一種概念和計算方法

作者 zhixian yan 瑞士epfl 摘要 gps軌跡收集極其普遍,如何收集 整理 檢索 挖掘這些資料成為了研究的熱點。但是,大多數工作都基於軌跡的時空特性展開,沒有充分開發高層的軌跡語義特性。本文通過結合語義概念和統計學方法來進行軌跡資料分析 主要包含如下三個方面 軌跡模型 軌跡計算和軌跡資...

語義軌跡資料分析 一種概念和計算方法

作者 zhixian yan 瑞士epfl 摘要 gps軌跡收集極其普遍,如何收集 整理 檢索 挖掘這些資料成為了研究的熱點。但是,大多數工作都基於軌跡的時空特性展開,沒有充分開發高層的軌跡語義特性。本文通過結合語義概念和統計學方法來進行軌跡資料分析 主要包含如下三個方面 軌跡模型 軌跡計算和軌跡資...