具有混合连续和离散边缘的规范藤copula树(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现


💥1 概述

规范藤copula树是一种用于建模多维随机变量间相关性的工具。它是一种层次化结构,由根节点和若干个子树组成,每个子树都是一棵规范藤copula树。对于边缘分布具有连续边缘变量的情况,可以使用密度函数对相关性进行建模;而对于离散边缘变量,则需要使用质量函数进行建模。因此,规范藤copula树可以同时支持混合连续和离散边缘的情况。实际使用中,可以使用贪心算法或者动态规划等方法来构造规范藤copula树,以便准确地建模变量间的相关性。

规范藤copula树是一种用于建模多变量概率分布的统计工具,它可以捕捉变量之间的相关性和依赖关系。具有混合连续和离散边缘的规范藤copula树是对规范藤copula树的扩展,它可以处理同时包含连续和离散变量的情况。

研究具有混合连续和离散边缘的规范藤copula树可以涉及以下方面:

1. 模型构建:研究者可以探索如何构建适用于混合连续和离散边缘的规范藤copula树模型,包括如何处理不同类型变量之间的相关性和依赖关系。

2. 参数估计:针对混合连续和离散边缘的规范藤copula树模型,需要研究参数估计的方法和技术,以确保模型能够准确地捕捉变量之间的相关性。

3. 应用领域:研究者可以探讨具有混合连续和离散边缘的规范藤copula树在不同领域的应用,例如金融、保险、气象等,以及在实际问题中的具体应用案例。

通过研究具有混合连续和离散边缘的规范藤copula树,可以更好地理解和应用这一统计工具,为解决现实世界中复杂的多变量建模问题提供更多的选择和方法。

在本文中,我们实现了一个基于正则藤Copula的完整框架,用于对部分离散和部分连续的多变量数据进行建模。所得到的多元分布是灵活的,具有丰富的依赖结构和任意的裕度。对于连续裕度,我们提供了正态分布和伽玛分布的实现。对于离散裕度,我们提供了泊松、二项式和负二项式分布。作为二元copula构建块,我们提供了高斯族、学生族和克莱顿族以及旋转变换的克莱顿族。工具箱包括采样、似然计算和推理方法,所有这些方法都具有二次复杂性。将这些过程结合起来,通过蒙特卡罗积分来估计熵和互信息。

📚2 运行结果

主函数部分代码:

%% Construct 4D mixed copula vine
disp('Constructing mixed copula vine...');
d = 4; % Dimension
vine.type = 'c-vine'; % Canonical vine type
% Set margins
vine.margins = cell(d,1);
% Standard normal margin
vine.margins{1}.dist = 'norm';
vine.margins{1}.theta = [0;1];
vine.margins{1}.iscont = true; % Continuous margin
% Gamma margin
vine.margins{2}.dist = 'gam';
vine.margins{2}.theta = [2;4];
vine.margins{2}.iscont = true; % Continuous margin
% Poisson margin
vine.margins{3}.dist = 'poiss';
vine.margins{3}.theta = 10;
vine.margins{3}.iscont = false; % Discrete margin
% Binomial margin
vine.margins{4}.dist = 'bino';
vine.margins{4}.theta = [20;0.4];
vine.margins{4}.iscont = false; % Discrete margin
% Set copula families
vine.families = cell(d);
vine.theta = cell(d);
% Gaussian copula family
vine.families{1,2} = 'gaussian';
vine.theta{1,2} = 0.5;
% Student copula family
vine.families{1,3} = 'student';
vine.theta{1,3} = [0.5;2];
% Clayton copula family 
vine.families{1,4} = 'clayton';
vine.theta{1,4} = 5;
% Clayton copula family rotated 90° clockwise
vine.families{2,3} = 'claytonrot090';
vine.theta{2,3} = 5;
% Clayton copula family survival transformed
vine.families{2,4} = 'claytonrot180';
vine.theta{2,4} = 5;
% Independence
vine.families{3,4} = 'ind';
vine.theta{3,4} = [];
fprintf('\n');
​
%% Test probability density function
disp('Calculating probability density function on a grid...');
% Calculate probability density function on lattice
x1gv = linspace(-3,3,100);
x2gv = linspace(0.5,25,100);
x3gv = 0:20;
x4gv = 0:15;
[x1,x2,x3,x4] = ndgrid(x1gv,x2gv,x3gv,x4gv);
p = mixedvinepdf(vine,[x1(:),x2(:),x3(:),x4(:)]);
p = reshape(p,size(x1));
% Plot 2D margins
figure('Name','2D margins of mixed vine copula PDF','Position',[0,0,1600,1000]);
subplot(2,3,1);
margin12 = reshape(sum(sum(p,4),3),[length(x1gv),length(x2gv)]);
imagesc(x1gv,x2gv,margin12');
colormap('
hot
');
set(gca,'
YDir
','
normal
');
xlabel('
Margin 1
');
ylabel('
Margin 2
');
subplot(2,3,2);
margin13 = reshape(sum(sum(p,4),2),[length(x1gv),length(x3gv)]);
imagesc(x1gv,x3gv,margin13'
);colormap('hot');
set(gca,'YDir','normal');
xlabel('Margin 1');
ylabel('Margin 3');
subplot(2,3,3);
margin14 = reshape(sum(sum(p,3),2),[length(x1gv),length(x4gv)]);
imagesc(x1gv,x4gv,margin14');
colormap('
hot
');
set(gca,'
YDir
','
normal
');
xlabel('
Margin 1
');
ylabel('
Margin 4
');
subplot(2,3,4);
margin23 = reshape(sum(sum(p,4),1),[length(x2gv),length(x3gv)]);
imagesc(x2gv,x3gv,margin23'
);colormap('hot');
set(gca,'YDir','normal');
xlabel('Margin 2');
ylabel('Margin 3');
subplot(2,3,5);
margin24 = reshape(sum(sum(p,3),1),[length(x2gv),length(x4gv)]);
imagesc(x2gv,x4gv,margin24');
colormap('
hot
');
set(gca,'
YDir
','
normal
');
xlabel('
Margin 2
');
ylabel('
Margin 4
');
subplot(2,3,6);
margin34 = reshape(sum(sum(p,2),1),[length(x3gv),length(x4gv)]);
imagesc(x3gv,x4gv,margin34'
);colormap('hot');
set(gca,'YDir','normal');
xlabel('Margin 3');
ylabel('Margin 4');
fprintf('\n');

🎉3 参考文献

​[1]廖轶楠.基于Copula熵选股及集成神经网络预测的投资组合管理研究[D].南京信息工程大学,2023.

部分理论引用网络文献,若有侵权联系博主删除。

🌈4 Matlab代码实现

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值