質問するログイン新規登録

質問編集履歴

2

追加

2021/07/06 23:40

投稿

kaeruuuun
kaeruuuun

スコア19

title CHANGED
File without changes
body CHANGED
@@ -32,4 +32,26 @@
32
32
  z=a.*b;
33
33
  ```
34
34
 
35
- ![イメージ説明](863e7d802e9825603ff9f585a1c92746.png)
35
+ ![イメージ説明](863e7d802e9825603ff9f585a1c92746.png)
36
+ ```matlab
37
+ [x fs]=audioread('.wav');
38
+ x_length=length(x);
39
+ y_out=zeros(x_length,2);
40
+ w=[1 0;0 1];
41
+ ita=0.0001;
42
+ Ta=1000;
43
+
44
+ for n=1:x_length-Ta
45
+
46
+ x_tmp=x(n:n+Ta-1,:);
47
+ y=x_tmp*w.';
48
+ fai=tanh(y);
49
+ I=eye(n);
50
+ y_out(n,:)=y(1,:);
51
+
52
+ w=w+ita*(I-((fai.'.*y)/Ta)).*w;
53
+
54
+ end
55
+ ```
56
+ 使っているプログラムと今のデータセットを載せます.
57
+ ![イメージ説明](2c0dd777e6828f57822d5ac2dae95bab.png)

1

修正

2021/07/06 23:40

投稿

kaeruuuun
kaeruuuun

スコア19

title CHANGED
File without changes
body CHANGED
@@ -21,4 +21,15 @@
21
21
 
22
22
  ```
23
23
 
24
- のようにエラーが出ます.2*3の行列の片方を転置したものをかける時はどのようにしたら良いでしょうか.
24
+ のようにエラーが出ます.2*3の行列の片方を転置したものをかける時はどのようにしたら良いでしょうか.
25
+
26
+ もしかしたら別の質問に移るかもしれませんが,私は今このφ(y)^T*yの式で上と同じ配列のサイズが合わないというエラーでつまずいています.
27
+ φ,yともに1000×2doubleでその部分だけを取り出すとこのようなプログラムを書いていました.
28
+ それでエラーが出るので,式を簡単にして考えていました.このプログラムは間違っていますか.
29
+ ```matlab
30
+ a=fai.';
31
+ b=y;
32
+ z=a.*b;
33
+ ```
34
+
35
+ ![イメージ説明](863e7d802e9825603ff9f585a1c92746.png)