求解Wiener过程中随机参数分布的EM算法
一. Wiener过程中的随机参数分布
在利用贝叶斯估方法对产品退化过程进行建模时,若以Wiener过程为模型,则其中的随机参数服从如下分布
其中a,b,c,d为待求超参数。
由极大似然估计可得下式,用于M步
上述公式中隐含数据项的期望值公式如下,用于E步
二. Matlab代码
function [para,count]=WieEM(bb)
%该函数为Winner过程的EM算法,bb=1时为直线型,bb=2时为凹凸型。
%% 初始化
[y,t]=datain;%导入性能退化数据
th=1e-6;
h=inf;
count=0;
a=0;b=0;c=0;d=0;
M=size(t,2);
ltd=cell(1,M);
yd=cell(1,M);
ydpf=cell(1,M);
s_yd=zeros(1,M);
s_ltd=zeros(1,M);
s_yltd=zeros(1,M);
n=zeros(1,M);
e1=zeros(1,M);
e2=zeros(1,M);
e3=zeros(1,M);
e4=zeros(1,M);
%% 退化数据做差
for j=1:Mswitch bbcase 1for i=1:length(t{j})-1ltd{j}(i)=t{j}(i+1)-t{j}(i);yd{j}(i)=y{j}(i+1)-y{j}(i);ydpf{j}(i)=y{j}(i+1)^2-y{j}(i)^2;endcase 2for i=1:length(t{j})-1ltd{j}(i)=t{j}(i+1)^x(3)-t{j}(i)^x(3);yd{j}(i)=y{j}(i+1)-y{j}(i);ydpf{j}(i)=y{j}(i+1)^2-y{j}(i)^2;endends_yd(j)=sum(yd{j});s_ltd(j)=sum(ltd{j});s_yltd(j)=sum(ydpf{j}./2./ltd{j});n(j)=length(t{j});
end
%% EM迭代
while(h>=th)count=count+1;A=a;B=b;C=c;D=d;%E步for j=1:Mf1=A+n(j)/2;f2=B+C^2/2/D-(D*s_yd(j)+C)^2/2/(D^2*s_ltd(j)+D)+s_yltd(j);f3=(D*s_yd(j)+C)/(D*s_ltd(j)+1);f4=D/(D*s_ltd(j)+1);e1(j)=f1/f2;e2(j)=psi(f1)-log(f2);e3(j)=e1(j)*f3;e4(j)=e1(j)*f3^2+f4;endE1=sum(e1);E2=sum(e2);E3=sum(e3);E4=sum(e4);%M步fun1=@(x)psi(x)-log(x)-E2/M-log(M)+log(E1);a=fsolve(fun1,1e-5);b=M*a/E1;c=E3/E1;d=(E4-2*c*E3+c^2*E1)/M;h=max([abs(A-a)/a,abs(B-b)/b,abs(C-c)/c,abs(D-d)/d]);
end
para=[a,b,c,d];
end
参考文献
[1]徐廷学,王浩伟,张鑫.EM算法在Wiener过程随机参数的超参数值估计中的应用[J].系统工程与电子技术,2015,37(03):707-712.
求解Wiener过程中随机参数分布的EM算法相关推荐
- DeepLearning tutorial(2)机器学习算法在训练过程中保存参数
FROM: http://blog.csdn.net/u012162613/article/details/43169019 DeepLearning tutorial(2)机器学习算法在训练过程中保 ...
- aka鉴权 ims_IMS鉴权过程中各参数的用途
IMS 鉴权过程中各参数的用途 发帖日期: 2011-08-18 14:12:52 按照目前的国际规范, IMS 认证方式主要有 IMS AKA . SIP Digest . NASS-IMS Bun ...
- DG配置过程中的参数解释
文章目录 DG配置过程中的参数解释: 1.DB_NAME 2.DB_UNIQUE_NAME 3.LOG_ARCHIVE_CONFIG 4.CONTROL_FILES 5.LOG_ARCHIVE_DES ...
- 编程面试过程中最常见的10大算法
编程面试过程中最常见的10大算法 编程语言:C/C++ 1. 字符串 如果IDE没有代码自动补全功能,所以你应该记住下面的这些方法. toCharArray() // 获得字符串对应的char数组 A ...
- 理解YOLOv2训练过程中输出参数含义
转载自https://blog.csdn.net/dcrmg/article/details/78565440 原英文地址: https://timebutt.github.io/static/und ...
- 记面陌陌科技计算机视觉算法工程师被刷经历(附面试过程中被问倒的一些算法题分析)
转载过来的,原文:https://www.cnblogs.com/aoanng/p/9581612.html 求职季,真的会让一个人变得有些不一样吧,比如我,对于一个菜鸟来说,最近一段时间焦虑不安外加 ...
- 第一篇博客--记面陌陌科技计算机视觉算法工程师被刷经历(附面试过程中被问倒的一些算法题分析)...
求职季,真的会让一个人变得有些不一样吧,比如我,对于一个菜鸟来说,最近一段时间焦虑不安外加有点自闭... 前段时间在校内网上看到了陌陌科技内推计算机视觉算法工程师和机器学习算法工程师的消息,抱着试试的 ...
- 使用高斯混合模型(GMM)近似未知分布:EM算法的应用
该篇博客是对邱锡鹏老师<神经网络与深度学习>的学习笔记.在阅读本博文之前,建议读者先阅读上一篇博客EM算法. 高斯混合模型(Gaussian Mixture Model) 如果一个连续随机 ...
- ng-template 使用过程中默认参数不能按照期望工作的问题单步调试
本文涉及到的代码,位于这个 Github 仓库:https://github.com/wangzixi-diablo/ngDynamic 问题描述 我使用如下代码进行 ng-template 模板的参 ...
最新文章
- 图像分区域合成,这个新方法实现了人脸的「精准整容」
- iPhonexr安兔兔html5测试,给大家科普下iphonexr苹果手机安兔兔跑分多少分
- 计算机基础知识作业,第一章计算机基础知识作业
- php larval 胖模型,php – 从缓存中获取的Laravel模型访问器 – 性能增强
- java版本的getorcreate,getOrCreate for java-rest-api neo4j失敗
- MySQL5.7本地首次登录win10报错修改
- 彻底理解被称为二叉树神级遍历的莫里斯(Morris)算法
- adafruit1306_Adafruit的2015年最佳开源可穿戴设备
- python制表符_关于ROS运行python的一些问题
- ASCII控制字符在vi和notepadd++中的表示法
- Eclipse.技巧
- SpringBoot番外篇-微服务架构【1.起源与定义】
- MCS:离散随机变量——Poisson分布
- wps自动插入文献_WPS参考文献自动生成方法教程
- Vue中computed(计算属性)、methods、watch的区别
- ABB 120 六轴机械手臂编程调试(三)
- Unity游戏编程自学书籍、插件学习与视频教程
- java刷机教程,小米Mix2s刷机教程
- KEIL调用Show Disassembly at Adress的方法
- redhat开机自动连接网络设置
热门文章
- 计算机 电脑 整机 加密,教您如何为计算机文件夹设置密码
- nvme预知性热插拔操作方法
- 符润展--基于5G-V2X的车路协同方案研究
- springboot打war包抛出org.springframework.context.ApplicationContextException: Unable to start web server
- ROS ERROR: cannot launch node of type [mbot_teleop/mbot_teleop.py]
- linux日志分析步骤,关于linux:graylog日志分析系统上手教程
- vue项目打包成安卓app
- 286型计算机什么知识,那个向往
- apicloud一键复制教程
- 轻量级神经网络:MobileNetv2