精华内容
下载资源
问答
  • 代码亲测可用,直接调用comp_llr函数,格式是comp_llr(cleanFile, enhancedFile),分别是干净语音,带噪语音
  • 高阶QAM调制下基于对数似然比门限的自适应解调方案
  • 由于认知无线电网络的开放性,频谱感知数据篡改(SSDF)可以很容易地攻击频谱感知,而当前的研究工作中没有提出有效的算法,因此本文将恶意用户删除引入加权序列对数加权算法。似然比检测(WSPRT)。 终端的权重由其...
  • 对数似然比LLR公式的问题

    千次阅读 2020-05-07 23:42:16
    对数似然比LLR公式的问题: 在MATLAB中,记住在利用蒙特卡洛求解互信息的时候,对数似然比公式,自己当时设计的时候是0表示成为了1,1表示成为了-1.

    对数似然比LLR公式的问题:

    在MATLAB中,记住在利用蒙特卡洛求解互信息的时候,对数似然比公式,自己当时设计的时候是0表示成为了1,1表示成为了-1.

    展开全文
  • 对数似然比相似度

    万次阅读 2015-11-13 22:50:48
    最近在看mahout的相似性度量时,对其中的对数似然比相似度颇为好奇,由于书本上完全没有涉及到对数似然比相似度的计算原理,只是提供了一个函数接口,因此决定深入了解一下这个对数似然比相似度。下面mahout中的源码...

    最近在看mahout的相似性度量时,对其中的对数似然比相似度颇为好奇,由于书本上完全没有涉及到对数似然比相似度的计算原理,只是提供了一个函数接口,因此决定深入了解一下这个对数似然比相似度。下面mahout中的源码:

    public static double logLikelihoodRatio(int k11, int k12, int k21, int k22) {
            double rowEntropy = entropy(k11, k12) + entropy(k21, k22);
            double columnEntropy = entropy(k11, k21) + entropy(k12, k22);
            double matrixEntropy = entropy(k11, k12, k21, k22);
            return 2 * (matrixEntropy - rowEntropy - columnEntropy);
        }
    
        public static double entropy(int... elements) {
            double sum = 0;
            for (int element : elements) {
                sum += element;
            }
            double result = 0.0;
            for (int x : elements) {
                if (x < 0) {
                    throw new IllegalArgumentException(
                        "Should not have negative count for entropy computation: (" + x + ')');
                }
                int zeroFlag = (x == 0 ? 1 : 0);
                result += x * Math.log((x + zeroFlag) / sum);
            }
            return -result;
        }

    我以一个实际的例子来介绍一下其中的计算过程:假设有商品全集I={a,b,c,d,e,f},其中A用户偏好商品{a,b,c},B用户偏好商品{b,d},那么有如下矩阵:

    这里写图片描述

    • k11 表示用户A和用户B的共同偏好的商品数量,显然只有商品b,因此值为1
    • k12 表示用户A的特有偏好,即商品{a,c},因此值为2
    • k21 表示用户B的特有偏好,即商品d,因此值为1
    • k22 表示用户A、B的共同非偏好,有商品{e,f},值为2

    此外我们还定义以下变量 N=k11+k12+k21+k22 ,即总商品数量。

    计算步骤如下:

    1. 计算行熵

      rowEntropy=k11+k12N(k11k11+k12logk11k11+k12+k12k11+k12logk12k11+k12)+k21+k22N(k21k21+k22logk21k21+k22+k22k21+k22logk22k21+k22)

      注:代码中 k11+k12k21+k22N

    2. 计算列熵

      columEntropy=k11+k21N(k11k11+k21logk11k11+k21+k21k11+k21logk21k11+k21)+k12+k22N(k12k12+k22logk12k12+k22+k22k12+k22logk22k12+k22)

    3. 计算矩阵熵

      matrixEntropy=k11Nlogk11N+k12Nlogk12N+k21Nlogk21N+k22Nlogk22N

      注意:以上熵的计算均没有加负号,后面会讲到原因

    4. 计算相似度

      UserSimilarity=2(matrixEntropyrowEntropycolumnEntropy)

    如何来解释这个相似度的计算方式呢?我们先来看看行熵、列熵和矩阵熵分别代表什么含义:行熵以用户A的偏好和非偏好来划分商品空间,很明显它是一个条件熵,我个人认为相对合理的解释是对于一个商品,在给定它是否属于A偏好的条件下,预测商品属于 k11k12k21k22 四个空间中哪一个空间的不确定度;同理,列熵则代表给定商品是否属于B偏好的条件下,预测商品属于 k11k12k21k22 四个空间中哪一个空间的不确定度;矩阵熵则表示在没有任何条件下,预测商品属于四个空间中哪一个空间的不确定度。我们以下图来看:

    这里写图片描述

    在给定A偏好与否的条件,预测商品属于哪一个空间的不确定度为 S1+S2 ;在给定B偏好与否的条件下,不确定度为 S2+S3 ;在不给定任何条件下,预测商品属于哪一个空间的不确定度为 S1+S2+S3 。我的理解这个 S2 表示的就是给定A、B偏好条件下的公共的不确定度,其表达的就是如果A喜欢某个商品,对B也具有协同效应;如果B喜欢某个商品,对A也具有协同效应,这种公共不确定度或者说是关联其实反映的就是A用户与B用户的相似程度。由于前面计算熵的时候没有加上负号,步骤四中正好得到一个 (S2) ,就变成正数了,至于为什么乘上2及 1N 去哪里了我也不清楚,但这只是一种幅度变换,不影响相对关系。

    当然参考论文Accurate methods for the statistics of surprise and coincidence,我们还可以从相关性的角度去解释这个对数似然比相似度。我们假设A偏好空间和A非偏好空间中概率分布满足二项分布,并进行如下假设:

    • 假设用户B的喜好与用户1独立无关 L(H1)

      BP=k11+k21k11+k12+k21+k22

      形成A偏好空间这种分布的概率就为
      Ck11k11+k12Pk11(1P)k12

      形成A非偏好空间这种分布的概率为
      Ck21k21+k22Pk21(1P)k22

      形成第一幅图中矩阵块分布的概率即为上面两个概率的乘积
      L(H1)=Ck11k11+k12Pk11(1P)k12Ck21k21+k22Pk21(1P)k22

    • 假设用户B的喜好与用户1相关 L(H2)
      在A偏好空间,用户B喜欢一个商品的概率为

      P1=k11k11+k12

      形成A偏好空间这种分布的概率就为
      Ck11k11+k12Pk111(1P1)k12

      在A非偏好空间,用户B喜欢一个商品的概率为
      P2=k21k21+k22

      形成A非偏好空间这种分布的概率就为
      Ck21k21+k22Pk212(1P2)k22

      形成第一幅图中矩阵块分布的概率即为上面两个概率的乘积
      L(H1)=Ck11k11+k12Pk111(1P1)k12Ck21k21+k22Pk212(1P2)k22

    用户A、B的相似度就为

    UserSimilarity=2logL(H1)L(H2)

    式中 2log 和卡方检验渐近有关,上述假设是按照用户A来划分空间,按用户B来划分空间也可以得到相同的结论,最终计算出来的结果与采用上面行熵、列熵、矩阵熵计算出来的结果一致,表明对数似然比相似度其实反映的就是用户之间喜欢物品的相关性。

    展开全文
  • 对数似然比LLR(likelihood Rate)在通信中通常用于软解码。 不管发端发比特1还是比特0,收端都可能误判。如果收到信号r,正确判为0的概率与正确判为1的概率的比值就是似然比,再取个自然对数就是对数似然比了。所以...
  • 第三章 LLR(对数似然比)知识点补充

    千次阅读 2020-07-04 23:29:11
    Q1:“似然”概念解析: 知乎上很多大神解释,个人学习总结了一下。”似然”与“概率“两个概念是相对的。 概率:已知概率模型,推测某个事件发生的概率; 似然:根据已得到的数据集合,推测符合的概率模型;...

    Q1:“似然”概念解析:

    知乎上很多大神解释,个人学习总结了一下。”似然”与“概率“两个概念是相对的。

    概率:已知概率模型,推测某个事件发生的概率;

    似然:根据已得到的数据集合,推测符合的概率模型;

    举个例子,下图是根据一组数据画出的概率密度曲线,你觉得这组数据符合什么概率分布?一眼看上去符合高斯分布。

    这种推导过程对似然函数求解过程。根据已有的数据,推测该组数据符合的概率模型。

    Q2:先验概率和后验概率

    先验概率:根据字面记忆,先有的经验,推导事件发生概率;

    后验概率:某个事件已发生,推导导致这个事件发生的各种原因的概率大小;

    如何LLR概念对应起来呢?

    举个不恰当的例子,假设发射机发射一个离散QPSK调制信号,信号经AWGN信道至接收机,采样后得到 r = 0.2 + 0.2i;

    QPSK解调的目的,就是推导出发送端发出的原始调制符号,下图四个角上为标准调制信号。经过信道后,信号可能劣化,接收端可能接收到比较差的信号,LLR的目的根据接收到的信号,判断发送端发的是哪个调制信号的可能性大,可能性越大,判定的结果越可靠。LLR推导过程,还是有很多资料的。LLR最终在DSP上实现,是优化的、工程可实现的形式。

    以QPSK为例,接收的信号若实部real(r) > 0,D0 = 0,反之 D0 = 1;虚部 imag(r) > 0,D1 = 0 ,反之D1 = 1;

    ​%% Constants
    clc;clear;close all;
    FRM=2048;
    Trellis=poly2trellis(4, [13 15], 13);
    Indices=randperm(FRM);
    MaxNumErrs=200;MaxNumBits=1e7;
    EbNo_vector=0:10;BER_vector=zeros(size(EbNo_vector));
    %% Initializations
    Modulator      = comm.QPSKModulator('BitInput',true);
    AWGN             = comm.AWGNChannel;
    DeModulator =  comm.QPSKDemodulator('BitOutput',true,...
        'DecisionMethod','Log-likelihood ratio',...
        'VarianceSource', 'Input port');
    BitError           = comm.ErrorRate;
    TurboEncoder=comm.TurboEncoder(...
        'TrellisStructure',Trellis,...
        'InterleaverIndices',Indices);
    TurboDecoder=comm.TurboDecoder(...
        'TrellisStructure',Trellis,...
        'InterleaverIndices',Indices,...
        'NumIterations',6);
    %% Outer Loop computing Bit-error rate as a function of EbNo
    % for EbNo = EbNo_vector
    %     snr = EbNo + 10*log10(2);
        snr = 10;
        noise_var = 10.^(-snr/10);
        AWGN.EbNo=snr;
        numErrs = 0; numBits = 0;results=zeros(3,1);
        %% Inner loop modeling transmitter, channel model and receiver for each EbNo
    %     while ((numErrs < MaxNumErrs) && (numBits < MaxNumBits))  
            % Transmitter
            u             = randi([0 1], FRM,1);                  % Generate random bits
    %         encoded      = TurboEncoder.step(u);                                   % Turbo Encoder
            mod_sig = step(Modulator,   u);                % QPSK Modulator
                   
            scatterplot(mod_sig); 
            % Channel
            rx_sig  = step(AWGN,        mod_sig);        % AWGN channel
    %         rx_sig = awgn(mod_sig,20,'measured');
            % Receiver
    
            
            scatterplot(rx_sig); 
            
            %%%%%% QPSK LLR优化后实现%%%%%%%%
            len = length(rx_sig);
            
            for i=1:len
                D0 = real(rx_sig(i));
                D1 = imag(rx_sig(i));
                
                llr_test(2*i-1:2*i) = [D1 D0];
                
            end
            llr_test = llr_test.';
            
            llr        =  DeModulator.step(rx_sig,noise_var);      % QPSK Demodulator
            y            = sign(-llr);
    %         y            = sign(-llr_test);
            y(find(y == -1)) = 0;
            results        = BitError.step(u, y);                       % Update BER
    
            numErrs = results(2);
            numBits = results(3);
    %     end
        % Compute BER
        ber = results(1); bits= results(3);
        %% Clean up & collect results
        reset(BitError);
        BER_vector(EbNo+1)=ber;
    % end​

     

     

     

     

     

    展开全文
  • 基于对数似然比(LLR)的天线分集是误码性能优于传统基于信噪比(SNR)天线分集的一种新技术,并降低了系统的实现复杂性和成本。为此对基于LLR的发射天线选择新技术进行了研究,推导了多输入多输出(MIMO)Nakagami...
  • matlab价值值代码深度对数似然比(L 值)量化 论文的公共存储库: 用于灰度编码调制的基于深度学习的 L 值量化 深度对数似然比量化 德克萨斯大学奥斯汀分校的 Marius Arvinte、Ahmed H. Tewfik 和 Sriram Vishwanath...
  • 由于认知无线电网络的开放性,频谱感知数据篡改(SSDF)可以很容易地攻击频谱感知,而当前的研究工作中没有提出有效的算法,因此本文将恶意用户删除引入加权序列对数加权算法。似然比检测(WSPRT)。 终端的权重由其...
  • 一种基于对数似然比的改进的格子减少辅助MIMO检测方案
  • 针对现有学习方法准确率不高,提出一种结合对数似然比(Log-Likelihood Ratio,LLR)的本体学习方法,采用对数似然比计算概念与领域及概念与概念之间的相关性,将其应用到概念与关系提取中。实验结果表明,结合对数...
  • 一种基于对数似然比的解扩方法
  • 基于对数似然比的协作频谱感知软融合方案
  • 电信设备-为无线通信系统中发送的码元确定组合器权重和对数似然比的装置和方法.zip
  • Python 实现对数似然比对比曲线及其代码问题分析 主要解决问题: 画出空间统计一个圆柱扫描内部期望为10个病例,全局总数分别为 50、200 和 2000 时,窗口内实际发生例数从 1 到 30 变化时相应的对数似然比曲线。 ...

    Python 实现对数似然比对比曲线及其代码问题分析

    主要解决问题:
    画出空间统计一个圆柱扫描内部期望为10个病例,全局总数分别为 50、200 和 2000 时,窗口内实际发生例数从 1 到 30 变化时相应的对数似然比曲线。
    预期结果:
    这里写图片描述

    (1)公式分析:
    下面公式为为对数广义似然比(LGLR):
    这里写图片描述
    其中, C C 是全部空间时间上的病例总数

    C=z=1Zd=1DCzd
    ,
    CA C A 是圆柱区内空间时间上的病例总数 CA=z,dACzd C A = ∑ z , d ∈ A C z d ) $  \upmu_A $ 是圆柱区内空间时间上的病例总数期望值这里写图片描述。当计算结果GLR_A的值越大,说明在圆柱区 A 内病例的聚集程度就越高。因此,可以用GLR_A来作为空间和时间区域内的预警信号指标。广义似然比标志了区域A 上实际发生事件数C_A与期望发生事件数 A m 之间的差异度,并以全局上在区域 A 之外的事件数比值( ) ( ) / AA C C Cm --作为参照。
    (2) 针对问题代码实现:

    import numpy as np
    import matplotlib.pyplot as plt
    import math
    
    mu_A = 10   #窗口内期望病例数
    C_sum = [50,200,2000]  #全局总数
    #C_sum = 200 #全局总数
    print(C_sum[2])
    C_A_sum = np.arange(1,31,1)  #窗口内实际发生病例从 1 到 30 变化
    C_A_sumArr = []  #定义横坐标变量数组
    LGLR_AArr =  []    #定义纵坐标变量数组1,c=50
    LGLR_AArr1 = []   #定义纵坐标变量数组2,c=200
    LGLR_AArr2 = []   #定义纵坐标变量数组3,c=2000
    
    for x in C_A_sum:
        C_A_sumArr.append(x)
        LGLR_AArr.append(x * math.log(x/mu_A)+(C_sum[0]-x) * math.log((C_sum[0]-x)/(C_sum[0]-mu_A)))
    
    for x in C_A_sum:
        C_A_sumArr.append(x)
        LGLR_AArr1.append(x * math.log(x/mu_A)+(C_sum[1]-x) * math.log((C_sum[1]-x)/(C_sum[1]-mu_A)))
    
    for x in C_A_sum:
        C_A_sumArr.append(x)
        LGLR_AArr2.append(x * math.log(x/mu_A)+(C_sum[2]-x) * math.log((C_sum[2]-x)/(C_sum[2]-mu_A)))
    
    #print(LGLR_AArr)
    # 输出
    plt.plot(C_A_sum, LGLR_AArr, color='green', label='c=50')
    plt.plot(C_A_sum, LGLR_AArr1,  color='red', label='c=200')
    plt.plot(C_A_sum, LGLR_AArr2,  color='skyblue', label='c=2000')
    
    plt.xlim([0, 30])    #横轴   
    plt.ylim([0, 20])    #纵轴
    
    #标题
    plt.title('likelihood value')  
    plt.xlabel('C_A')
    plt.ylabel('LGLR')
    plt.legend(loc='best')
    
    plt.show()  #显示图

    则可得到预期效果。

    (3)调试过程问题:
    1、当用到math.log()函数值,总是出现如下错误:
    原因:math.log()不能对矩阵进行直接操作。
    TypeError: only length-1 arrays can be converted to Python scalars 分析

    2、当用到math包时,有如下错误提醒:
    ValueError: math domain error
    原因:某些操作不符合数学定义,如对负数取对数,对负数开平方。
    分析

    展开全文
  • 似然比检验 LRT

    万次阅读 多人点赞 2018-12-06 22:12:05
    似然比检验(likelihood ratio test,LRT)是一种检验参数能否反映真实约束的方法(分布或模型的某参数等于 是否为真实约束)。似然比检验的思想是:“如果参数约束是有效的,那么加上这样的约束不应该引起似然函数...
  • 计算对数似然相似度 clc,clear; %计算对数似然相似度 K=[1 2 3; 1 2 3; 1 2 3]; N=sum(sum(K)); %计算行熵 rowEntropy=[K(1,1)*log(K(1,1)/sum(K(1,:))),K(1,2)*log(K(1,2)/sum(K(1,:))),K(2,1)*log(K(2,1)/sum(K...
  • //基于对数似然比更好的计算相似度(量用户) //所谓对数似然比为选取两个用户进行比较的时后进行筛选 //相似性为可以解释为发生重叠为发生重叠的非偶然概率 package byuser; import java.io.File; import java.io...
  • 基于上述原理,统计中广泛应用对数似然比检验,通过计算统计量G,可按x2分布处理,不但计算方便,而且只要自由度大于1,就不必考虑理论频数大小的问题。关于似然比检验的具体应用,详见条目“频数分布的拟合优度”、...
  • LLR_BP算法的简化译码算法研究,博士毕业论文,包括各类LDPC译码算法
  • BP译码算法

    2014-09-07 21:10:03
    BP译码 用于神经网络 LDPC基于GALLAGA最为经典的译码方法
  • 公式中,如果有两条测试语音,这两条语音来自同一空间的假设为Hs,来自不同的空间的假设为Hd,那么通过计算对数似然比,就能衡量两条语音的相似程度。得分越高,则两条语音属于同一说话人的可能性越大。 一个简化...
  • WebRTC VAD流程解析

    2021-09-12 21:45:40
    计算每个子带的对数似然比(log likelihood ratio, LLR),每个子带的似然比会和阈值进行比较作为一个局部的VAD判决。所有子带的对数加权似然比之和和阈值比较作一个全局的VAD判决。当局部判决或者全局判决结果有一个...
  • (1)凸函数的角度... 用平方损失之类的得到的函数不是凸函数 (2)导数的角度 当y_true = 1时,如果f(x)=1, 则dL/dw=0,符合预期 ... 如果f(x)=0, dL/dw=0,不符合预期,得到错误解 ...
  • 1)先验:统计历史上的经验而知当下发生的概率; 2)后验:当下由因及果的概率; 2、网上有个例子说的透彻: 1)先验——根据若干年的统计(经验)或者气候(常识),某地方下雨的概率; ...2)似然——看到了某种...
  • 对数似然(negative log-likelihood)

    万次阅读 多人点赞 2019-03-30 16:32:28
    对数是为了方便计算极大似然估计,MLE中直接求导比价困难,通常先取对数再求导,找到极值点。 负对数似然(negative log-likelihood) 实践中,softmax函数通常和负对数似然(negative log-likelihood,NLL)一起...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 927
精华内容 370
关键字:

对数似然比