YourCompanySucks / coursera-machine-leaning

1 stars 2 forks source link

week #3 #4

Open joonsun-baek opened 5 years ago

joonsun-baek commented 5 years ago

Logistic Regression 개요

스크린샷 2019-06-19 오후 1 35 00 스크린샷 2019-06-19 오후 1 35 05

joonsun-baek commented 5 years ago

Regularization (Linear regression, Logistic regression)

스크린샷 2019-06-19 오후 1 35 20

joonsun-baek commented 5 years ago

Multiclass classification, one vs all

스크린샷 2019-06-19 오후 1 35 11

phh0606c commented 5 years ago

image

자꾸 이문제를 못푸네요. 3번째는 답안은 맞을거 같은데 나머지는 잘모르겠습니다. 2,3 번으로 제출시에는 틀렸다고 하네요 ㅠ

cartoon1110 commented 3 years ago

Regularization 에서 lambda와 theta 값을 더하는데 이 부분이 잘 이해가 안돼요.

Cost Function은 최소값을 구하는건데 ..

  1. 어떤 추가 값을 더하는게 이해가 안되고,
  2. 더한 값이 왜 lambda * sum(theta^2) 인지도 모르겠어요. 저게 무얼 의미하는거죠..?

https://github.com/ml-mate/coursera-machine-leaning/issues/4#issuecomment-503402807 에서 준선님이 요약해주신거 보면 feature 별로 weight을 다르게 주기 위함이라는데 왜 저 공식이 들어가는지;; HELP ME!

phh0606c commented 3 years ago

후.. 이번에 시간이 쫌 남아서, 증명을 하나 해봤는데, 할짓이 못되네.. 응교수님이 로지스틱 레그레션 그레디언트 디센트 하면서, 미분값이 리니어 레그레션이랑 동일하게 생겼다. 증명해볼사람은 해봐라. 했길래 해봤는데, ㅋㅋㅋ 리얼 헬... 오랜만에 편미분 강의도 다시 듣고 왔네. 자기 만족겸 올려봅니다. ㅋㅋㅋ 아직 머리 안죽었어 !

image

phh0606c commented 3 years ago

@cartoon1110

Regularization 에서 lambda와 theta 값을 더하는데 이 부분이 잘 이해가 안돼요.

Cost Function은 최소값을 구하는건데 ..

어떤 추가 값을 더하는게 이해가 안되고, 더한 값이 왜 lambda * sum(theta^2) 인지도 모르겠어요. 저게 무얼 의미하는거죠..?

4 (comment) 에서 준선님이 요약해주신거 보면 feature 별로 weight을 다르게 주기 위함이라는데 왜 저 공식이 들어가는지;; HELP ME!

5 준선이형이랑 비슷한 고민인거 같은데?!

둘다 같은 고민을 하는거 보니 내가 잘못 이해하고 있는거 같기도 하네. 난 좀 단순하게 생각했는데.

응교수가 2단계로 정규식을 표현해줬는데,

  1. 단계 : x^3 , x^4 등, 곡선을 크게 만드는 요소때문에 오버핏팅이 발생함으로 곡선을 완만하게해보자.
    1. 곡선을 완만하게 하려면, 계수를 작게 만들어 준다. 계수를 작게 만드는 방법은 계수(세타)에 패널티를 준다. (이때 크기니까 제곱하는걸로 이해) image 여기서 왜 저 값을 더했는데, 곡선이 완만해 지느냐?? 최소 값을 구해야하다보니, 1000세타제곱(양수) 최소 값으로 하다보니. 세타3과 세타4는 작은 값으로 갈 수 밖에 없다. 이 논리. /
  2. 단계 그럼 상수빼고 모든 다항식에 패널티를 주자. 이것이 바로 Regularization . 모든 항의 영향도를 비슷하게 만들어 주자.
    1. 어떻게? 그냥 상수빼고 모든 항에 똑같이 패널티 주자. image

나는 이렇게 이해하긴 했음.

cartoon1110 commented 3 years ago

3주차 틀린문제 이제야 올립니다...ㅋㅋㅋㅋㅋㅋ 저는 답을 저렇게 골랐는데 틀리네요ㅠㅠㅠㅠ 선배님들 도와주세요!

image

cc. @phh0606c @rladowl92

phh0606c commented 3 years ago

3번도 선택해야할듯. 새로운 피처가 추가되면 항상 트레이닝셋에 더 과적합됨. 만약에 피처가 도움이 안된다고 하면, 모델이 알아서 짬처리 (세타=0) 해서 같거나, 아니면 더 적합해져서 cost가 낮아지거나 !

4번은 아리까리하네? 정규화를 도입하면.. 트레이닝셋이 아닌 데이터에 대해서 같거나, 더 좋아진다. 음. 정규화를 제대로 했다고 가정하면 맞는말인데, 정규화가 잘못되면 잘못된 말인거 같은데. ㅋㅋ 일단 정규화가 제대로 됐다고 가정하고 해보자. 3,4번

rladowl92 commented 3 years ago

3주차 틀린문제 이제야 올립니다...ㅋㅋㅋㅋㅋㅋ 저는 답을 저렇게 골랐는데 틀리네요ㅠㅠㅠㅠ 선배님들 도와주세요!

image

cc. @phh0606c @rladowl92

나도 이거 계속 틀렸는데 휘선말 듣고보니 4번이 함정이었네=_=

1번 - 피쳐가 많아지면 overfitting이 발생하므로 오답 2번 - 정규화를 적용하면 곡선이 완만해지므로 모든 트레이닝셋을 커버할수 없을수있음. 오답 3번 - 피쳐를 추가하면 과적합이 발생하므로 기존 트레이닝셋에대한 퍼포먼스는 증가함. 정답 4번 - 정규화 파라미터인 람다를 너무 크게 설정한다면 underfitting이 발생해서 오히려 퍼포먼스가 떨어질수있음. 오답

phh0606c commented 3 years ago

@rladowl92 훌륭한 정리야 !

cartoon1110 commented 3 years ago

image

오 여러분 덕분에 100% 완료요!