목록2024/12 (3)
Just Fighting

최적화의 목표는 가능한 많은 해법 세트 중에서 문제에 대한 최적의 해결책을 찾는 것.구글의 ortools를 이용해 최적화 문제를 푸는 방법을 익혀보자. 선형문제에 사용하는 솔버인 GLOP를 사용해 최적화 문제를 해결하는 방법을 연습했다.2가지 방법이 눈에 띄어 함께 테스트해보았다. 1. Constraint와 Objective 사용https://developers.google.com/optimization/introduction/python?hl=ko 먼저 라이브러리를 가져온다.# 라이브러리 가져오기from ortools.init.python import initfrom ortools.linear_solver import pywraplp 문제 해결자(솔버)를 선언하고, 풀고자하는 문제의 변수를..

4. Why Self-Attention 셀프 어텐션 레이어와 순환 레이어, 컨볼루션 레이어에 대한 비교 진행=> 3가지 조건 (층별 계산 복잡성, 연속 연산, 최장 경로 길이) 1. 각 층에 대한 총 계산 복잡도 => 시퀀스의 길이가 차원보다 작으면($n recurrent layer=> 이런 상황은 최첨단 기계 번역 모델(예: word-piece, byte-pair)에 사용되는 시퀀스 표현에서 자주 발생 => separable convolution의 경우 $O(knd+nd^2)$까지 복잡성을 감소시킴=> 그러나, $k=n$일 때, separable convolution의 복잡성은 self-attention layer와 point-wise feed-forward layar의 결합과 동일 ..

3.3. Position-wise Feed-Forward Networks 인코더, 디코더의 각각의 레이어는 각 포지션에 따로 그리고 동일하게 적용되는'fully connected feed-forward network 완전 연결 피드 포워드 네트워크'를 포함한다.FFN은 두 번의 선형 변환과 그 사이 ReLU 활성화로 구성된다. $$FFN(x) = max(0, xW_1+b_1)W_2 + b_2$$ 선형 변환이 다른 위치에서 동일하게 일어나지만, 각 층마다 다른 파라미터를 사용함.이것은 커널 사이즈가 1인 두 개의 컨볼루션이라고 묘사할 수 있음. 더보기선형 변환과 커널 사이즈 1인 컨볼루션 사진의 가운데 2X2의 행렬이 커널.커널 사이즈가 1이면 저 출력(노란색 행렬)도 입력(파란색 행렬)과 같이 3X..