맞춤기술찾기

이전대상기술

팝카운트 기반 딥러닝 신경망 연산 방법, 곱셈 누산기 및 장치

  • 기술번호 : KST2022004045
  • 담당센터 : 경기기술혁신센터
  • 전화번호 : 031-8006-1570
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 팝카운트 기반 딥러닝 신경망 연산 방법, 곱셈 누산기 및 장치에 관한 것이다. 본 발명의 일 실시예에 따른 연산 방법은 딥러닝 신경망(deep learning neural network)에 대한 연산 방법으로서, 가중치(W)들과 입력 값(A)들 간의 곱셈(제1 곱셈)들에 대해 각각, 제1 곱셈 결과 값들의 종류에 따른 원-핫 인코딩(one-hot encoding)의 코드들을 생성하는 단계; 상기 생성된 각 코드에 대해 팝카운트(pop-count)를 수행하는 단계; 서로 다른 상수 값인 상기 각 종류의 제1 곱셈 결과 값과 상기 팝카운트의 각 카운트 값 간의 상수 곱셈(제2 곱셈)에 대한 결과 값들을 누산하는 단계;를 포함한다.
Int. CL G06N 3/063 (2006.01.01) G06N 3/04 (2006.01.01) G06F 7/46 (2006.01.01)
CPC
출원번호/일자 1020200163708 (2020.11.30)
출원인 한국전자기술연구원
등록번호/일자
공개번호/일자 10-2022-0049432 (2022.04.21) 문서열기
공고번호/일자
국제출원번호/일자
국제공개번호/일자
우선권정보 대한민국  |   1020200132847   |   2020.10.14
법적상태 공개
심사진행상태 수리
심판사항
구분 국내출원/신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2020.11.30)
심사청구항수 20

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 한국전자기술연구원 대한민국 경기도 성남시 분당구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 신동엽 서울특별시 강서구
2 임태범 경기도 용인시 기흥구
3 임용석 서울특별시 양천구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 특허법인이룸리온 대한민국 서울특별시 서초구 사평대로 ***, *층 (반포동)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
최종권리자 정보가 없습니다
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2020.11.30 수리 (Accepted) 1-1-2020-1288397-82
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
딥러닝 신경망(deep learning neural network)에 대한 연산 방법으로서,가중치(W)들과 입력 값(A)들 간의 곱셈(제1 곱셈)들에 대해 각각, 제1 곱셈 결과 값들의 종류에 따른 원-핫 인코딩(one-hot encoding)의 코드들을 생성하는 단계;상기 생성된 각 코드에 대해 팝카운트(pop-count)를 수행하는 단계; 및서로 다른 상수 값인 상기 각 종류의 제1 곱셈 결과 값과 상기 팝카운트의 각 카운트 값 간의 상수 곱셈(제2 곱셈)에 대한 결과 값들을 누산하는 단계;를 포함하는 연산 방법
2 2
제1항에 있어서,상기 누산하는 단계는,상기 제2 곱셈 결과 값들을 도출하는 제1 도출 단계; 및상기 제2 곱셈 결과 값들에 대한 누산 결과 값을 도출하는 제2 도출 단계;를 포함하는 연산 방법
3 3
제2항에 있어서,상기 제1 도출 단계는 상기 상수 값과 상기 카운트 값 간에 곱셈 연산을 수행하는 상수 곱셈기를 이용하거나, 상기 상수 값의 비트에 대한 시프트(shift)를 수행하는 시프터(shifter)를 이용하는 단계를 포함하는 연산 방법
4 4
제2항에 있어서,상기 제1 도출 단계는 상기 제2 곱셈 결과 값들이 저장된 순람표(Lookup table)을 이용하는 단계를 포함하는 연산 방법
5 5
제3항 또는 제4항에 있어서,상기 제2 도출 단계는 상기 제2 곱셈 결과 값들 간에 누산 연산을 수행하는 가산기 트리(adder tree)를 이용하는 단계를 포함하는 연산 방법
6 6
제1항에 있어서,상기 누산하는 단계는 상기 제2 곱셈 결과 값들이 저장된 순람표(Lookup table)를 기반으로 분산 산술(distributed arithmetic)을 수행하는 단계를 포함하는 연산 방법
7 7
제1항에 있어서,상기 생성하는 단계는 가중치와 입력 값의 비트 종류에 따라, 상기 제1 곱셈 결과 값의 종류를 구분하여 상기 코드를 생성하는 단계를 포함하는 연산 방법
8 8
제7항에 있어서,상기 생성하는 단계는,상기 제1 곱셈에 대해 그 결과 값이 0(zero)인지 여부를 구분하는 제1 구분 단계; 및그 결과 값이 0이 아닌 것(non-zero)으로 구분된 각 제1 곱셈에 대해 그 나머지의 결과 값 종류로 구분하는 제2 구분 단계; 및상기 제2 구분 단계에서 구분된 결과를 기반으로, 상기 코드를 생성하는 단계;를 포함하는 연산 방법
9 9
제8항에 있어서,상기 제2 구분 단계는,상기 non-zero로 구분된 각 제1 곱셈에 대해, 가중치와 입력 값의 최상위비트(most significant bit)를 기준으로 2개 그룹으로 그 결과 값의 종류를 구분하는 제2-1 단계; 및상기 2개 그룹에 대해 각 그룹에 속한 제1 곱셈에 대해 그 결과 값의 종류를 구분하는 제2-2 구분 단계;를 포함하는 연산 방법
10 10
제1항에 있어서,상기 각 제1 곱셈 결과 값들의 종류에 대해, 그 반복 확률에 따라 다수의 데이터로 구분하는 단계; 및제1 데이터에 속하는 상기 제1 곱셈에 대해, 상기 생성하는 단계, 상기 수행하는 단계 및 상기 누산하는 단계를 각각 적용하는 제1 연산 단계;상기 제1 데이터 보다 반복 확률이 낮은 제2 데이터에 속하는 상기 제1 곱셈에 대해, 상기 제1 연산 단계와 다른 곱셈-누산의 연산을 수행하는 제2 연산 단계; 및제1 및 제2 연산 단계의 결과 값들을 누산하는 제3 연산 단계;를 더 포함하는 연산 방법
11 11
딥러닝 신경망 연산에 적용되는 곱셈 누산기로서,가중치(W)들과 입력 값(A)들 간의 곱셈(제1 곱셈)들에 대해 각각, 제1 곱셈 결과 값들의 종류에 따른 원-핫 인코딩(one-hot encoding)의 코드들을 생성하는 인코더;상기 생성된 각 코드에 대해 팝카운트(pop-count)를 수행하는 팝카운터; 및서로 다른 상수 값인 상기 각 종류의 제1 곱셈 결과 값과 상기 팝카운트의 각 카운트 값 간의 상수 곱셈(제2 곱셈) 결과 값들을 누산하는 곱셈-누산 연산부;를 포함하는 곱셈 누산기
12 12
제11항에 있어서,상기 곱셈-누산 연산부는 상기 상수 값과 상기 카운트 값 간에 곱셈 연산을 수행하는 상수 곱셈기나, 상기 상수 값의 비트에 대한 시프트(shift)를 수행하는 시프터(shifter)를 기반으로 상기 제2 곱셈 결과 값을 도출하는 곱셈 누산기
13 13
제11항에 있어서,상기 곱셈-누산 연산부는 상기 제2 곱셈 결과 값들이 저장된 순람표(Lookup table)를 기반으로 상기 제2 곱셈 결과 값들을 도출하는 곱셈 누산기
14 14
제12항 또는 제13항에 있어서,상기 곱셈-누산 연산부는 상기 제2 곱셈 결과 값들 간에 누산 연산을 수행하는 가산기 트리(adder tree)를 기반으로 상기 제2 곱셈 결과 값들을 누산하는 곱셈 누산기
15 15
제11항에 있어서,상기 곱셈-누산 연산부는 상기 제2 곱셈 결과 값이 저장된 순람표(Lookup table)를 기반으로 분산 산술(distributed arithmetic)을 수행하여 상기 제2 곱셈 결과 값들을 누산하는 곱셈 누산기
16 16
제11항에 있어서,상기 인코더는 가중치와 입력 값의 비트 종류에 따라, 상기 제1 곱셈 결과 값의 종류를 구분하여 상기 코드를 생성하는 곱셈 누산기
17 17
제11항에 있어서,상기 인코더는 상기 각 제1 곱셈에 대해 그 결과 값이 0(zero)인지 여부를 제1 구분하고, 그 결과 값이 0이 아닌 것(non-zero)으로 구분된 각 제1 곱셈에 대해 그 결과 값의 종류를 제2 구분하며, 상기 제2 구분된 결과를 기반으로, 상기 코드를 생성하는 곱셈 누산기
18 18
제17항에 있어서,상기 인코더는 상기 제2 구분 시, 상기 non-zero로 구분된 각 제1 곱셈에 대해 가중치와 입력 값의 최상위비트(most significant bit)를 기준으로 2개 그룹으로 그 결과 값의 종류를 구분한 후, 상기 2개 그룹에 대해 각 그룹에 속한 제1 곱셈에 대해 그 결과 값의 종류를 구분하는 곱셈 누산기
19 19
제11항에 있어서,상기 인코더, 상기 팝카운터 및 상기 곱셈-누산 연산부를 각각 포함하며, 제1 데이터에 속하는 상기 제1 곱셈을 처리하는 제1 연산부;상기 제1 데이터 보다 반복 확률이 낮은 제2 데이터에 속하는 상기 제1 곱셈에 대해, 상기 제1 연산부와 다른 곱셈-누산의 연산을 수행하는 제2 연산부; 및제1 및 제2 연산부의 결과 값들을 누산하는 제3 연산부;를 더 포함하는 곱셈 누산기
20 20
딥러닝 신경망(deep learning neural network) 연산을 수행하는 전자 장치로서,상기 딥러닝 신경망의 가중치(W)들과, 상기 딥러닝 신경망의 입력층에 입력되는 입력 값(A)들을 저장한 메모리; 및상기 메모리에 저장된 가중치들과 입력 값들 간의 곱셈(제1 곱셈)들에 대한 누산 결과 값을 계산하는 곱셈-누산기;를 포함하며,상기 곱셈-누산기는,상기 제1 곱셈들에 대해 각각, 제1 곱셈 결과 값들의 종류에 따른 원-핫 인코딩(one-hot encoding)의 코드들을 생성하고, 상기 생성된 각 코드에 대해 팝카운트(pop-count)를 수행하며, 서로 다른 상수 값인 상기 각 종류의 제1 곱셈 결과 값과 상기 팝카운트의 각 카운트 값 간의 상수 곱셈(제2 곱셈) 결과 값들을 누산하는 전자 장치
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 과학기술정보통신부 (주)넥스트칩 정보통신방송기술개발 IoT 다중 인터페이스 기반의 데이터 센싱, 엣지 컴퓨팅 분석 및 데이터 공유 지능형 반도체 기술 개발