저는 제곱 오차 비용 함수와 같은 GNU 옥타브에서 알고리즘 학습을 시도하고 있습니다. I는이 텍스트는 적절한 벡터화 된 forumula은 말한다옥타브 : 어떤 방법이 더 효율적입니까
X는 매트릭스이다m x n+1
J = (X * theta - y)' * (X * theta - y) * (1/(2*m)
는 세타는 n+1 x 1
벡터이고, Y는 m x 1
벡터이다.
J = sum((X * theta - y).^2) * (1/(2*m))
는 한 번만 X * theta -y
을 계산하기 때문에 : 제 질문은이 두 번째 방법은 조금 빠른 여부입니다. 윈도우의 분위기가 매우 열악한 옥타브에 익숙하지 않기 때문에 나는 스스로 벤치마킹을하는 법을 모른다.
이것은 무엇보다 호기심이기 때문에 아무리해도 문제가되지 않는다고 말해도됩니다.
는 당신에게 공식 동일한 결과를 얻을 확신 :
은cputime
를 사용하여 CPU 시간을 측정하려면? 당신이 최적화하고 싶다면, 왜 쓰지 않으시겠습니까? 'TMP = (X * theta - y)' 'J = TMP '* TMP * (1/(2 * m))' –