| 번호 | 청구항 |
|---|---|
| 1 | 기 학습한 라인 선택 동작을 수행하여, 트랜스포머 모델의 헤드들을 가지치기 하기 위해 헤드들 각각에 포함된 라인들 각각의 중요도 점수를 획득하는 동작;상기 중요도 점수 및 임계값에 기초하여, 상기 헤드들에 대해 전반적인 가지치기(Coarse-grained pruning)를 수행하는 동작;상기 전반적인 가지치기가 수행된 헤드들에 대해 세밀한 가지치기(Fine-grained pruning)를 수행하는 동작; 및상기 가지치기가 수행된 헤드들의 작업량에 기초하여, 상기 헤드들의 배치를 최적화하는 동작을 포함하는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 2 | 제1항에 있어서,상기 임계값은미리 결정된 가지치기 비율인 라인들 중 제거할 라인들의 비율 및 상기 중요도 점수에 기초하여 결정되는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 3 | 제1항에 있어서,상기 전반적인 가지치기는미리 결정된 조건에 기초하여, 상기 라인의 중요도 점수가 상기 임계값에 미달하는 라인들을 가지치기 하는 것인, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 4 | 제1항에 있어서,상기 세밀한 가지치기는상기 전반적인 가지치기에서 가지치기 되지 않은 라인들 중 중요도 점수가 상기 임계값에 미달하는 라인들을 가지치기하는 것인, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 5 | 제1항에 있어서,상기 전반적인 가지치기 이후, 가지치기 되지 않은 라인들을 중심으로 상기 헤드들을 재구성하는 헤드 재구성 동작을 더 포함하는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 6 | 제1항에 있어서,상기 세밀한 가지치기가 수행된 헤드들에 대해 동적 사후 훈련 양자화(Post Training Quantization)를 수행하는 동작을 더 포함하는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 7 | 제6항에 있어서,상기 동적 사후 훈련 양자화를 수행하는 동작은상기 트랜스포머 모델의 가중치에 대해 인트라-레이어(intra-layer) 동적 선형 양자화를 수행하는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 8 | 제1항에 있어서,상기 헤드들의 배치를 최적화하는 동작은상기 트랜스포머 모델의 인코더 레이어들 각각에 포함된 헤드들 각각에서 행 단위 희소성과 열 단위 희소성을 확인하는 동작;상기 헤드들 각각에서 제로 라인을 제거하여 희소 행렬을 밀집 행렬로 변환하는 동작; 및상기 헤드들 각각의 작업량에 기초하여, 해당하는 레이어에서 헤드들의 배치를 최적화하는 동작을 포함하는, 트랜스포머 모델 최적화 및 헤드 스케줄링 방법. |
| 9 | 트랜스포머 모델의 연산과 관련된 데이터들을 수신하여, 밀집 데이터들로 변환하는 동작;트랜스포머 모델 최적화 및 헤드 스케줄링 방법에 기초하여 생성된 밀집 스케줄링 데이터와 제로 라인 마스크를 수신하는 동작;상기 밀집 데이터들, 상기 밀집 스케줄링 데이터 및 제로 라인 마스크 중 적어도 하나에 기초하여 타일링된 행렬 곱셈을 수행하여, 밀집 연산 결과를 출력하는 동작; 및상기 제로 라인 마스크를 활용하여, 상기 밀집 연산 결과를 희소 행렬로 변환하여 최종 연산 결과를 출력하는 동작을 포함하는, 트랜스포머 가속기의 동작 방법. |
| 10 | 제9항에 있어서,상기 밀집 연산 결과를 출력하는 동작은상기 밀집 데이터 또는 상기 밀집 스케줄링 데이터에 타일 기반 동적 고정 소수점 양자화(Dynamic Fixed-point Quantization)를 수행하는 동작을 포함하는, 트랜스포머 가속기의 동작 방법. |
| 11 | 제10항에 있어서,상기 타일 기반 동적 고정 소수점 양자화를 수행하는 동작은상기 밀집 데이터 또는 상기 밀집 스케줄링 데이터에 포함된 입력 데이터 및 가중치 데이터를 INT8 데이터 유형으로 변환하는 동작을 포함하는, 트랜스포머 가속기의 동작 방법. |
| 12 | 제11항에 있어서,상기 타일 기반 동적 고정 소수점 양자화를 수행하는 동작은상기 변환된 입력 데이터 및 상기 변환된 가중치 데이터의 곱셈 연산 결과를 분수 정밀도로 나누는 역양자화를 수행하는 동작을 더 포함하는, 트랜스포머 가속기의 동작 방법. |
| 13 | 제12항에 있어서,상기 타일 기반 동적 고정 소수점 양자화를 수행하는 동작은상기 역양자화가 수행된 연산 결과에 양자화를 수행하여 INT8 유형의 연산 결과로 변환하고, 상기 분수 정밀도를 별도로 저장하는 동작을 더 포함하는, 트랜스포머 가속기의 동작 방법. |
| 14 | 하드웨어와 결합되어 제1항 내지 제13항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램. |
| 15 | 전자 장치에 있어서,인스트럭션들을 저장하는 메모리; 및하나 이상의 프로세서를 포함하고,상기 인스트럭션들은 상기 하나 이상의 프로세서에 의해 실행될 때, 상기 전자 장치로 하여금,기 학습한 라인 선택 동작을 수행하여, 트랜스포머 모델의 헤드들을 가지치기 하기 위해 헤드들 각각에 포함된 라인들 각각의 중요도 점수를 획득하는 동작,상기 중요도 점수 및 임계값에 기초하여, 상기 헤드들에 대해 전반적인 가지치기(Coarse-grained pruning)를 수행하는 동작,상기 전반적인 가지치기가 수행된 헤드들에 대해 세밀한 가지치기(Fine-grained pruning)를 수행하는 동작 및상기 가지치기가 수행된 헤드들의 작업량에 기초하여, 상기 헤드들의 배치를 최적화하는 동작을 수행하도록 하는, 전자 장치. |
| 16 | 트랜스포머 가속기에 있어서,인스트럭션들을 저장하는 메모리; 및하나 이상의 프로세서;를 포함하고상기 인스트럭션들을 상기 하나 이상의 프로세서에 의해 실행될 때, 상기 트랜스포머 가속기로 하여금,트랜스포머 모델의 연산과 관련된 데이터들을 수신하여, 밀집 데이터들로 변환하는 동작,트랜스포머 모델 최적화 및 헤드 스케줄링 방법에 기초하여 생성된 밀집 스케줄링 데이터와 제로 라인 마스크를 수신하는 동작,상기 밀집 데이터들, 상기 밀집 스케줄링 데이터 및 제로 라인 마스크 중 적어도 하나에 기초하여 타일링된 행렬 곱셈을 수행하여, 밀집 연산 결과를 출력하는 동작 및상기 제로 라인 마스크를 활용하여, 상기 밀집 연산 결과를 희소 행렬로 변환하여 최종 연산 결과를 출력하는 동작을 수행하도록 하는, 트랜스포머 가속기 |
| 17 | 전자 장치에 있어서,인스트럭션들을 저장하는 메모리; 트랜스포머 가속기; 및하나 이상의 프로세서를 포함하고,상기 인스트럭션들은 상기 하나 이상의 프로세서에 의해 실행될 때, 상기 전자 장치로 하여금,트랜스포머 모델에 대해 최적화 및 헤드 스케줄링 동작 및상기 트랜스포머 가속기가 상기 헤드 스케줄링된 트랜스포머 모델 연산의 가속 동작을 수행하도록 하고,상기 최적화 및 헤드 스케줄링 동작은기 학습한 라인 선택 동작을 수행하여, 트랜스포머 모델의 헤드들을 가지치기 하기 위해 헤드들 각각에 포함된 라인들 각각의 중요도 점수를 획득하는 동작,상기 중요도 점수 및 임계값에 기초하여, 상기 헤드들에 대해 전반적인 가지치기(Coarse-grained pruning)를 수행하는 동작,상기 전반적인 가지치기가 수행된 헤드들에 대해 세밀한 가지치기(Fine-grained pruning)를 수행하는 동작 및상기 가지치기가 수행된 헤드들의 작업량에 기초하여, 상기 헤드들의 배치를 최적화하는 동작을 포함하고,상기 가속 동작은트랜스포머 모델의 연산과 관련된 데이터들을 수신하여, 밀집 데이터들로 변환하는 동작,트랜스포머 모델 최적화 및 헤드 스케줄링 방법에 기초하여 생성된 밀집 스케줄링 데이터와 제로 라인 마스크를 수신하는 동작,상기 밀집 데이터들, 상기 밀집 스케줄링 데이터 및 제로 라인 마스크 중 적어도 하나에 기초하여 타일링된 행렬 곱셈을 수행하여, 밀집 연산 결과를 출력하는 동작 및상기 제로 라인 마스크를 활용하여, 상기 밀집 연산 결과를 희소 행렬로 변환하여 최종 연산 결과를 출력하는 동작을 포함하는, 전자 장치. |