수학적인 기초부터 딥러닝에서의 쓰임새까지 연결해서 설명해 드릴게요.
삼각함수는 기본적으로 직각삼각형의 두 변 사이의 비율을 나타냅니다. 빗변(가장 긴 변), 밑변(각도와 접한 변), 높이(각도 맞은편 변)가 어떻게 조화를 이루는지 보여주는 것이죠.
1. 삼각함수의 기본 정의
직각삼각형의 한 각을 $\theta$(세타)라고 할 때, 세 가지 주요 비율은 다음과 같습니다.
- 사인 (Sine, $sin$): "빗변 대비 높이의 비율"
- $\sin \theta = \frac{\text{높이}}{\text{빗변}}$
- 각도가 커질수록(90도에 가까워질수록) 높이가 길어지므로 사인값도 커집니다.
- 코사인 (Cosine, $cos$): "빗변 대비 밑변의 비율"
- $\cos \theta = \frac{\text{밑변}}{\text{빗변}}$
- 사인과 반대로, 각도가 커질수록 밑변이 짧아져 코사인값은 작아집니다.
- 탄젠트 (Tangent, $tan$): "밑변 대비 높이의 비율"
- $\tan \theta = \frac{\text{높이}}{\text{밑변}} = \frac{\sin \theta}{\cos \theta}$
- 기울기를 떠올리면 쉽습니다. 밑변이 1일 때 높이가 얼마나 되는지를 나타냅니다.
2. 단위원(Unit Circle)으로 이해하기
반지름이 1인 원 위에서 생각하면 더 명확해집니다. 원 위의 한 점 $(x, y)$가 있을 때:
- $x$ 좌표가 곧 코사인($\cos \theta$)입니다.
- $y$ 좌표가 곧 사인($\sin \theta$)입니다.
- 이 점을 지나는 직선의 기울기가 탄젠트($\tan \theta$)입니다.
3. 딥러닝/인공지능에서의 쓰임새
우리가 배우고 있는 TensorFlow나 딥러닝 분야에서도 이들은 아주 중요한 역할을 합니다.
- 코사인 유사도 (Cosine Similarity): 두 벡터(데이터)가 얼마나 비슷한 방향을 향하고 있는지 계산할 때 사용합니다. 값이 1에 가까울수록 두 데이터가 매우 유사하다는 뜻입니다.
- 활성화 함수 (tanh): 탄젠트에서 파생된 하이퍼볼릭 탄젠트(tanh) 함수는 딥러닝의 활성화 함수로 자주 쓰입니다. 출력값을 -1에서 1 사이로 정규화해주어 학습을 안정적으로 도와줍니다.
- 위치 인코딩 (Positional Encoding): ChatGPT 같은 트랜스포머(Transformer) 모델은 문장 속 단어의 순서를 이해하기 위해 사인과 코사인 함수를 사용해 위치 정보를 숫자로 변환합니다.
요약하자면:
사인은 높이, 코사인은 밑변, 탄젠트는 기울기와 관련이 있다고 기억하시면 됩니다!