KR102183305B1 - 신경망 피처 벡터 결정 장치 및 방법 - Google Patents

신경망 피처 벡터 결정 장치 및 방법 Download PDF

Info

Publication number
KR102183305B1
KR102183305B1 KR1020180090946A KR20180090946A KR102183305B1 KR 102183305 B1 KR102183305 B1 KR 102183305B1 KR 1020180090946 A KR1020180090946 A KR 1020180090946A KR 20180090946 A KR20180090946 A KR 20180090946A KR 102183305 B1 KR102183305 B1 KR 102183305B1
Authority
KR
South Korea
Prior art keywords
feature
feature vector
determining
input
neural network
Prior art date
Application number
KR1020180090946A
Other languages
English (en)
Other versions
KR20200015300A (ko
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 KR1020180090946A priority Critical patent/KR102183305B1/ko
Publication of KR20200015300A publication Critical patent/KR20200015300A/ko
Application granted granted Critical
Publication of KR102183305B1 publication Critical patent/KR102183305B1/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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명은 신경망 피처 벡터 결정 장치 및 방법에 관한 것으로, 컨텐츠를 분석하여 복수의 입력 어레이들을 생성하는 입력 어레이 생성부, 상기 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정하는 피처 요소 결정부 및 상기 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신하는 피처 벡터 생성부를 포함한다. 따라서, 본 발명은 컨텐츠의 내용을 반영하여 신경망 학습에 사용되는 피처 벡터를 생성할 수 있다.

Description

신경망 피처 벡터 결정 장치 및 방법{APPARATUS AND METHOD FOR DETERMINING NEURAL NETWORK FEATURE VECTOR}
본 발명은 신경망 피처 벡터 결정 기술에 관한 것으로, 보다 상세하게는 컨텐츠의 내용을 반영하여 신경망 학습에 사용되는 피처 벡터를 생성할 수 있는 신경망 피처 벡터 결정 장치 및 방법에 관한 것이다.
해시 함수(hash function)는 임의의 길이의 데이터를 고정된 길이의 데이터로 매핑하는 함수이다. 해시 함수는 해시 테이블이라는 자료구조에 사용될 수 있고, 매우 빠른 데이터 검색을 위한 컴퓨터 소프트웨어에 널리 사용될 수 있다. 해시 함수는 큰 파일에서 중복되는 레코드를 찾을 수 있기 때문에 데이터베이스 검색이나 테이블 검색의 속도를 가속할 수 있다.
피처 벡터(feature vector)는 분석 대상이 되는 컨텐츠의 특징 정보를 포함하는 차원을 가진 벡터에 해당할 수 있다. 컨텐츠에 따라 피처 벡터를 정의할 수 있고, 피처 벡터를 생성하는 알고리즘이 달라질 수 있다. 일반적으로, 해시 함수를 이용하여 생성된 피처 벡터는 내용의 출현빈도(frequency)를 기초로 하기 때문에 본질적인 특징 정보가 손실되는 문제점을 가지고 있다.
한국등록특허 제10-0729107(2007.06.08)호
본 발명의 일 실시예는 컨텐츠의 내용을 반영하여 신경망 학습에 사용되는 피처 벡터를 생성할 수 있는 신경망 피처 벡터 결정 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 서로 다른 제1 및 제2 특징 함수들을 적용하여 산출된 제1 및 제2 피처 요소들 중에서 더 큰 값을 결정하여 피처 벡터를 생성할 수 있는 신경망 피처 벡터 결정 장치 및 방법을 제공하고자 한다.
본 발명의 일 실시예는 경계 상수를 통해 특정 범위 값을 가지는 제2 피처 요소를 피처 벡터 생성에 활용함으로써 피처 벡터에 내용 기반의 특징 정보를 반영할 수 있는 신경망 피처 벡터 결정 장치 및 방법을 제공하고자 한다.
실시예들 중에서, 신경망 피처 벡터 결정 장치는 컨텐츠를 분석하여 복수의 입력 어레이들을 생성하는 입력 어레이 생성부, 상기 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정하는 피처 요소 결정부 및 상기 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신하는 피처 벡터 생성부를 포함한다.
상기 입력 어레이 생성부는 상기 컨텐츠를 구성하는 메타데이터, 텍스트, 영상 및 사운드 중 적어도 하나를 기초로 상기 복수의 입력 어레이들을 생성할 수 있다.
상기 피처 요소 결정부는 입력 어레이에 상기 제1 특징 함수를 적용하여 피처 인덱스를 결정하고 상기 피처 인덱스와 연관된 제1 피처 요소를 결정할 수 있다.
상기 피처 요소 결정부는 상기 입력 어레이에 상기 제1 특징 함수를 적용하여 n차원(상기 n은 2이상인 자연수) 피처 인덱스를 결정할 수 있다.
상기 피처 요소 결정부는 입력 어레이에 상기 제2 특징 함수를 적용하여 특정 범위를 갖는 상기 제2 피처 요소를 결정할 수 있다.
상기 피처 요소 결정부는 상기 입력 어레이에 해시 함수를 적용하여 해시값을 산출하고 상기 해시값에 대해 특정 경계 상수를 기초로 모드 연산을 수행하여 상기 제2 피처 요소를 결정할 수 있다.
상기 피처 벡터 생성부는 맥스 풀링(max pooling)을 통해 상기 제1 및 제2 피처 요소들 중 하나를 상기 최종 피처 요소로 결정할 수 있다.
상기 피처 벡터 생성부는 상기 최종 피처 요소를 상기 피처 인덱스와 연관시켜 상기 피처 벡터를 갱신할 수 있다.
실시예들 중에서, 신경망 피처 벡터 결정 방법은 컨텐츠를 분석하여 복수의 입력 어레이들을 생성하는 단계, 상기 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정하는 단계 및 상기 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신하는 단계를 포함한다.
개시된 기술은 다음의 효과를 가질 수 있다. 다만, 특정 실시예가 다음의 효과를 전부 포함하여야 한다거나 다음의 효과만을 포함하여야 한다는 의미는 아니므로, 개시된 기술의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치 및 방법은 서로 다른 제1 및 제2 특징 함수들을 적용하여 산출된 제1 및 제2 피처 요소들 중에서 더 큰 값을 결정하여 피처 벡터를 생성할 수 있다.
본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치 및 방법은 경계 상수를 통해 특정 범위 값을 가지는 제2 피처 요소를 피처 벡터 생성에 활용함으로써 피처 벡터에 내용 기반의 특징 정보를 반영할 수 있다.
도 1은 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치의 기본 구성을 설명하는 도면이다.
도 2는 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치를 설명하는 블록도이다.
도 3은 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치에서 수행되는 신경망 피처 벡터 결정 과정을 설명하는 순서도이다.
도 4는 피처 벡터 생성 과정의 일 실시예를 설명하는 예시도이다.
도 5는 신경망 피처 벡터 결정 장치에서 피처 벡터를 생성하는 과정의 일 실시예를 설명하는 예시도이다.
도 6은 신경망 피처 벡터 결정 장치에서 피처 벡터를 생성하는 과정의 다른 실시예를 설명하는 예시도이다.
본 발명에 관한 설명은 구조적 내지 기능적 설명을 위한 실시예에 불과하므로, 본 발명의 권리범위는 본문에 설명된 실시예에 의하여 제한되는 것으로 해석되어서는 아니 된다. 즉, 실시예는 다양한 변경이 가능하고 여러 가지 형태를 가질 수 있으므로 본 발명의 권리범위는 기술적 사상을 실현할 수 있는 균등물들을 포함하는 것으로 이해되어야 한다. 또한, 본 발명에서 제시된 목적 또는 효과는 특정 실시예가 이를 전부 포함하여야 한다거나 그러한 효과만을 포함하여야 한다는 의미는 아니므로, 본 발명의 권리범위는 이에 의하여 제한되는 것으로 이해되어서는 아니 될 것이다.
한편, 본 출원에서 서술되는 용어의 의미는 다음과 같이 이해되어야 할 것이다.
"제1", "제2" 등의 용어는 하나의 구성요소를 다른 구성요소로부터 구별하기 위한 것으로, 이들 용어들에 의해 권리범위가 한정되어서는 아니 된다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어"있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결될 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어"있다고 언급된 때에는 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다. 한편, 구성요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한 복수의 표현을 포함하는 것으로 이해되어야 하고, "포함하다"또는 "가지다" 등의 용어는 실시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
각 단계들에 있어 식별부호(예를 들어, a, b, c 등)는 설명의 편의를 위하여 사용되는 것으로 식별부호는 각 단계들의 순서를 설명하는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 일어날 수 있다. 즉, 각 단계들은 명기된 순서와 동일하게 일어날 수도 있고 실질적으로 동시에 수행될 수도 있으며 반대의 순서대로 수행될 수도 있다.
본 발명은 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있고, 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장 장치 등이 있다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
여기서 사용되는 모든 용어들은 다르게 정의되지 않는 한, 본 발명이 속하는 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한 이상적이거나 과도하게 형식적인 의미를 지니는 것으로 해석될 수 없다.
도 1은 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치의 기본 구성을 설명하는 도면이다.
도 1을 참조하면, 신경망 피처 벡터 결정 장치(100)는 프로세서(110), 메모리(130), 사용자 입출력부(150) 및 네트워크 입출력부(170)를 포함할 수 있다.
신경망 피처 벡터 결정 장치(100)는 특정 컨텐츠를 기초로 해시 함수를 적용하여 피처 벡터를 생성할 수 있는 컴퓨터 또는 프로그램에 해당하는 서버로 구현될 수 있다. 신경망 피처 벡터 결정 장치(100)는 생성된 피처 벡터를 학습 데이터로 사용하여 신경망 학습을 수행할 수 있다. 일 실시예에서, 신경망 피처 벡터 결정 장치(100)는 신경망 학습 시스템에 포함되어 구현될 수 있고, 신경망 학습을 위한 전처리 단계에서 학습 데이터를 생성하는 역할을 수행할 수 있다.
프로세서(110)는 특정 컨텐츠를 분석하여 입력 어레이를 생성한 후 해시 함수를 적용하여 피처 벡터를 생성하기 위한 각 프로시저를 실행할 수 있고, 그 과정 전반에서 읽혀지거나 작성되는 메모리(130)를 관리할 수 있으며, 메모리(130)에 있는 휘발성 메모리와 비휘발성 메모리 간의 동기화 시간을 스케줄할 수 있다. 프로세서(110)는 신경망 피처 벡터 결정 장치(100)의 동작 전반을 제어할 수 있고, 메모리(130), 사용자 입출력부(150) 및 네트워크 입출력부(170)와 전기적으로 연결되어 이들 간의 데이터 흐름을 제어할 수 있다. 프로세서(110)는 신경망 피처 벡터 결정 장치(100)의 CPU(Central Processing Unit)로 구현될 수 있다.
메모리(130)는 SSD(Solid State Disk) 또는 HDD(Hard Disk Drive)와 같은 비휘발성 메모리로 구현되어 신경망 피처 벡터 결정 장치(100)에 필요한 데이터 전반을 저장하는데 사용되는 보조기억장치를 포함할 수 있고, RAM(Random Access Memory)과 같은 휘발성 메모리로 구현된 주기억장치를 포함할 수 있다.
사용자 입출력부(150)는 사용자 입력을 수신하기 위한 환경 및 사용자에게 특정 정보를 출력하기 위한 환경을 포함할 수 있다. 예를 들어, 사용자 입출력부(150)는 터치 패드, 터치 스크린, 화상 키보드 또는 포인팅 장치와 같은 어댑터를 포함하는 입력장치 및 모니터 또는 터치스크린과 같은 어댑터를 포함하는 출력장치를 포함할 수 있다. 일 실시예에서, 사용자 입출력부(150)는 원격 접속을 통해 접속되는 컴퓨팅 장치에 해당할 수 있고, 그러한 경우, 신경망 피처 벡터 결정 장치(100)는 서버로서 수행될 수 있다.
네트워크 입출력부(170)은 네트워크를 통해 외부 장치 또는 시스템과 연결하기 위한 환경을 포함하고, 예를 들어, LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network) 및 VAN(Value Added Network) 등의 통신을 위한 어댑터를 포함할 수 있다.
도 2는 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치를 설명하는 블록도이다.
신경망 피처 벡터 결정 장치(100)는 입력 어레이 생성부(210), 피처 요소 결정부(230), 피처 벡터 생성부(250) 및 제어부(270)를 포함할 수 있다.
입력 어레이 생성부(210)는 컨텐츠를 분석하여 복수의 입력 어레이들을 생성할 수 있다. 여기에서, 입력 어레이는 해시 함수의 입력으로 사용되고 컨텐츠를 구성하는 일 구성요소에 해당할 수 있다. 입력 어레이 생성부(210)는 컨텐츠로부터 피처 벡터를 생성하는 과정에서 해시 함수의 입력으로 사용될 입력 어레이를 추출할 수 있고 복수의 입력 어레이들을 리스트 형태로 구성할 수 있다. 예를 들어, 컨텐츠가 문서에 해당하는 경우 입력 어레이 생성부(210)는 문서를 구성하는 단어들 중에서 문서 분석에 영향을 줄 수 있는 중요 단어들을 선별할 수 있고 선별된 중요 단어들을 배열로 구성하여 해시 함수의 입력으로 사용할 수 있다.
일 실시예에서, 입력 어레이 생성부(210)는 컨텐츠를 구성하는 메타데이터, 텍스트, 영상 및 사운드 중 적어도 하나를 기초로 복수의 입력 어레이들을 생성할 수 있다. 컨텐츠는 문서, 동영상, 음악 등 다양한 형태로 구현될 수 있고, 입력 어레이 생성부(210)는 각 컨텐츠의 종류에 따라 컨텐츠의 메타데이터 만을 이용하여 복수의 입력 어레이들을 생성하거나 또는 컨텐츠의 텍스트 만을 이용하여 복수의 입력 어레이들을 생성할 수 있다. 신경망 피처 벡터 결정 장치(100)는 분석된 컨텐츠의 유형에 따라 해시 함수를 결정하여 피처 벡터 생성에 사용함으로써 컨텐츠의 유형에 상관없이 일정한 형식의 피처 벡터를 생성할 수 있다.
피처 요소 결정부(230)는 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정할 수 있다. 특징 함수는 피처 벡터를 생성하기 위하여 사용하는 함수에 해당할 수 있고 하나의 함수로 구성되거나 또는 복수의 함수들의 조합으로 구현될 수 있다. 예를 들어, 특징 함수는 하나의 해시 함수와 하나의 모드 연산으로 구성될 수 있고 해시 함수를 통해 산출된 해시값에 모드 연산을 적용하도록 특정 순서에 따라 구현될 수 있다. 피처 요소 결정부(230)는 하나의 입력 어레이에 제1 특징 함수를 적용하여 제1 피처 요소를 결정할 수 있고, 동일한 입력 어레이에 제2 특징 함수를 적용하여 제2 피처 요소를 결정할 수 있다.
일 실시예에서, 피처 요소 결정부(230)는 입력 어레이에 제1 특징 함수를 적용하여 피처 인덱스를 결정하고 피처 인덱스와 연관된 제1 피처 요소를 결정할 수 있다. 피처 인덱스는 피처 벡터의 특정 위치 정보에 해당할 수 있고, 예를 들어, 피처 벡터가 배열로 표현된 경우 피처 인덱스는 배열의 인덱스에 해당할 수 있다. 피처 요소 결정부(230)는 입력 어레이에 제1 특징 함수로서 해시 함수를 적용할 수 있고 해시 함수를 통해 산출된 해시값에 모드 연산을 적용하여 피처 벡터의 피처 인덱스를 결정할 수 있다.
이 경우 모드 연산에 사용하는 상수는 피처 벡터의 차원 수에 대응될 수 있다. 피처 벡터의 차원 수는 피처 벡터를 구성하는 구성 성분의 수에 해당하고, 예를 들어, 피처 벡터가 배열로 표현되고 배열의 크기가 k인 경우 피처 벡터의 차원 수는 k에 해당할 수 있다. 또한, 피처 벡터의 차원 수는 피처 벡터의 크기에 해당할 수 있다. 피처 요소 결정부(230)는 피처 인덱스 위치에 저장된 피처 벡터의 구성 성분 값을 제1 피처 요소로서 결정할 수 있다.
일 실시예에서, 피처 요소 결정부(230)는 입력 어레이에 제1 특징 함수를 적용하여 n차원(상기 n은 2이상인 자연수) 피처 인덱스를 결정할 수 있다. 피처 인덱스는 피처 벡터의 특정 위치 정보로서 피처 벡터의 구조에 따라 다차원 값을 가질 수 있다. 예를 들어, 피처 벡터가 배열로 표현되고 2차원 배열의 구조에 해당하는 경우 피처 인덱스는 2차원 형태의 값으로 표현될 수 있고 2차원 배열의 특정 위치와 대응될 수 있다. 피처 요소 결정부(230)는 피처 벡터의 모든 위치와 대응되는 피처 인덱스를 출력으로 제공할 수 있는 제1 특징 함수를 구성하여 적용할 수 있다.
일 실시예에서, 피처 요소 결정부(230)는 입력 어레이에 제2 특징 함수를 적용하여 특정 범위를 갖는 제2 피처 요소를 결정할 수 있다. 제2 특징 함수는 제1 특징 함수와 같이 해시 함수와 모드 연산으로 구성될 수 있다. 제2 특징 함수는 제1 특징 함수를 구성하는 해시 함수와 서로 다른 해시 함수로 구성될 수 있다. 보다 구체적으로, 피처 요소 결정부(230)는 입력 어레이에 대해 해시 함수와 모드 연산으로 구성된 제2 특징 함수를 적용할 수 있고 제2 특징 함수에 의해 산출되는 제2 피처 요소는 특정 범위 내의 값에 해당할 수 있다.
일 실시예에서, 피처 요소 결정부(230)는 입력 어레이에 해시 함수를 적용하여 해시값을 산출하고 해시값에 대해 특정 경계 상수를 기초로 모드 연산을 수행하여 제2 피처 요소를 결정할 수 있다. 특정 경계 상수는 제2 피처 요소에 해당하는 값의 범위를 결정하는 상수에 해당할 수 있다. 예를 들어, 피처 요소 결정부(230)는 특정 경계 상수 B를 모드 연산에 사용하여 0 부터 B-1 사이의 값을 가지는 제2 피처 요소를 결정할 수 있다. 피처 요소 결정부(230)는 특정 경계 상수를 조절하여 제2 피처 요소의 범위를 결정할 수 있다.
피처 벡터 생성부(250)는 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신할 수 있다. 피처 벡터 생성부(250)는 제1 피처 요소를 선택한 경우 피처 벡터를 그대로 유지할 수 있고, 제2 피처 요소를 선택한 경우 제1 피처 요소가 저장된 위치에 제1 피처 요소 대신에 제2 피처 요소를 덮어씀으로써 피처 벡터를 갱신할 수 있다.
일 실시예에서, 피처 벡터 생성부(250)는 맥스 풀링(max pooling)을 통해 제1 및 제2 피처 요소들 중 하나를 최종 피처 요소로 결정할 수 있다. 여기에서, 맥스 풀링(max pooling)은 비교 대상 값들 중에서 최대값을 선택하는 방법에 해당할 수 있다. 피처 벡터 생성부(250)는 맥스 풀링을 통해 제1 및 제2 피처 요소들 중 더 큰 값을 선택하여 최종 피처 요소로 결정할 수 있다. 신경망 피처 벡터 결정 장치(100)는 피처 벡터 생성부(250)를 통해 피쳐의 빈도수 정보가 아닌 피처의 본질적인 정보를 기초로 피처 벡터를 생성하여 신경망의 입력 데이터로 활용할 수 있다.
일 실시예에서, 피처 벡터 생성부(250)는 맥스 풀링(max pooling)을 통해 제1 및 제2 피처 요소들 중 하나를 최종 피처 요소로 결정할 수 있고, 동일한 입력 어레이에 제3 특징 함수를 적용한 값을 기초로 최종 피처 요소의 값을 1 증가시키거나 또는 1 감소시킬 수 있다. 이 경우, 제3 특징 함수는 결과로서 0 또는 1을 제공할 수 있는 결정 함수 g(도 4 참조)에 해당할 수 있다.
일 실시예에서, 피처 벡터 생성부(250)는 최종 피처 요소를 피처 인덱스와 연관시켜 피처 벡터를 갱신할 수 있다. 피처 벡터 생성부(250)는 최종 피처 요소를 결정한 다음 제1 피처 요소와 연관된 피처 인덱스의 위치에 해당 최종 피처 요소를 저장하여 피처 벡터를 갱신할 수 있다. 따라서, 피처 벡터 생성부(250)는 최종 피처 요소로서 제1 피처 요소가 결정된 경우에는 피처 벡터를 그대로 유지할 수 있고, 최종 피처 요소로서 제2 피처 요소가 결정된 경우에만 피처 벡터를 갱신할 수 있다. 피처 벡터 생성부(250)는 입력 어레이 생성부(210)에 의해 생성된 복수의 입력 어레이들 모두에 대해 최종 피처 요소를 선택하고 피처 벡터를 갱신하는 과정을 반복 수행하여 최종적인 피처 벡터를 생성할 수 있다.
제어부(270)는 신경망 피처 벡터 결정 장치(100)의 전체적인 동작을 제어하고, 입력 어레이 생성부(210), 피처 요소 결정부(230) 및 피처 벡터 생성부(250) 간의 제어 흐름 또는 데이터 흐름을 관리할 수 있다.
도 3은 본 발명의 일 실시예에 따른 신경망 피처 벡터 결정 장치에서 수행되는 신경망 피처 벡터 결정 과정을 설명하는 순서도이다.
도 3을 참조하면, 신경망 피처 벡터 결정 장치(100)는 입력 어레이 생성부(210)를 통해 컨텐츠를 분석하여 복수의 입력 어레이들을 생성할 수 있다(단계 S310). 신경망 피처 벡터 결정 장치(100)는 피처 요소 결정부(230)를 통해 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정할 수 있다(단계 S330). 신경망 피처 벡터 결정 장치(100)는 피처 벡터 생성부(250)를 통해 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신할 수 있다(단계 S550).
도 4는 피처 벡터 생성 과정의 일 실시예를 설명하는 예시도이다.
도 4를 참조하면, 피처 벡터의 일반적인 생성 과정은 문자열 배열 F의 각 원소에 대해 해시 함수 H를 적용하여 피처 벡터 V의 인덱스를 결정하고 동일한 원소에 결정 함수 g를 적용하여 해당 인덱스의 값에 1을 더하거나 또는 1을 빼는 연산을 통해 피처 벡터를 갱신하는 과정을 포함할 수 있다. 최종적인 피처 벡터 V는 입력 배열인 문자열 배열 F의 모든 원소에 대해 상기 과정을 반복 수행한 결과로서 생성될 수 있다.
피처 벡터의 일반적인 생성 과정은 다음과 같이 표현될 수 있다.
Figure 112018077093829-pat00001
여기에서, V는 피처 벡터, F는 문자열 배열, n은 피처 벡터 V의 크기, H는 해시 함수, g는 결정 함수에 해당할 수 있다. 또한, 결정 함수 g의 출력값은 0 또는 1에 해당할 수 있다.
도 5는 신경망 피처 벡터 결정 장치에서 피처 벡터를 생성하는 과정의 일 실시예를 설명하는 예시도이다.
도 5를 참조하면, 신경망 피처 벡터 결정 장치(100)는 문자열 배열 F의 각 원소에 대해 제1 특징 함수를 적용하여 제1 피처 요소를 결정할 수 있다. 이 때, 제1 특징 함수는 해시 함수 H를 적용한 후 상수 n으로 모드 연산을 수행하는 것에 해당할 수 있다. 신경망 피처 벡터 결정 장치(100)는 제1 특징 함수를 통해 산출된 피처 인덱스를 기초로 피처 벡터 V에서 피처 인덱스에 해당하는 값을 제1 피처 요소로 결정할 수 있다.
또한, 신경망 피처 벡터 결정 장치(100)는 동일한 원소에 대해 제2 특징 함수를 적용하여 제2 피처 요소를 결정할 수 있다. 이 때, 제2 특징 함수는 해시 함수 H와 다른 해시 함수 G를 적용한 후 경계 상수 B로 모드 연산을 수행하는 것에 해당할 수 있다. 따라서, 제2 특징 함수를 통해 결정되는 제2 피처 요소는 0부터 B-1까지의 범위 내에 존재하는 값에 해당할 수 있다. 신경망 피처 벡터 결정 장치(100)는 제2 특징 함수를 통해 산출된 제2 피처 요소와 제1 특징 함수를 통해 결정된 제1 피처 요소 중 더 큰 값을 최종 피처 요소로 결정할 수 있고 최종 피처 요소를 반영하여 피처 벡터 V를 갱신할 수 있다.
신경망 피처 벡터 결정 장치에서 피처 벡터를 생성하는 과정은 다음과 같이 표현될 수 있다.
Figure 112018077093829-pat00002
여기에서, V는 피처 벡터, F는 문자열 배열, n은 피처 벡터 V의 크기, H는 해시 함수, G는 결정 함수, B는 경계 상수에 해당할 수 있다. 또한, 결정 함수 B는 해시 함수로서 해시 함수 H와 서로 다를 수 있다.
도 6은 신경망 피처 벡터 결정 장치에서 피처 벡터를 생성하는 과정의 다른 실시예를 설명하는 예시도이다.
도 6을 참조하면, 신경망 피처 벡터 결정 장치(100)는 m개의 n차원 부분 벡터들로 구성된 피처 벡터 V를 생성할 수 있다. 신경망 피처 벡터 결정 장치(100)는 피처 요소 결정부(230)를 통해 입력 어레이인 문자열 배열 F의 각 원소에 제1 특징 함수를 적용하여 2차원 피처 인덱스를 결정할 수 있다. 피처 인덱스는 피처 벡터의 특정 위치 정보로서 피처 벡터의 구조에 따라 다차원 값을 가질 수 있다.
도 6에서, 피처 벡터 V가 n차원 부분 벡터 3개로 구성된 경우 n * m 행렬로 표현될 수 있고, 피처 인덱스는 2차원 형태의 값 (3, 0)으로 표현될 수 있고 n * m 행렬의 3행 0열에 해당하는 위치와 대응될 수 있다. 피처 요소 결정부(230)는 피처 벡터의 모든 위치와 대응되는 피처 인덱스를 출력으로 제공할 수 있는 제1 특징 함수를 구성하여 적용할 수 있다. 피처 요소 결정부(230)는 제1 특징 함수를 통해 n*m 개의 서로 다른 인덱스 값을 출력할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
100: 신경망 피처 벡터 결정 장치
110: 프로세서 130: 메모리
150: 사용자 입출력부 170: 네트워크 입출력부
210: 입력 어레이 생성부 230: 피처 요소 결정부
250: 피처 벡터 생성부 270: 제어부

Claims (9)

  1. 컨텐츠를 분석하여 복수의 입력 어레이들을 생성하는 입력 어레이 생성부;
    상기 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정하는 피처 요소 결정부; 및
    상기 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신하는 피처 벡터 생성부를 포함하되,
    상기 피처 요소 결정부는 입력 어레이에 상기 제1 특징 함수를 적용하여 피처 인덱스를 결정하고 상기 피처 벡터에서 해당 피처 인덱스에 대응되는 구성 성분 값을 상기 제1 피처 요소로 결정하며 상기 입력 어레이에 상기 제2 특징 함수를 적용하여 특정 범위를 갖고 상기 구성 성분 값을 대체 가능한 제2 피처 요소를 결정하고,
    상기 피처 벡터 생성부는 맥스 풀링(max pooling)을 통해 상기 제1 및 제2 피처 요소들 중 더 큰 값을 상기 최종 피처 요소로 결정하는 것을 특징으로 하는 신경망 피처 벡터 결정 장치.
  2. 제1항에 있어서, 상기 입력 어레이 생성부는
    상기 컨텐츠를 구성하는 메타데이터, 텍스트, 영상 및 사운드 중 적어도 하나를 기초로 상기 복수의 입력 어레이들을 생성하는 것을 특징으로 하는 신경망 피처 벡터 결정 장치.
  3. 삭제
  4. 제1항에 있어서, 상기 피처 요소 결정부는
    상기 입력 어레이에 상기 제1 특징 함수를 적용하여 n차원(상기 n은 2이상인 자연수) 피처 인덱스를 결정하는 것을 특징으로 하는 신경망 피처 벡터 결정 장치.
  5. 삭제
  6. 제1항에 있어서, 상기 피처 요소 결정부는
    상기 입력 어레이에 해시 함수를 적용하여 해시값을 산출하고 상기 해시값에 대해 특정 경계 상수를 기초로 모드 연산을 수행하여 상기 제2 피처 요소를 결정하는 것을 특징으로 하는 신경망 피처 벡터 결정 장치.
  7. 삭제
  8. 제1항에 있어서, 상기 피처 벡터 생성부는
    상기 최종 피처 요소를 상기 피처 인덱스와 연관시켜 상기 피처 벡터를 갱신하는 것을 특징으로 하는 신경망 피처 벡터 결정 장치.
  9. 신경망 피처 벡터 결정 장치에서 수행되는 신경망 피처 벡터 결정 방법에 있어서,
    컨텐츠를 분석하여 복수의 입력 어레이들을 생성하는 단계;
    상기 복수의 입력 어레이들 각각에 관해 제1 및 제2 특징 함수들을 적용하여 제1 및 제2 피처 요소들을 결정하는 단계; 및
    상기 제1 및 제2 피처 요소들 중 하나를 결정하여 최종 피처 요소로 피처 벡터를 갱신하는 단계를 포함하되,
    상기 피처 요소들을 결정하는 단계는 입력 어레이에 상기 제1 특징 함수를 적용하여 피처 인덱스를 결정하고 상기 피처 벡터에서 해당 피처 인덱스에 대응되는 구성 성분 값을 상기 제1 피처 요소로 결정하며 상기 입력 어레이에 상기 제2 특징 함수를 적용하여 특정 범위를 갖고 상기 구성 성분 값을 대체 가능한 제2 피처 요소를 결정하는 단계를 포함하고,
    상기 피처 벡터를 갱신하는 단계는 맥스 풀링(max pooling)을 통해 상기 제1 및 제2 피처 요소들 중 더 큰 값을 상기 최종 피처 요소로 결정하는 단계를 포함하는 것을 특징으로 하는 신경망 피처 벡터 결정 방법.
KR1020180090946A 2018-08-03 2018-08-03 신경망 피처 벡터 결정 장치 및 방법 KR102183305B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020180090946A KR102183305B1 (ko) 2018-08-03 2018-08-03 신경망 피처 벡터 결정 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180090946A KR102183305B1 (ko) 2018-08-03 2018-08-03 신경망 피처 벡터 결정 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20200015300A KR20200015300A (ko) 2020-02-12
KR102183305B1 true KR102183305B1 (ko) 2020-11-26

Family

ID=69569781

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180090946A KR102183305B1 (ko) 2018-08-03 2018-08-03 신경망 피처 벡터 결정 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102183305B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113743575B (zh) * 2020-05-29 2024-05-07 精工爱普生株式会社 数据获取方法和装置、相似度计算方法和装置及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013068884A (ja) * 2011-09-26 2013-04-18 Nippon Telegr & Teleph Corp <Ntt> ハッシュ関数生成方法、ハッシュ値演算方法、ハッシュ関数生成装置、ハッシュ値演算装置、ハッシュ関数生成プログラム及びハッシュ値演算プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100729107B1 (ko) 2005-10-27 2007-06-14 한국전력공사 부분방전 원인 자동 추론용 신경망 회로의 입력벡터생성방법
KR20120052610A (ko) * 2010-11-16 2012-05-24 삼성전자주식회사 신경망 학습을 통한 동작 인식 방법 및 장치
CA2941352C (en) * 2014-03-06 2022-09-20 Progress, Inc. Neural network and method of neural network training
KR101899101B1 (ko) * 2016-06-01 2018-09-14 서울대학교 산학협력단 인공 신경망 기반 예측 모델 생성 장치 및 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013068884A (ja) * 2011-09-26 2013-04-18 Nippon Telegr & Teleph Corp <Ntt> ハッシュ関数生成方法、ハッシュ値演算方法、ハッシュ関数生成装置、ハッシュ値演算装置、ハッシュ関数生成プログラム及びハッシュ値演算プログラム

Also Published As

Publication number Publication date
KR20200015300A (ko) 2020-02-12

Similar Documents

Publication Publication Date Title
US11194780B2 (en) Early exit from table scans of loosely ordered and/or grouped relations using nearly ordered maps
Middlehurst et al. HIVE-COTE 2.0: a new meta ensemble for time series classification
JP4295062B2 (ja) 反復マッチングを利用した画像検索方法及び装置
JP2017220222A (ja) データグラフを比較する方法、プログラム、及び装置
WO2020064988A1 (en) Scalable and compressive neural network data storage system
WO2015151162A1 (ja) 類似度算出システム、類似度算出方法およびプログラム
US10838944B2 (en) System and method for maintaining a multi-level data structure
JP7014086B2 (ja) 解析装置、解析方法及びプログラム
US20200175022A1 (en) Data retrieval
JP6329778B2 (ja) ストレージシステム、インデクシング方法、インデクシングプログラム
KR102183305B1 (ko) 신경망 피처 벡터 결정 장치 및 방법
KR20210022503A (ko) 연관 유사성 검색을 통한 데이터의 중복 제거
CN116108752A (zh) 模型压缩方法、装置、电子设备和存储介质
KR20210035987A (ko) 자카드 모델 기반의 문서 검색 장치 및 방법
KR20200057832A (ko) 기초 메타학습장치에 대한 앙상블가중치를 결정하는 방법 및 장치
KR102289411B1 (ko) 가중치 기반의 피처 벡터 생성 장치 및 방법
KR102172321B1 (ko) 데이터 중복 제거 방법
JP6327918B2 (ja) 画像検索装置及びその制御方法
KR102389555B1 (ko) 가중 트리플 지식 그래프를 생성하는 장치, 방법 및 컴퓨터 프로그램
JP6336827B2 (ja) 画像検索装置、画像検索方法および検索システム
KR102452777B1 (ko) 정보 처리 장치, 정보 처리 방법, 및 기록 매체
US20230384917A1 (en) Zoom action based image presentation
CN118133044A (zh) 问题扩展方法、装置、计算机设备、存储介质和产品
CN118551097A (zh) 搜索信息提示方法、装置、计算机设备和存储介质
CN118295664A (zh) 代码生成方法、装置、计算机设备、存储介质和产品

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right