1 |
1
프로세서에 의해 수행되는 스파이킹 뉴럴 네트워크(spiking neural network, SNN)의 연산 방법에 있어서,상기 스파이킹 뉴럴 네트워크에 포함된 복수의 레이어들 중 대상 레이어에서 입력 스파이크 시퀀스들(input spike sequences)을 수신하는 단계;상기 대상 레이어의 출력들을 스파이크 간 간격이 동등한 출력 스파이크 시퀀스들(output spike sequences)로 변환하는 단계; 및상기 변환된 출력 스파이크 시퀀스들을 상기 대상 레이어의 다음 레이어로 전파하는 단계를 포함하는 스파이킹 뉴럴 네트워크 연산 방법
|
2 |
2
제1항에 있어서,상기 스파이크 시퀀스는,입력 데이터에 포함될 수 있는 입력 값 범위의 최대 값에 기초하여 결정된 시퀀스 길이(sequence length)를 갖는,스파이킹 뉴럴 네트워크 동작 방법
|
3 |
3
제1항에 있어서,상기 스파이크 시퀀스는,복수의 스파이크들을 가지는 경우, 상기 복수의 스파이크들의 각각은 상기 스파이크 시퀀스의 복수의 비트 위치들에서 다른 스파이크의 비트 위치에 대해 동등한 간격을 가지도록 분배된,스파이킹 뉴럴 네트워크 연산 방법
|
4 |
4
제1항에 있어서,상기 스파이크 시퀀스들로 변환하는 단계는,상기 대상 레이어 출력들이 지시하는 복수의 정수값들(integer values) 각각을 주소로하여 대응하는 스파이크 시퀀스가 기록된 룩업 테이블(lookup table)을 로드하는 단계; 및상기 대상 레이어 출력들 중 하나의 대상 출력에 대하여, 상기 로드된 룩업 테이블에 기초하여 상기 대상 출력이 지시하는 정수값을 주소로 디코딩하여 대응하는 스파이크 시퀀스를 선택하는 단계를 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
5 |
5
제4항에 있어서,상기 스파이크 시퀀스들로 변환하는 단계는,상기 선택된 스파이크 시퀀스에 대하여 스파이크 비율(ratio)을 동일하게 유지하면서 랜덤(random)으로 생성된 비트(bit) 개수만큼 시프트(shift)함으로써 변경된 스파이크 시퀀스를 생성하는 단계를 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
6 |
6
제1항에 있어서,상기 스파이킹 뉴럴 네트워크의 트레이닝에 기초하여 업데이트된 상기 스파이킹 뉴럴 네트워크의 부동소수점 가중치(weight)들을 클리핑(clipping)하는 단계;상기 클리핑된 가중치들을 양자화(quantization)하기 위한 최소 비트 수를 목표 정확도(target accuracy)에 기초하여 결정하는 단계;상기 결정된 최소 비트 수로 클리핑된 가중치를 정수값으로 양자화하는 단계; 및상기 양자화된 가중치를 상기 스파이킹 뉴럴 네트워크에 적용하는 단계를 더 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
7 |
7
제6항에 있어서,상기 클리핑하는 단계는,상기 대상 레이어에 대한 부동소수점 가중치들의 평균(mean) 및 표준편차(standard deviation)에 기초하여 서로 상이한 양의 한계값 및 음의 한계값을 선택하는 단계;상기 선택된 양의 한계값에 기초하여 양의 부동소수점 가중치들을 클리핑하고, 상기 선택된 음의 한계값에 기초하여 음의 부동소수점 가중치들을 클리핑하는 단계를 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
8 |
8
제6항에 있어서,상기 양자화하는 단계는,상기 대상 레이어에 대하여 스파이크의 생성에 사용되는 부동 소수점 임계 전압(threshold voltage)을 정수 임계 전압으로 보상(compensate)하는 단계를 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
9 |
9
제8항에 있어서,상기 보상하는 단계는,상기 대상 레이어의 모든 뉴런들 각각에 대하여, 대상 뉴런의 양자화된 정수 가중치들의 합 및 부동 소수점 가중치들의 합(sum)을 산출하고, 상기 산출된 부동 소수점 가중치들의 합에 대한 상기 양자화된 정수 가중치들의 합의 비율을 산출하는 단계; 및상기 대상 레이어의 모든 뉴런들 각각에 대하여 산출된 비율의 평균(mean)을 부동 소수점 임계 전압에 곱하여 정수 임계 전압을 산출하는 단계를 포함하는 스파이킹 뉴럴 네트워크 동작 방법
|
10 |
10
하드웨어와 결합되어 제1항 내지 제9항 중 어느 하나의 항의 방법을 실행시키기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램
|
11 |
11
스파이킹 뉴럴 네트워크 연산 장치에 있어서,상기 스파이킹 뉴럴 네트워크에 포함된 복수의 레이어들 중 대상 레이어에서 입력 스파이크 시퀀스들을 수신하고, 상기 대상 레이어의 출력들을 스파이크 간 간격이 동등한 출력 스파이크 시퀀스들로 변환하며, 상기 변환된 출력 스파이크 시퀀스들을 상기 대상 레이어의 다음 레이어로 전파하는 프로세서를 포함하는 스파이킹 뉴럴 네트워크 연산 장치
|
12 |
12
제11항에 있어서,상기 스파이크 시퀀스는,입력 데이터에 포함될 수 있는 입력 값 범위의 최대 값에 기초하여 결정된 시퀀스 길이를 갖는,스파이킹 뉴럴 네트워크 연산 장치
|
13 |
13
제11항에 있어서,상기 스파이크 시퀀스는,복수의 스파이크들을 가지는 경우, 상기 복수의 스파이크들의 각각은 상기 스파이크 시퀀스의 복수의 비트 위치들에서 다른 스파이크의 비트 위치에 대해 동등한 간격을 가지도록 분배된,스파이킹 뉴럴 네트워크 연산 장치
|
14 |
14
제11항에 있어서,상기 프로세서는,상기 대상 레이어 출력들이 지시하는 복수의 정수값들 각각을 주소로하여 대응하는 스파이크 시퀀스가 기록된 룩업 테이블을 로드하고, 상기 대상 레이어 출력들 중 하나의 대상 출력에 대하여, 상기 로드된 룩업 테이블에 기초하여 상기 대상 출력이 지시하는 정수값을 주소로 디코딩하여 대응하는 스파이크 시퀀스를 선택하는,스파이킹 뉴럴 네트워크 연산 장치
|
15 |
15
제14항에 있어서,상기 프로세서는,상기 선택된 스파이크 시퀀스에 대하여 스파이크 비율을 동일하게 유지하면서 랜덤으로 생성된 비트 개수만큼 시프트함으로써 변경된 스파이크 시퀀스를 생성하는,스파이킹 뉴럴 네트워크 연산 장치
|
16 |
16
제11항에 있어서,상기 프로세서는,상기 스파이킹 뉴럴 네트워크의 트레이닝에 기초하여 업데이트된 상기 스파이킹 뉴럴 네트워크의 부동소수점 가중치들을 클리핑하고, 상기 클리핑된 가중치들을 양자화하기 위한 최소 비트 수를 목표 정확도에 기초하여 결정하며, 상기 결정된 최소 비트 수로 클리핑된 가중치를 정수값으로 양자화하고, 상기 양자화된 가중치를 상기 스파이킹 뉴럴 네트워크에 적용하는,스파이킹 뉴럴 네트워크 연산 장치
|
17 |
17
제16항에 있어서,상기 프로세서는,상기 대상 레이어에 대한 부동소수점 가중치들의 평균 및 표준편차에 기초하여 서로 상이한 양의 한계값 및 음의 한계값을 선택하고, 상기 선택된 양의 한계값에 기초하여 양의 부동소수점 가중치들을 클리핑하고, 상기 선택된 음의 한계값에 기초하여 음의 부동소수점 가중치들을 클리핑하는,스파이킹 뉴럴 네트워크 연산 장치
|
18 |
18
제16항에 있어서,상기 프로세서는,상기 대상 레이어에 대하여 스파이크의 생성에 사용되는 부동 소수점 임계 전압을 정수 임계 전압으로 보상하는,스파이킹 뉴럴 네트워크 연산 장치
|
19 |
19
제18항에 있어서,상기 프로세서는,상기 대상 레이어의 모든 뉴런들 각각에 대하여, 대상 뉴런의 양자화된 정수 가중치들의 합 및 부동 소수점 가중치들의 합(sum)을 산출하고, 상기 산출된 부동 소수점 가중치들의 합에 대한 상기 양자화된 정수 가중치들의 합의 비율을 산출하며, 상기 대상 레이어의 모든 뉴런들 각각에 대하여 산출된 비율의 평균(mean)을 부동 소수점 임계 전압에 곱하여 정수 임계 전압을 산출하는,스파이킹 뉴럴 네트워크 연산 장치
|