기본 지도 학습 알고리즘들로지스틱 회귀 (Logistic Regression)로지스틱 회귀 경사 하강법 구현하기

Q

로지스틱 함수

조회 1075

좋아요 2

2020년 12월 10일

댓글 1

2020년 12월 29일
같이 수업듣는 학생인데 간략하게 작성해 보겠습니다.
모범답안은 < .T > 를 이용해서 행렬을 전치(transpose)해주는 게 맞습니다만 작성자님이 (prediction(X,theta) -y) @ X의 행렬연산순서를 변경해 줌으로써 전치를 필요없게 하셨습니다.

다시말해 아래와 같이 두 코드는 같은 연산을 합니다.
error @ X = X.T@error
다만 원래 대로라면 답의 모양이 다릅니다. 모법답안은 4x1 모양의 행렬이라면
작성자님 코드는 1x4모양의 행렬이지만 python이 결과를 나타내면서 단일 행 또는 열의 행렬을 1행 행렬로 바꾸는 것 같습니다.

대신 작성자님 코드에 아래와 같이 X행렬에 < .T>를 적용하면 오히려 오류가 발생할 것입니다.
error @ X.T ==> 오류발생(행렬 곱셈 규칙에 위배)


제 댓글이 오류가 있을수도 있으니 참고만 하셨으면 좋겠습니다.
이 댓글을 작성하고 이것 저것 시도해 보았는데 행렬곱셈규칙에 위배되더라도 곱해주는 행렬이 1열 또는 1행 짜리 행렬이면 알아서 모양을 바꿔 게산하는 경우가 있는것 같습니다.
결론적으로 전치행렬, 행렬곱셈에 대해서 조금 공부해 보시면 될 것 같습니다.
A
1개의 답변이 있어요

(주) 코드잇

대표강영훈

개인정보보호책임자강영훈

이메일support@codeit.kr

사업자 번호313-86-00797

통신판매업제 2019-서울중구-1034 호

주소서울특별시 중구 청계천로 100 시그니쳐타워 동관 10층 코드잇