Courseraで利用可能な機械学習コースの機能をベクトル化する方法を理解している問題があります。途中でCoursera機械学習:グラデーションデサントベクトル化
、アンドリュー・ウは仮説は、xを掛けたシータの転置にベクトル化することができることを説明しています
H(x) = theta' * X
私の最初の問題は、私は練習でこれを実装する場合です。なぜ紙のベクトル化はthetaの転置にxを掛けたのですが、OctaveではX回のthetaですか?
theta'*X % leads to errors while multiplying
私の2番目の問題は、最初の問題に続きます。
私は勾配降下機能のこの合計をベクトル化したい:
sum((h(x)-y)*x))
私は本当にあなたがこの度ベクトル化に着く方法を理解していない:
X'*(h(x)-y)
誰もがこれを説明するだろうか?
これに答えるには、行列のサイズ(X、theta、x、y ...)を知ることが重要です。 Btw、 '' 'を転置として使うべきではありません。 ''を使用してください。 – Andy
あなたの答えをありがとう。現在のところ、Xの値は、47x3の行列で、値と値が入っています:https://github.com/yhyap/machine-learning-coursera/blob/master/mlclass-ex1/ex1data2.txt 3列目はy(47x1行列)です。シータは[0; 0; 0]。この特定のケースでは、なぜこのようにvecotrizeできるのか分かりますか? – etiennefr
[機械学習 - バッチ勾配降下を使用した線形回帰]の可能な複製(https://stackoverflow.com/questions/32274474/machine-learning-linear-regression-using-batch-gradient-descent) – rayryeng