inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[개정판] 파이썬 머신러닝 완벽 가이드

Gradient Descent 파이썬 코드에 대한 질문이 있습니다.

해결된 질문

270

taylous

작성한 질문수 26

0

강의: 경사하강법을 통한 비용함수 RSS 최소화 - 파이썬 코드로 경사 하강법 구현하기

 해당 강의에서 아래와 같은 코드가 잘 이해가 안갑니다.

def get_weight_updates(w1, w0, X, y, learning_rate=0.01):
    N = len(y)

    w1_update = np.zeros_like(w1)
    w0_update = np.zeros_like(w0)

    y_pred = np.dot(X, w1.T) + w0
    diff = y-y_pred
         
    w0_factors = np.ones((N,1))

    w1_update = -(2/N)*learning_rate*(np.dot(X.T, diff))
    w0_update = -(2/N)*learning_rate*(np.dot(w0_factors.T, diff))    
    
    return w1_update, w0_update

제가 수학을 잘 못해서 위의 코드 중 transpose를 왜 해야하는지 잘 모르겠습니다.

X도 1차원 배열이고 w1도 똑같은 1차원 배열이기 때문에 그냥 곱하면 되지 않나요?

답변 주시면 감사하겠습니다!

머신러닝 배워볼래요? 통계 python

답변 1

3

권 철민

안녕하십니까,

강의에서는 Feature도 1개, 가중치도 1개이기 때문에 W벡터의 전치를 하지 않아도 무방하지만, 보통은 여러개의 Feature들이 있기 때문에 W벡터의 전치를 적용하여 X feature와 내적합니다

 X가 [x1, x2, x3]와 같이 여러개의 feature들로 되어 있고, 가중치 W 벡터 역시 [w1, w2, w3]로 되어 있을 때 예측 회귀식은 y_pred = x1w1 + x2w2 + x3w3와 같이 계산하기 위해서 가중치 W 벡터의 전치값을 취합니다. (편의상 w0는 제외합니다)

감사합니다.

안녕하세요 열심히 수강중인 학생입니다

0

63

2

정수 인덱싱

0

68

2

넘파이 오류

0

85

2

11강 numpy의 axis 축 질문 드립니다.

0

85

2

Kaggle 에서 Santander customer satisfaction data 를 다운로드 되지가 않습니다.

0

79

2

Feature importances 를 보여주는 barplot 이 그래프로 안보여져요.

0

70

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

75

2

타이타닉 csv 파일이 주피터 화면에 보이지 않습니다.

0

64

2

5강 강의 오류가 있어요.

0

84

1

실무에서 LTV 관련 모델 선택 질문입니다!

0

72

2

14강 강의 듣는중에 궁금한게 있어서 질문합니다~

0

69

3

파이썬 다운그레이 후 사이킷런 재설치

0

117

2

좋은 강의 감사합니다.

0

73

2

scoring 함수 음수값

0

67

2

6번 강의에 사이킷런, 파이썬, 아나콘다 각각 버전 일치 안 시키고 진행해도 강의 따라가 지나요?

0

100

2

분류 평가 정확도 예측

0

79

2

안녕하세요. 강의 들으면서 업무에 적용하고 싶은 수강생입니다.

0

99

1

카카오톡 채널 있나요

0

108

1

혹시 강의에서 사용하시는 ppt 받을 수 있는건가요

0

190

2

pca 스케일링 관련하여 질문드립니다.

0

100

2

주피터 대신 구글 코랩

0

172

2

강의에서 사용하는 pdf or ppt자료는 따로 없는 건가요?

0

148

2

실루엣 스코어..

0

86

2

float64 null 값 처리 방법

0

103

2