Altifigence Academy

21 / 24 · 개념

기준 모델과 오류 분류

기준 [37,47;67,77]와 비교 결과 [38,48;68,78]을 봤습니다. 우선 무엇을 확인하고 어떤 기록을 추가하겠습니까?

값·순서·시간을 나누어 검사하기

가속기의 정답은 숫자 하나만 맞는 것으로 끝나지 않습니다. 출력 텐서의 모양과 각 코드,출력의 채널·공간 순서,수락 조건과 완료 시점이 모두 계약에 맞아야 합니다. 넓은 정수의 직접 합성곱 모델을 기준으로 삼고 창 생성과 펼친 내적을 다른 경로로 계산합니다. 공통 코드가 적을수록 같은 오류를 공유할 가능성이 줄어듭니다. 손계산 fixture는 두 모델이 함께 틀리는 경우도 감시합니다.

비교 단계를 누적,재양자화,ReLU와 풀링으로 나눕니다. 누적부터 다르면 주소,가중치 순서,그룹 연결,바이어스 초기화 또는 폭을 먼저 봅니다. 누적은 같고 최종 코드가 다르면 scale,zero point,반올림과 포화를 봅니다. 숫자는 같지만 위치가 다르면 출력 주소나 소비 순서 문제일 수 있습니다. 멈춤이 있을 때만 달라지면 상태 전진과 backpressure를 조사합니다.

첫 차이로 찾는 예제

입력 [1,2,3;4,5,6;7,8,9]와 커널 [1,2;3,4]의 기준 출력은 [37,47;67,77]입니다. 비교 출력이 [23,33;53,63]이라면 첫 위치에서 37 대신 23이 나옵니다. 앞 단원의 뒤집은 커널 계산과 같으므로 커널 방향을 의심할 수 있습니다. 반면 [37,67;47,77]이면 값의 집합은 같고 좌표만 옮겨져 행·열 순서 오류를 의심합니다. 이러한 분류는 가능성을 좁히는 단서이며 확정하려면 실제 주소와 사용한 항을 확인합니다.

패딩을 검증하는 첫 위치는 모서리를 고르는 것이 좋습니다. 가운데만 보면 경계 밖 접근이 없습니다. 양자화 padding의 raw zero point를 빠뜨린 오류는 z가 0인 입력에서는 숨습니다. 따라서 z=128같은 비영 zero point와 비대칭 패딩을 함께 준비합니다. signed 최솟값과 큰 바이어스,정확한 절반 반올림을 따로 넣으면 평범한 작은 양수만으로 통과한 폭·수치 오류를 찾을 수 있습니다.

재현 가능한 기록

실패 보고에는 모양,패딩, stride,dilation,그룹,scale과 zero point,seed,첫 다른 좌표,기대값과 실제값을 남깁니다. 전체 텐서가 길면 첫 오차 주변의 입력 창과 가중치를 저장합니다. 멈춤 테스트는 입력 수락 기록과 출력 수락 기록을 비교해 빠짐·중복을 찾습니다. 입력과 출력 개수가 맞아도 순서가 잘못될 수 있으므로 값과 좌표를 함께 비교해야 합니다.

검증 계획은 기능의 범위를 정직하게 반영해야 합니다. 여기의 Node 모델은 수학과 간단한 일정 추정의 검증입니다. SystemVerilog 문법 검사,합성,주파수,전력,설치된 DDS의 파일 흐름과 실제 학습 정확도는 별도 실행 근거가 필요합니다. 실행하지 않은 항목을 통과로 표시하지 마세요. 다음 실습은 경계 fixture를 실행하고 마지막 실습은 작은 전체 경로의 기준 출력과 명시적 측정 항목을 만듭니다.

직접 생각해 보기

기준 [37,47;67,77]와 비교 결과 [38,48;68,78]을 봤습니다. 우선 무엇을 확인하고 어떤 기록을 추가하겠습니까?

해설 보기

모든 값이 1만큼 커져 바이어스 값·반복 초기화와 이전 누적값 유지 여부를 먼저 확인합니다. 첫 출력의 초기 누적값과 각 곱을 기록해 주소 오차와 구별합니다. 일정한 차이만으로 원인을 확정할 수는 없습니다.

선택은 이 브라우저에만 적용됩니다. 언제든 푸터에서 변경할 수 있습니다.