Journey to CS/머신러닝 15

[ML 스터디 2주차] 확률과 가능도, 그리고 베이즈 정리

스터디 교재: "개발자를 위한 필수 수학" by 토마스 닐드참고 본문: 65p. 2.2.3 베이즈 정리-------------- 확률(Probability)과 가능도(Likelihood)는 얼핏 비슷해 보이는데 사실은 바라보는 방향이 서로 반대인 개념이다.확률은 원인에서 결과를 향하고, 가능도는 결과에서 원인을 향한다.확률과 가능도를 결합하면 이미 알고 있던 지식에 새로 관측한 증거를 곱해 결론을 갱신하는 베이즈 정리(Bayes' Theorem)가 나오는데, 이것은 단편적인 통계에 속지 않고 합리적인 판단을 하게 도와주는 근거가 된다. 1. 확률: 정해진 조건에서 결과를 예측1️⃣ P(결과 | 조건)확률은 이미 정해진 환경이 있는 상태에서 앞으로 어떤 일이 벌어질지를 예측하는 개념이다.즉, 설정은 고정되..

[ML 스터디 2주차] 단일 확률, 주변 확률, 결합 확률 용어 정리

스터디 교재: "개발자를 위한 필수 수학" by 토마스 닐드참고 본문: 62p. 2.2 확률 계산--------------1. 단일 확률 = 주변 확률(Marginal Probability)'주변 확률'은 '단일 사건의 확률'과 같은 개념이다.여러 가지 변수가 얽혀 있는 복잡한 상황에서, 다른 변수는 모두 무시하고 특정 사건 하나만 떼어서 볼 때의 확률을 의미한다.예: 동전을 하나 던져서 앞면이 나올 확률 = 1/2예: 주사위를 굴려서 6이 나올 확률 = 1/6그렇다면 왜 굳이 '주변(Marginal)'이라는 수식어를 붙였을까? 이는 통계학에서 확률 분포를 '표(Table)'로 그리는 관행에서 유래했다. 복잡한 확률 표를 분석할 때, 개별 사건의 총합(확률)은 항상 표의 바깥쪽 가장자리(Margin)에 ..

[ML 스터디 1주차] 미분과 극한, 그리고 도함수

스터디 교재: "개발자를 위한 필수 수학" by 토마스 닐드참고 본문: 43~52p. 1.10 미분--------------오일러 수에 대해 정리하며 마지막에 경사하강법(Gradient Descent)이라는 것을 언급했다.손실 함수(Loss Function)의 기울기를 계산하고 그 기울기의 반대 방향으로 파라미터를 조금씩 이동시켜 오차를 최소화한다는 원리인데, 결국 기울기는 "지금 이 순간 값이 어느 방향으로 얼마나 빠르게 변하는가"이며, 이 질문에 답하려면 미분을 알아야 한다.1. 미분의 조건1️⃣ 미분이 구하는 값'함수를 미분한다'는 것은 특정 순간에 값이 얼마나 빠르게 변하고 있는지, 즉 순간변화율을 구하는 과정이다.그래프 상에서는 특정 지점에서 접선의 기울기를 찾는 일이다.자동차의 누적 주행 거리..

[ML 스터디 1주차] 오일러수(e)와 미분(dy/dx)의 본질을 찾아서...

스터디 교재: "개발자를 위한 필수 수학" by 토마스 닐드참고 본문: 37p. 1.8.1 오일러 수--------------책에 있는 내용만으로는 미안하지만 "오일러수"가 어떤 개념이고 왜 있는 것인지 잘 이해가 안 됐다.모 LLM한테 오일러수를 딱 한 마디로 알아듣기 쉽게 정의해달라고 했더니 "자라는 속도가 자기 크기와 똑같아지는 유일한 숫자"라고 했다.이런 저런 설명을 하는데 여전히 알듯 말듯 모르겠다.그래서 그냥 내가 이해할 수 있는 말로 다시 정리해본다.1. 오일러수(e)의 본질: "커지는 속도 = 자기 크기"복리 이자 비유은행에 100만 원을 저축하고 1년에 100%의 이자를 받는다고 가정해 보자.이자를 1년에 한 번 받을 때보다, 6개월, 1달, 1일, 1초 단위로 쪼개서 복리로 받을 때 최..

[ML 스터디 1주차] 잡다한 질문

스터디 교재: 1. 내장 함수 이름을 변수로 쓰면 안 되는 이유본문: 31p. 예제 1-11 네 배열의 합계 구하기문제주피터 노트북에서 아래 파이썬 코드를 실행했더니 에러가 났다.x = [1, 5, 3, 4]n = len(x)summation = sum(10*x[i] for i in range(0, n))print(summation) 코드 자체는 아무 문제가 없어 보인다. 원인원인은 그 전 셀에 있었다.여기서 오른쪽의 sum(...)은 내장 함수로 정상 동작해서 30을 계산했다.문제는 그 결과를 sum이라는 이름에 그대로 대입했다는 것.그 순간부터 sum은 더 이상 함수가 아니라 정수 30이 된다.다음 셀에서 sum(...)을 호출하면 파이썬 입장에선 30(...)을 호출하는 셈이니, "int 객체는 호..