해결된 질문
작성
·
343
0
안녕하세요 강사님 책으로 공부하고 있는 학생입니다.
다름이 아니라 sklearn의 score()함수에 대해 질문이 있습니다.
책의 158p 다중 회귀모델 훈련하기에서 예시코드로 print(lr.score(test_poly, test_target))이라는 코드를 작성하고, -144.40... 이라는 값을 얻게 됩니다.
제가 알기로는 score 메소드가 반환하는 것은 R^2 상관계수인데, 이게 보통은 0~1의 값을 가질텐데 이렇게 큰 음수가 나오는건 무엇을 의미하는걸까요? 대략적으로 이게 맞지 않다는 것은 이해하겠는데, 어째서 큰 음수가 나오는 것인지 통 이해가 되질 않습니다.
사실 이 부분은 로지스틱 회귀를 공부하다 생긴 일부의 질문입니다.
183p에서 시그모이드 함수를 학습하는 중, z값은 어떤 값이든 가능하다고 하셨는데 어째서 그것이 가능한걸까요? '3장에서 다룬 다중 회귀를 위한 선형 방정식과 같다'고 하셨는데 z값이 정확히 의미하는 바가 무엇인지 모르겠습니다. z값이 무엇인지 모르니 왜 (-∞~∞)의 범위를 가지는지 이해할 수 없고 더 나가지를 못하고 있습니다... 몇번을 싸매고 봐도 정말 잘 모르겠습니다..
답변 2
0
안녕하세요. z는 알고리즘이 모델링하려는 선형 함수의 출력입니다. z가 0보다 크면 양성 클래스이고 0보다 작으면 음성 클래스입니다. 0에서 얼마나 멀리 떨어져 있는지가 모델이 믿는 정도와 비례하다고 말할 수 있습니다. 시그모이드 함수는 이 출력을 0~1 사이의 확률로 변환해주는 수학적 도구입니다. 처음 배우실 때는 많은 부분이 모호할 수 있습니다만 모든 것에 대한 의미를 찾는 것은 어려운 일 같습니다. 무엇보다도 머신러닝은 블랙박스와 같다는 것을 기억하세요. 감사합니다.
친절하신 답변에 감사드립니다! 많은 도움 받고있습니다