matlab神经网络 误差曲线,神经网络如何输出各层训练误差曲线?

这段代码使用MATLAB实现不同调制方式(2ASK, 2FSK, 2PSK, 4ASK, 4FSK, 4PSK)的信号生成,并通过神经网络进行识别。通过训练和仿真,计算各调制类型的误差曲线,以确定最佳识别率。最终,根据误差最小的原则,确定输入信号类型并输出正确识别率。" 117358367,11074444,STATA快速面板数据回归指南,"['数据处理', '统计分析', 'STATA应用', '面板数据分析', '经济模型']
摘要由CSDN通过智能技术生成

clear all;

close all;

echo off;

fc=20000; %载波频率

fs=40000; %采样速率

k=2;

code_size=15*round(k*fs/fc); %信息码元长度

t0=5.5; %信号长度

Ns=256; %采样点个数

fd=200; %符号速率

ts=1/fs; %采样周期

M=64 %码元个数

ti=1/fd; %码元间隔

N=ti/ts

t=[0:ts:t0];

select=menu('调制方式','2ASK','2FSK','2PSK','4ASK','4FSK','4PSK');

switch select

case 1, % 2ASK signal

x=randint(1,M);

m=sin(2*pi*fc*t);

y=ones(1,M*N);

for i=1:M

for j=1:N

y((i-1)*N+j)=x(i)*m(j);

end

end

T=zeros(6,50);

T(1,1:50)=1;

case 2, %2FSK signal

x=randint(1,M);

m1=sin(2*pi*fc*t);

m2=sin(2*pi*2*fc*t);

y=zeros(1,M*N);

for i=1:M

if x(i)==1;

for j=1:N;

y((i-1)*N+j)=x(i)*m1(j);

end

elseif x(i)==0;

for j=1:N;

y((i-1)*N+j)=(1-x(i))*m2(j);

end

end

end

T=zeros(6,50);

T(2,1:50)=1;

case 3, %2PSK signal,

x=randint(1,M);

m1=sin(2*pi*fc*t);

m2=sin(2*pi*fc*t+pi);

y=zeros(1,M*N);

for i=1:M

if x(i)==1;

for j=1:N;

y((i-1)*N+j)=x(i)*m1(j);

end

elseif x(i)==0;

for j=1:N;

y((i-1)*N+j)=(1-x(i))*m2(j);

end

end

end

T=zeros(6,50);

T(3,1:50)=1;

case 4, % 4ASK signal

x=randint(1,M,4);

m=sin(2*pi*fc*t);

y=ones(1,M*N);

for i=1:M

if x(i)==0;

for j=1:N

y((i-1)*N+j)=x(i)*m(j);

end

elseif x(i)==1;

for j=1:N

y((i-1)*N+j)=x(i)*m(j);

end

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值