KR20230027949A - 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법 - Google Patents

초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법 Download PDF

Info

Publication number
KR20230027949A
KR20230027949A KR1020210110292A KR20210110292A KR20230027949A KR 20230027949 A KR20230027949 A KR 20230027949A KR 1020210110292 A KR1020210110292 A KR 1020210110292A KR 20210110292 A KR20210110292 A KR 20210110292A KR 20230027949 A KR20230027949 A KR 20230027949A
Authority
KR
South Korea
Prior art keywords
weight
image
lookup table
value
multiplication result
Prior art date
Application number
KR1020210110292A
Other languages
English (en)
Inventor
이규중
알라오 혼낭
Original Assignee
선문대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 선문대학교 산학협력단 filed Critical 선문대학교 산학협력단
Priority to KR1020210110292A priority Critical patent/KR20230027949A/ko
Publication of KR20230027949A publication Critical patent/KR20230027949A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4053Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Processing (AREA)

Abstract

초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법이 개시된다. 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법은, 커널(Kernel)의 가중치(Weight)별 룩업 테이블(LUT: Look Up Table)을 생성하는 단계, 이미지를 입력받는 단계, 가중치별 룩업 테이블에서 이미지의 특징값이 존재하는지를 탐색하는 단계, 가중치별 룩업 테이블에 이미지의 특징값이 존재하는 경우, 가중치별 룩업 테이블에서 이미지의 특징값에 매핑(Mapping)된 곱셈결과값을 이미지와 커널의 컨볼루션 연산에 적용하는 단계, 가중치별 룩업 테이블에 이미지의 특징값이 존재하지 않는 경우, 이미지의 특징값과 가중치의 곱셈을 수행하여 곱셈결과값을 산출하는 단계 및 산출된 곱셈결과값을 이미지의 특징값에 매핑하여 가중치별 룩업 테이블에 추가로 저장하여 가중치별 룩업 테이블을 갱신하는 단계를 포함한다.

Description

초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법{Apparatus and method for reducing the amount of computation in the SRCNN(Super Resolution Convolutional Neural Network system)}
본 발명은 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법에 관한 것이다.
이미지 복원으로 알려진 이미지 초고해상도(SISR: single image super resolution)는 저해상도 이미지로부터 고해상도 이미지를 재구성하기 위하여 노력하는 전통적인 컴퓨터 비전 작업으로, 최근 몇 년 동안 감시 이미징, 의료 이미징, HDTV 등에 적용되었다. 특히, 컨볼루션 신경망(Convolutional neural network)을 이용한 딥러닝(Deep learning) 구현은 SRCNN에 의하여 처음 구현된 이미지 복원의 돌파구였다. 그래서, 복원 이미지의 정확도를 개선하기 위하여 추가 연구를 통해 VDSR 및 EDSR이 만들어졌다.
최근 몇 년 동안에 이미지 복원은 여러 방법으로 달성될 수 있었다. 이미지 복원을 위해서는, 업스케일링 방법(Upscaling method)을 적용하는 것이 필수적이다. 기존 업스케일링 방법에는, 2차원 행렬에 적용되는 보간 기법인 Nearest-neighboring, bilinear 및 bicubic interpolation이 있다. 이 중 bicubic interpolation은 가장 큰 성능을 가진다. 이것은 최근까지 이미지 업 스케일(Image upscale)이 필요한 다양한 소프트웨어 어플리케이션에 적용되어왔다. 이의 효율은 주어진 이미지를 어떤 비율 및 크기로도 확대할 수 있는 능력에 있다.
이러한 초고해상도 컨볼루션 신경망 시스템은, 입력 이미지 전체에 대하여 커널(Kernel)과 컨볼루션(Convolution)을 수행한다. 여기서, 커널의 파라미터는 지정된 상수이며, 입력 이미지가 계속 바뀌는데, 계층이 진행될수록 입력 이미지의 특징값의 범위가 작아진다. 따라서, 동일한 값들의 연산이 반복되는 불필요한 연산이 수행될 수 있는 문제점이 있다.
대한민국등록특허공보 제10-2061408호(2019.12.24)
본 발명은 입력 이미지와 커널(Kernel)의 컨볼루션(Convolution) 수행 시, 연산 결과값을 룩업 테이블(LUT: Look Up Table)에 저장하고, 동일한 값들의 연산이 수행되는 경우에 룩업 테이블을 이용하여 연산을 생략하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법을 제공하기 위한 것이다.
본 발명의 일 측면에 따르면, 연산량 감소 장치가 수행하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법이 개시된다.
본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법은, 커널(Kernel)의 가중치(Weight)별 룩업 테이블(LUT: Look Up Table)을 생성하는 단계, 이미지를 입력받는 단계, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값이 존재하는지를 탐색하는 단계, 상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하는 경우, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값에 매핑(Mapping)된 곱셈결과값을 상기 이미지와 상기 커널의 컨볼루션 연산에 적용하는 단계, 상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하지 않는 경우, 상기 이미지의 특징값과 상기 가중치의 곱셈을 수행하여 곱셈결과값을 산출하는 단계 및 상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블에 추가로 저장하여 상기 가중치별 룩업 테이블을 갱신하는 단계를 포함한다.
상기 가중치별 룩업 테이블을 생성하는 단계는, 상기 커널의 가중치 별로 주소를 부여하여 상기 가중치별 룩업 테이블을 생성하되, 상기 가중치별 룩업 테이블은, 유효 여부값, 상기 가중치에 곱해지는 상기 특징값 및 상기 특징값과 상기 가중치의 곱셈결과값을 매핑(Mapping)하여 저장하는 저장공간이 형성되어 생성된다.
상기 가중치별 룩업 테이블을 갱신하는 단계는, 상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블의 빈 저장공간에 저장하고, 상기 이미지 특징값 및 상기 산출된 곱셈결과값에 매핑되는 유효 여부값이 유효함을 나타내도록 설정한다.
상기 가중치별 룩업 테이블을 갱신하는 단계는, 상기 가중치별 룩업 테이블에 빈 저장공간이 없는 경우, 상기 이미지의 특징값과 상기 룩업 테이블의 특징값의 비트(Bit) 비교를 통해 유사도가 가장 높은 룩업 테이블의 특징값을 탐색하고, 상기 유사도가 가장 높은 룩업 테이블의 특징값, 매핑된 곱셈결과값 및 유효 여부값을 삭제하고, 삭제하여 생성된 빈 저장공간에 상기 산출된 곱셈결과값, 매핑된 이미지의 특징값 및 유효 여부값을 저장한다.
본 발명의 다른 측면에 따르면, 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치가 개시된다.
본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치는, 명령어를 저장하는 메모리; 및 상기 명령어를 실행하는 프로세서를 포함하되, 상기 명령어는, 커널(Kernel)의 가중치(Weight)별 룩업 테이블(LUT: Look Up Table)을 생성하는 단계, 이미지를 입력받는 단계, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값이 존재하는지를 탐색하는 단계, 상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하는 경우, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값에 매핑(Mapping)된 곱셈결과값을 상기 이미지와 상기 커널의 컨볼루션 연산에 적용하는 단계, 상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하지 않는 경우, 상기 이미지의 특징값과 상기 가중치의 곱셈을 수행하여 곱셈결과값을 산출하는 단계 및 상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블에 추가로 저장하여 상기 가중치별 룩업 테이블을 갱신하는 단계를 포함하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법을 수행한다.
본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법은, 입력 이미지와 커널(Kernel)의 컨볼루션(Convolution) 수행 시, 연산 결과값을 룩업 테이블(LUT: Look Up Table)에 저장하고, 동일한 값들의 연산이 수행되는 경우에 룩업 테이블을 이용하여 연산을 생략함으로써, 초고해상도 컨볼루션 신경망 시스템의 연산량을 줄일 수 있다.
도 1은 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치가 수행하는 연산량 감소 방법을 나타낸 흐름도.
도 2 및 도 3은 도 1의 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법을 설명하기 위한 도면.
도 4는 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치의 구성을 개략적으로 예시하여 나타낸 도면.
본 명세서에서 사용되는 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "구성된다" 또는 "포함한다" 등의 용어는 명세서상에 기재된 여러 구성 요소들, 또는 여러 단계들을 반드시 모두 포함하는 것으로 해석되지 않아야 하며, 그 중 일부 구성 요소들 또는 일부 단계들은 포함되지 않을 수도 있고, 또는 추가적인 구성 요소 또는 단계들을 더 포함할 수 있는 것으로 해석되어야 한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
이하, 본 발명의 다양한 실시예들을 첨부된 도면을 참조하여 상술하겠다.
도 1은 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치가 수행하는 연산량 감소 방법을 나타낸 흐름도이고, 도 2 및 도 3은 도 1의 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법을 설명하기 위한 도면이다. 이하, 도 1을 중심으로, 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법에 대하여 설명하되, 도 2 및 도 3을 참조하기로 한다.
S110 단계에서, 연산량 감소 장치는 커널(Kernel)의 각 가중치(Weight)에 대하여 룩업 테이블(LUT: Look Up Table)을 생성한다.
예를 들어, 도 3을 참조하면, 연산량 감소 장치는 커널의 가중치(W1 ~ W9) 별로 주소(Address)를 부여한 가중치별 룩업 테이블을 생성할 수 있다. 이때, 가중치별 룩업 테이블은 유효 여부값(V), 커널의 가중치에 곱해지는 입력 이미지의 특징값(F) 및 특징값과 가중치의 곱셈결과값(M)을 매핑(Mapping)하여 저장하는 저장공간이 형성되어 생성될 수 있다. 여기서, 유효 여부값은 유효 비트(Valid bit)로 표현되며, 유효 비트가 1일 때, 해당 특징값 및 곱셈결과값이 유효한 것일 수 있다.
S120 단계에서, 연산량 감소 장치는 이미지를 입력받는다.
예를 들어, 입력 이미지는 초고해상도 컨볼루션 신경망 시스템이 초고해상도(SR: Super Resolution) 이미지로 복원하고자 하는 저해상도(LR: Low Resolution) 이미지일 수 있다. 여기서, 초고해상도 컨볼루션 신경망 시스템은 도 2에 도시된 바와 같이, 입력 이미지와 커널(Kernel)의 컨볼루션(Convolution)을 수행한다. 즉, 초고해상도 컨볼루션 신경망 시스템은 입력 이미지의 특징값과 커널의 가중치(Weight)의 곱셈을 수행할 수 있다.
S130 단계에서, 연산량 감소 장치는 입력 이미지와 커널의 컨볼루션이 수행되기 전에, 가중치별 룩업 테이블에서 입력 이미지의 특징값을 탐색한다.
예를 들어, 연산량 감소 장치는 도 3에 도시된 바와 같이, 유효 여부값(V), 특징값(F) 및 곱셈결과값(M)이 매핑되어 저장되는 가중치별 룩업 테이블에서 입력 이미지의 특징값이 존재하는지를 탐색할 수 있다.
S140 단계에서, 연산량 감소 장치는 탐색을 통해 가중치별 룩업 테이블에 입력 이미지의 특징값이 존재하는지 여부를 판단한다.
S150 단계에서, 연산량 감소 장치는 가중치별 룩업 테이블에 입력 이미지의 특징값이 존재하는 경우, 입력 이미지의 특징값(F)과 커널의 가중치(W)의 곱셈 연산없이, 가중치별 룩업 테이블에서 입력 이미지의 특징값에 매핑된 곱셈결과값을 입력 이미지와 커널의 컨볼루션 연산에 그대로 적용한다.
예를 들어, 연산량 감소 장치는 가중치별 룩업 테이블에서 유효 비트가 1로서 유효 여부값이 유효함을 나타내고, 입력 이미지의 특징값에 매핑된 곱셈결과값을 그대로 입력 이미지와 커널의 컨볼루션 연산에 적용할 수 있다.
S160 단계에서, 연산량 감소 장치는 가중치별 룩업 테이블에 입력 이미지의 특징값이 존재하지 않는 경우, 입력 이미지의 특징값(F)과 커널의 가중치(W)의 곱셈을 수행하여 곱셈결과값을 산출한다.
S170 단계에서, 연산량 감소 장치는 산출된 곱셈결과값을 입력 이미지의 특징값에 매핑하여 해당 가중치의 룩업 테이블에 추가로 저장하여 룩업 테이블을 갱신한다.
예를 들어, 연산량 감소 장치는 산출된 곱셈결과값을 입력 이미지의 특징값에 매핑하여 해당 가중치의 룩업 테이블의 빈 저장공간에 저장하고, 특징값 및 곱셈결과값에 매핑되는 유효 여부값이 유효함을 나타내도록 설정할 수 있다.
만약, 해당 가중치의 룩업 테이블에 빈 저장공간이 없는 경우, 연산량 감소 장치는 입력 이미지의 특징값과 룩업 테이블의 특징값의 비트(Bit) 비교를 통해 유사도가 가장 높은 룩업 테이블의 특징값을 탐색하고, 유사도가 가장 높은 룩업 테이블의 특징값, 이에 매핑된 곱셈결과값 및 유효 여부값을 삭제하고, 삭제하여 생성된 빈 저장공간에 새로이 산출된 곱셈결과값과 이에 매핑되는 입력 이미지의 특징값 및 유효 여부값을 저장할 수 있다.
이와 같은 연산량 감소 장치는, 새로운 이미지가 입력될 때마다 전술한 S120 단계 내지 S170 단계를 반복할 수 있다.
한편, 본 발명의 실시예에 따르면, 룩업 테이블의 크기를 줄이기 위하여, 룩업 테이블에 특징값(F)의 전체 비트 중 미리 설정된 일부 비트만이 저장되도록 룩업 테이블의 저장공간이 설정될 수 있다.
예를 들어, 특징값(F)의 전체 비트가 8비트라고 가정하면, 상위비트(MSB: Most Significant Bit) 6비트만이 저장되고, 특징값 비교시 특징값의 상위비트 6비트만이 사용되도록 설정될 수 있다.
또한, 룩업 테이블의 크기를 줄이기 위하여, 유사도가 높은 복수의 가중치에 대해서는 동일한 하나의 룩업 테이블이 사용되도록 설정될 수 있다.
예를 들어, 연산량 감소 장치는 비트 비교를 통해 유사도가 미리 설정된 기준치 이상인 복수의 가중치를 탐색하고, 유사도가 미리 설정된 기준치 이상인 복수의 가중치가 공유하는 하나의 주소가 부여된 하나의 룩업 테이블을 생성할 수 있다.
도 4는 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치의 구성을 개략적으로 예시하여 나타낸 도면이다.
도 4를 참조하면, 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치는 프로세서(10), 메모리(20), 통신부(30) 및 인터페이스부(40)를 포함한다.
프로세서(10)는 메모리(20)에 저장된 처리 명령어를 실행시키는 CPU 또는 반도체 소자일 수 있다.
메모리(20)는 다양한 유형의 휘발성 또는 비휘발성 기억 매체를 포함할 수 있다. 예를 들어, 메모리(20)는 ROM, RAM 등을 포함할 수 있다.
예를 들어, 메모리(20)는 본 발명의 실시예에 따른 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법을 수행하는 명령어들을 저장할 수 있다.
통신부(30)는 통신망을 통해 다른 장치들과 데이터를 송수신하기 위한 수단이다.
인터페이스부(40)는 네트워크에 접속하기 위한 네트워크 인터페이스 및 사용자 인터페이스를 포함할 수 있다.
한편, 전술된 실시예의 구성 요소는 프로세스적인 관점에서 용이하게 파악될 수 있다. 즉, 각각의 구성 요소는 각각의 프로세스로 파악될 수 있다. 또한 전술된 실시예의 프로세스는 장치의 구성 요소 관점에서 용이하게 파악될 수 있다.
또한 앞서 설명한 기술적 내용들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예들을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예들의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.
10: 프로세서
20: 메모리
30: 통신부
40: 인터페이스부

Claims (5)

  1. 연산량 감소 장치가 수행하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법에 있어서,
    커널(Kernel)의 가중치(Weight)별 룩업 테이블(LUT: Look Up Table)을 생성하는 단계;
    이미지를 입력받는 단계;
    상기 가중치별 룩업 테이블에서 상기 이미지의 특징값이 존재하는지를 탐색하는 단계;
    상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하는 경우, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값에 매핑(Mapping)된 곱셈결과값을 상기 이미지와 상기 커널의 컨볼루션 연산에 적용하는 단계;
    상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하지 않는 경우, 상기 이미지의 특징값과 상기 가중치의 곱셈을 수행하여 곱셈결과값을 산출하는 단계; 및
    상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블에 추가로 저장하여 상기 가중치별 룩업 테이블을 갱신하는 단계를 포함하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법.
  2. 제1항에 있어서,
    상기 가중치별 룩업 테이블을 생성하는 단계는,
    상기 커널의 가중치 별로 주소를 부여하여 상기 가중치별 룩업 테이블을 생성하되,
    상기 가중치별 룩업 테이블은,
    유효 여부값, 상기 가중치에 곱해지는 상기 특징값 및 상기 특징값과 상기 가중치의 곱셈결과값을 매핑(Mapping)하여 저장하는 저장공간이 형성되어 생성되는 것을 특징으로 하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법.
  3. 제1항에 있어서,
    상기 가중치별 룩업 테이블을 갱신하는 단계는,
    상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블의 빈 저장공간에 저장하고, 상기 이미지 특징값 및 상기 산출된 곱셈결과값에 매핑되는 유효 여부값이 유효함을 나타내도록 설정하는 것을 특징으로 하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법.
  4. 제1항에 있어서,
    상기 가중치별 룩업 테이블을 갱신하는 단계는,
    상기 가중치별 룩업 테이블에 빈 저장공간이 없는 경우, 상기 이미지의 특징값과 상기 룩업 테이블의 특징값의 비트(Bit) 비교를 통해 유사도가 가장 높은 룩업 테이블의 특징값을 탐색하고, 상기 유사도가 가장 높은 룩업 테이블의 특징값, 매핑된 곱셈결과값 및 유효 여부값을 삭제하고, 삭제하여 생성된 빈 저장공간에 상기 산출된 곱셈결과값, 매핑된 이미지의 특징값 및 유효 여부값을 저장하는 것을 특징으로 하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법.
  5. 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치에 있어서,
    명령어를 저장하는 메모리; 및
    상기 명령어를 실행하는 프로세서를 포함하되,
    상기 명령어는,
    커널(Kernel)의 가중치(Weight)별 룩업 테이블(LUT: Look Up Table)을 생성하는 단계;
    이미지를 입력받는 단계;
    상기 가중치별 룩업 테이블에서 상기 이미지의 특징값이 존재하는지를 탐색하는 단계;
    상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하는 경우, 상기 가중치별 룩업 테이블에서 상기 이미지의 특징값에 매핑(Mapping)된 곱셈결과값을 상기 이미지와 상기 커널의 컨볼루션 연산에 적용하는 단계;
    상기 가중치별 룩업 테이블에 상기 이미지의 특징값이 존재하지 않는 경우, 상기 이미지의 특징값과 상기 가중치의 곱셈을 수행하여 곱셈결과값을 산출하는 단계; 및
    상기 산출된 곱셈결과값을 상기 이미지의 특징값에 매핑하여 상기 가중치별 룩업 테이블에 추가로 저장하여 상기 가중치별 룩업 테이블을 갱신하는 단계를 포함하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 방법을 수행하는 것을 특징으로 하는 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치.

KR1020210110292A 2021-08-20 2021-08-20 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법 KR20230027949A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210110292A KR20230027949A (ko) 2021-08-20 2021-08-20 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210110292A KR20230027949A (ko) 2021-08-20 2021-08-20 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20230027949A true KR20230027949A (ko) 2023-02-28

Family

ID=85326275

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210110292A KR20230027949A (ko) 2021-08-20 2021-08-20 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20230027949A (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102061408B1 (ko) 2017-03-24 2019-12-31 (주)제이엘케이인스펙션 가상 3차원 심층 신경망을 이용하는 영상 분석 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102061408B1 (ko) 2017-03-24 2019-12-31 (주)제이엘케이인스펙션 가상 3차원 심층 신경망을 이용하는 영상 분석 장치 및 방법

Similar Documents

Publication Publication Date Title
US20190114742A1 (en) Image upscaling with controllable noise reduction using a neural network
Kneip et al. Curve registration by local regression
US6138269A (en) Determining the actual class of an object at run time
KR102061923B1 (ko) 입력 이미지의 계층적 초해상을 수행하는 방법 및 장치
US10417821B2 (en) Method of simplifying a geometry model
US7636715B2 (en) Method for fast large scale data mining using logistic regression
JP5116770B2 (ja) フォールディングを用いるモジュール削減
Clausi et al. Rapid extraction of image texture by co-occurrence using a hybrid data structure
EP1465114A2 (en) Progressive scale graph
EP0969375A2 (en) Method for visualizing locality within an address space
AU5528796A (en) Method and system for representing a data set with a data transforming function and data mask
JP2008310524A (ja) 演算処理装置及びその制御方法
JP4537771B2 (ja) データベースのサイズを変更するための方法、コンピュータ可読媒体およびシステム
US10817474B2 (en) Adaptive rate compression hash processor
JP6778586B2 (ja) 画像内の回転したテーブルの補正方法
JPH06124314A (ja) コンピュータ支援設計システムおよびそのシステムにおける幾何学的対象を修正する方法
Soares Jr An adaptive semi-explicit/explicit time marching technique for nonlinear dynamics
JP2008142137A (ja) データ処理装置、データ処理方法、およびプログラム
KR20230027949A (ko) 초고해상도 컨볼루션 신경망 시스템의 연산량 감소 장치 및 방법
US20170293661A1 (en) Bucket skiplists
GB2496393A (en) Method and device for generating a super-resolution image
JP4741802B2 (ja) 分子軌道法計算方法および計算装置
KR102326206B1 (ko) 스케일 변동에 강건한 컨볼루셔널 뉴럴 네트워크를 위한 피처맵을 생성하는 방법 및 이를 이용한 컴퓨팅 장치
JP5950288B2 (ja) プログラミング言語の処理系を実現する装置及び方法
CN116745757A (zh) 替换表