본문 바로가기

NLP/AI 이론9

[AI Math] 기본 확률론 정리 네이버 부스트코스에서 제공하는 임성빈 님의 강의를 참고하여 작성된 포스팅입니다. 딥러닝에서 확률론은 왜 필요한가? 딥러닝은 확률론 기반의 기계학습 이론에 바탕을 둔다. 손실함수는 예측이 틀릴 위험을 최소화하도록 데이터를 학습하는 데, 이는 데이터 공간을 통계적으로 해석해서 유도하는 방식이다. 회귀 (L2 norm) : 예측 오차의 분산을 최소화 분류 (Cross-Entropy) : 모델 예측의 불확실성을 최소화 확률분포 확률분포는 데이터를 나타내는, 일종의 초상화라고 볼 수 있다. 파란색 점 : 실제 관측된 데이터 포인트 P(X, y) : 데이터 공간 D : 데이터 공간에서 데이터를 추출하는 분포 (x,y) ~ D : 데이터 표기 빨간 격자선의 의미는 밑에서 다시 설명하겠다. 확률변수 확률변수는 확률분포.. 2024. 4. 16.
[AI Math] 딥러닝 수식 뽀개기 네이버 부스트코스에서 제공하는 임성빈 님의 강의를 참고하여 작성된 포스팅입니다. 신경망 (neural network) 지난 번에 다룬 포스팅에서는 선형회귀 분석에 대해 간략하게 다뤘었다. 신경망은 이와 달리 비선형적인 모델이다. 선형모델 : 계수들이 선형결합의 관계에 있을 때의 모델 비선형 모델 : 어떤 변형을 거쳐도 파라미터를 선형 결합으로 표현할 수 없는 모델 ex. sigmoid를 거친 값은 선형 결합으로 표현 불가 sigmoid는 이후 activation function에서 따로 다룰 예정이다 비선형 모델은 어떤 이점을 가지는가? 신경망의 표현력을 높일 수 있다 현실 세계 대부분의 문제는 비선형이므로, 문제 풀이에 더 유리하다 심층 신경망 선형 함수의 경우 여러 개의 레이어를 통과해도 결국 하나의.. 2024. 4. 16.
[AI Math] 경사하강법 네이버 부스트코스에서 제공하는 임성빈 님의 강의를 참고하여 작성된 포스팅입니다. 미분이란? 미분 : 변수의 움직임에 따른 함수값의 변화를 측정하기 위한 도구 함수 f의 주어진 점 (x, f(x)) 에서의 접선 기울기 미분을 계산하려면 함수 모양이 매끄러워야 한다 = 함수가 연속적이어야 한다 in numpy import sympy as sym from sympy.abc import x sym.diff(sym.poly(x**2 + 2*x + 3), x) 경사상승법 / 경사하강법 접선의 기울기를 알면 어느 방향으로 점을 움직여야 함수값이 증가/감소하는지 알 수 있음 (특히 고차원일 때!!!) 함수 값이 증가하는 경우 (미분값 더하기) = 경사상승법 함수의 극대값 위치를 구할 때 = 목적함수를 최대화할 때 사용.. 2024. 1. 28.
[AI Math] 벡터와 행렬의 개념 네이버 부스트코스에서 제공하는 임성빈 님의 강의를 참고하여 작성된 포스팅입니다. 벡터의 개념 벡터의 차원 : 벡터에 있는 요소의 개수 벡터는 공간에서 한 점을 나타냄 1차원 공간에서는 주로 스칼라로 부름 원점으로부터의 상대적 위치 표현하는 화살표 벡터의 스칼라곱 = 방향은 그대로, 길이만 변함 같은 shape이면 덧셈, 뺄셈, 성분곱(element-wise) 계산 가능 벡터의 덧셈, 뺄셈 벡터의 덧셈, 뺄셈 = 다른 벡터로부터 상대적 위치 이동 norm 원점에서부터의 거리 → 거리는 차원에 상관없이 임의의 차원 d에서 성립함 L1 norm : 각 성분의 변화량 절대값을 모두 더함 $$ ||x||_1 = \sum^d_{i=1} |x_i| $$ L2 norm : 피타고리스 정리로 유클리드 거리 계산 $$ |.. 2024. 1. 28.
[Python] NumPy & Pandas 네이버 부스트코스에서 제공하는 최성철 님의 강의를 참고하여 작성된 포스팅입니다. numpy Numerical Python 파이썬의 고성능 과학 계산용 패키지 Matrix와 Vector와 같은 Array 연산의 사실상의 표준 일반 List에 비해 빠르고, 메모리 효율적 반복문 없이 데이터 배열에 대한 처리를 지원함 선형대수와 관련된 다양한 기능을 제공함 C, C++, 포트란 등의 언어와 통합 가능 ndarray numpy는 하나의 데이터 type만 배열에 넣을 수 있음 💡 List와 가장 큰 차이점 : 동적 타이핑이 적용되지 않는다! dynamic typing과 static typing의 장단점 NumPy는 dynamic typing을 포기함으로써 list comprehension 이상의 속도를 얻었습니다.. 2024. 1. 28.
[Python] Python Data Handling 네이버 부스트코스에서 제공하는 최성철 님의 강의를 참고하여 작성된 포스팅입니다. Python Data handling csv 탭 (tsv), 빈칸(ssv)로 구분도 가능 파이썬에서 처리할 때는 일반적인 textfile을 처리하듯이 파일을 읽어오고 한줄씩 데이터를 처리 # csv 객체 import csv reader =csv.reader(f, delimiter=',',quotechar='"',quoting=csv.QUOTE_ALL) 그런데 pd.read_csv와 딱히 차이점은 없다.. 훨씬 간결하니까 pandas를 쓰자! HTML(Hyper Text Markup Language) 웹 상의 정보를 구조적으로 표현하기 위한 언어 제목,단락,링크 등 요소 표시를 위해 Tag를 사용 모든 요소들은 꺾쇠 괄호 안에.. 2024. 1. 28.