KR20210026982A - Method and apparatus for recognizing user based on on-device training - Google Patents
Method and apparatus for recognizing user based on on-device training Download PDFInfo
- Publication number
- KR20210026982A KR20210026982A KR1020190127239A KR20190127239A KR20210026982A KR 20210026982 A KR20210026982 A KR 20210026982A KR 1020190127239 A KR1020190127239 A KR 1020190127239A KR 20190127239 A KR20190127239 A KR 20190127239A KR 20210026982 A KR20210026982 A KR 20210026982A
- Authority
- KR
- South Korea
- Prior art keywords
- user
- neural network
- recognition
- data
- input
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G06K9/481—
-
- G06K9/6201—
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G06N3/0454—
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/46—Descriptors for shape, contour or point-related descriptors, e.g. scale invariant feature transform [SIFT] or bags of words [BoW]; Salient regional features
- G06V10/469—Contour-based spatial representations, e.g. vector-coding
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biophysics (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Oral & Maxillofacial Surgery (AREA)
- Databases & Information Systems (AREA)
- Neurology (AREA)
- Medical Informatics (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
- Collating Specific Patterns (AREA)
Abstract
온-디바이스 트레이닝 기반의 사용자 인식 방법 및 장치가 개시된다. 일 실시예에 따른 사용자 인식 방법은 일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고, 사용자 데이터의 입력에 반응한 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하고, 테스트 데이터의 입력에 반응한 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하고, 등록 특징 벡터와 테스트 특징 벡터 간의 비교에 기초하여 테스트 사용자에 관한 사용자 인식을 수행하는 단계들을 포함한다.Disclosed is a method and apparatus for user recognition based on on-device training. The user recognition method according to an embodiment performs on-device training on a feature extractor based on reference data and user data corresponding to generalized users, and the feature extractor responds to input of user data. Determine the registered feature vector based on the output, determine the test feature vector based on the output of the feature extractor in response to the input of the test data, and recognize the test user based on the comparison between the registered feature vector and the test feature vector And performing steps.
Description
아래 실시예들은 온-디바이스 트레이닝 기반의 사용자 인식 방법 및 장치에 관한 것이다.The following embodiments relate to a method and apparatus for user recognition based on on-device training.
인식 프로세스의 기술적 자동화는, 예를 들어, 특수한 계산 구조로서 프로세서로 구현된 뉴럴 네트워크 모델을 통해 구현되었으며, 이는 상당한 훈련 후에 입력 패턴과 출력 패턴 사이에서 계산상 직관적인 매핑을 제공할 수 있다. 이러한 맵핑을 생성하는 훈련된 능력은 신경망의 학습 능력이라 할 수 있다. 더구나, 특화된 훈련으로 인해, 이와 같이 특화되어 훈련된 신경망은, 예를 들어, 훈련하지 않은 입력 패턴에 대하여 비교적 정확한 출력을 발생시키는 일반화 능력을 가질 수 있다.Technical automation of the recognition process has been implemented, for example, through a neural network model implemented by a processor as a special computational structure, which can provide a computationally intuitive mapping between input and output patterns after considerable training. The trained ability to generate this mapping can be said to be the learning ability of the neural network. Moreover, due to specialized training, a neural network trained by specializing in this way can have a generalization ability to generate relatively accurate outputs for, for example, untrained input patterns.
일 실시예에 따르면, 인식 방법은 사용자 등록을 위해 정당한 사용자에 의해 입력된 사용자 데이터를 수신하는 단계; 일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 상기 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하는 단계; 상기 사용자 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하는 단계; 사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하는 단계; 상기 테스트 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하는 단계; 및 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 비교에 기초하여 상기 테스트 사용자에 관한 사용자 인식을 수행하는 단계를 포함한다.According to an embodiment, the recognition method includes: receiving user data input by a legitimate user for user registration; Performing on-device training on a feature extractor based on reference data corresponding to generalized users and the user data; Determining a registered feature vector based on the output of the feature extractor in response to the input of the user data; Receiving test data input by a test user for user recognition; Determining a test feature vector based on an output of the feature extractor in response to the input of the test data; And performing user recognition on the test user based on a comparison between the registered feature vector and the test feature vector.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함할 수 있고, 상기 온-디바이스 트레이닝에 의해 상기 제2 뉴럴 네트워크의 상기 조절가능한 파라미터가 조절될 수 있다. 상기 제1 뉴럴 네트워크는 대규모 사용자 데이터베이스에 기초하여 입력 데이터에서 특징을 추출하도록 사전에 트레이닝될 수 있다. 상기 온-디바이스 트레이닝을 수행하는 단계는 상기 사용자 데이터 및 상기 참조 데이터 각각에 서로 다른 값의 레이블들을 할당하는 단계; 및 상기 사용자 데이터 및 상기 참조 데이터의 입력에 반응한 상기 특징 추출기의 출력들과 상기 레이블들 간의 비교에 기초하여 상기 온-디바이스 트레이닝을 수행하는 단계를 포함할 수 있다.The feature extractor may include a first neural network having a fixed parameter and a second neural network having an adjustable parameter, and the adjustable parameter of the second neural network may be adjusted by the on-device training. have. The first neural network may be pre-trained to extract features from input data based on a large user database. The performing of the on-device training may include assigning labels of different values to each of the user data and the reference data; And performing the on-device training based on a comparison between the labels and outputs of the feature extractor in response to the input of the user data and the reference data.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함할 수 있고, 상기 온-디바이스 트레이닝을 수행하는 단계는 상기 제1 뉴럴 네트워크에 상기 사용자 데이터를 입력하는 단계; 상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 상기 참조 데이터를 상기 제2 뉴럴 네트워크에 입력하는 단계; 및 상기 제2 뉴럴 네트워크의 출력에 기초하여 상기 온-디바이스 트레이닝을 수행하는 단계를 포함할 수 있다. 상기 참조 데이터는 상기 일반화된 사용자들에 대응하는 일반화된 특징 벡터(generalized feature vector)들을 포함할 수 있고, 상기 일반화된 특징 벡터들은 다수의 일반 사용자들에 대응하는 특징 벡터들을 클러스터화하여 생성될 수 있다.The feature extractor may include a first neural network having a fixed parameter and a second neural network having an adjustable parameter, and the performing of the on-device training inputs the user data to the first neural network The step of doing; Inputting an output of the first neural network and the reference data in response to an input of the user data to the second neural network; And performing the on-device training based on the output of the second neural network. The reference data may include generalized feature vectors corresponding to the generalized users, and the generalized feature vectors may be generated by clustering feature vectors corresponding to a plurality of general users. have.
상기 사용자 인식을 수행하는 단계는 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리 및 임계치 간의 비교에 기초하여 상기 사용자 인식을 수행하는 단계를 포함할 수 있다. 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리는 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 코사인 거리 및 유클리디안 거리 중 어느 하나에 기초하여 결정될 수 있다. 상기 인식 방법은 상기 등록 특징 벡터가 결정되면, 상기 결정된 등록 특징 벡터를 등록 사용자 데이터베이스에 저장하는 단계를 더 포함할 수 있다.The performing of the user recognition may include performing the user recognition based on a comparison between a distance and a threshold value between the registered feature vector and the test feature vector. The distance between the registered feature vector and the test feature vector may be determined based on one of a cosine distance and a Euclidean distance between the registered feature vector and the test feature vector. The recognition method may further include storing the determined registered feature vector in a registered user database when the registered feature vector is determined.
다른 일 실시예에 따르면, 인식 방법은 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하는 특징 추출기를 획득하는 단계; 정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자(generalized user)들에 대응하는 참조 데이터에 기초하여 상기 특징 추출기에 관한 온-디바이스 트레이닝을 수행하는 단계; 및 상기 온-디바이스 트레이닝이 완료되면, 상기 특징 추출기를 이용하여 사용자 인식을 수행하는 단계를 포함한다.According to another embodiment, a recognition method includes: obtaining a feature extractor comprising a first neural network having a fixed parameter and a second neural network having an adjustable parameter; Performing on-device training on the feature extractor based on user data corresponding to legitimate users and reference data corresponding to generalized users; And when the on-device training is completed, performing user recognition using the feature extractor.
일 실시예에 따르면, 미리 트레이닝되어 고정된 파라미터를 갖는 제 1 뉴럴 네트워크 및 조절 가능한 파라미터를 갖는 제 2 뉴럴 네트워크를 포함하고, 사용자 디바이스에 탑재된, 특징 추출기의 온-디바이스 트레이닝 방법은 정당한 사용자에 의해 입력된 사용자 데이터를 획득하는 단계; 상기 사용자 데이터를 상기 제 1 뉴럴 네트워크에 입력하는 단계; 및 상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 미리 정해진 참조 데이터를 상기 제 2 뉴럴 네트워크에 입력하여 상기 제 2 뉴럴 네트워크의 파라미터를 조절하는 단계를 포함한다.According to an embodiment, the on-device training method of the feature extractor, including a first neural network having a pre-trained and fixed parameter and a second neural network having an adjustable parameter, is mounted on a user device. Acquiring user data input by; Inputting the user data into the first neural network; And inputting an output of the first neural network in response to the input of the user data and predetermined reference data to the second neural network to adjust a parameter of the second neural network.
상기 참조 데이터는 1000개 이하의 특징 벡터들, 500개 이하의 특징 벡터들 또는 100개 이하의 특징 벡터들을 포함할 수 있다.The reference data may include 1000 or less feature vectors, 500 or less feature vectors, or 100 or less feature vectors.
일 실시예에 따르면, 인식 장치는 프로세서; 및 상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리를 포함하고, 상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는 사용자 등록을 위해 정당한 사용자에 의해 입력된 사용자 데이터를 수신하고, 일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 상기 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고, 상기 사용자 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하고, 사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하고, 상기 테스트 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하고, 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 비교에 기초하여 상기 테스트 사용자에 관한 사용자 인식을 수행한다.According to an embodiment, the recognition device includes a processor; And a memory including instructions executable in the processor, and when the instructions are executed in the processor, the processor receives user data input by a legitimate user for user registration, and a generalized user Perform on-device training on the feature extractor based on reference data corresponding to the user data and the user data, determine a registered feature vector based on the output of the feature extractor in response to the input of the user data, and recognize the user For receiving test data input by a test user, determining a test feature vector based on the output of the feature extractor in response to the input of the test data, and comparing the registered feature vector and the test feature vector Thus, user recognition of the test user is performed.
다른 일 실시예에 따르면, 인식 장치는 프로세서; 및 상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리를 포함하고, 상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하는 특징 추출기를 획득하고, 정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자(generalized user)들에 대응하는 참조 데이터에 기초하여 상기 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고, 상기 온-디바이스 트레이닝이 완료되면, 상기 특징 추출기를 이용하여 사용자 인식을 수행한다.According to another embodiment, the recognition device includes a processor; And a memory including instructions executable in the processor, wherein when the instructions are executed in the processor, the processor comprises a first neural network having a fixed parameter and a second neural network having an adjustable parameter. Obtain an extractor, perform on-device training on the feature extractor based on user data corresponding to a legitimate user and reference data corresponding to generalized users, and when the on-device training is completed , User recognition is performed using the feature extractor.
도 1은 일 실시예에 따른 사용자 등록 및 사용자 인식을 위한 인식 장치의 동작을 나타낸 도면.
도 2는 일 실시예에 따른 사전 트레이닝, 사용자 등록, 및 사용자 인식을 위한 프로세스들을 나타낸 도면.
도 3은 일 실시예에 따른 사전 트레이닝의 상세 프로세스를 나타낸 도면.
도 4는 일 실시예에 따른 온-디바이스 트레이닝 및 사용자 등록을 위한 인식 장치의 동작을 나타낸 도면.
도 5는 일 실시예에 따른 온-디바이스 트레이닝의 상세 프로세스를 나타낸 도면.
도 6은 일 실시예에 따른 일반화된 유저 모델의 생성 프로세스를 나타낸 도면.
도 7은 일 실시예에 따른 사용자 인식을 위한 인식 장치의 동작을 나타낸 도면.
도 8 및 도 9는 일 실시예에 따른 온-디바이스 트레이닝 전후의 특징 벡터들의 분포 변화를 나타낸 도면이다.
도 10은 일 실시예에 따른 온-디바이스 트레이닝 기반의 인식 방법을 나타낸 플로우 차트.
도 11은 다른 일 실시예에 따른 온-디바이스 트레이닝 기반의 인식 방법을 나타낸 플로우 차트.
도 12는 일 실시예에 따른 온-디바이스 트레이닝 기반의 인식 장치를 나타낸 블록도.
도 13은 일 실시예에 따른 사용자 디바이스를 나타낸 블록도.1 is a diagram illustrating an operation of a recognition device for user registration and user recognition according to an exemplary embodiment.
2 is a diagram illustrating processes for pre-training, user registration, and user recognition according to an embodiment.
3 is a diagram showing a detailed process of pre-training according to an embodiment.
4 is a diagram illustrating an operation of a recognition device for on-device training and user registration according to an embodiment.
5 is a diagram showing a detailed process of on-device training according to an embodiment.
6 is a diagram illustrating a process of generating a generalized user model according to an embodiment.
7 is a diagram illustrating an operation of a recognition device for user recognition according to an exemplary embodiment.
8 and 9 are diagrams illustrating a change in distribution of feature vectors before and after on-device training according to an embodiment.
10 is a flow chart showing a recognition method based on on-device training according to an embodiment.
Fig. 11 is a flow chart showing a recognition method based on on-device training according to another embodiment.
12 is a block diagram illustrating a recognition apparatus based on on-device training according to an embodiment.
13 is a block diagram showing a user device according to an embodiment.
아래 개시되어 있는 특정한 구조 또는 기능들은 단지 기술적 개념을 설명하기 위한 목적으로 예시된 것으로서, 아래 개시와는 달리 다른 다양한 형태로 실시될 수 있으며 본 명세서의 실시예들을 한정하지 않는다.Specific structures or functions disclosed below are exemplified only for the purpose of describing a technical concept, and may be implemented in various forms different from the disclosure below, and embodiments of the present specification are not limited thereto.
제1 또는 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 이런 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 이해되어야 한다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다.Terms such as first or second may be used to describe various components, but these terms should be understood only for the purpose of distinguishing one component from other components. For example, a first component may be referred to as a second component, and similarly, a second component may be referred to as a first component.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함으로 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as "comprise" are intended to designate that the specified features, numbers, steps, actions, components, parts, or combinations thereof exist, and one or more other features or numbers, steps, actions, It is to be understood that the possibility of addition or presence of components, parts, or combinations thereof is not preliminarily excluded.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 해당 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the relevant technical field. Terms as defined in a commonly used dictionary should be construed as having a meaning consistent with the meaning of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in the present specification. Does not.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. The same reference numerals shown in each drawing indicate the same members.
도 1은 일 실시예에 따른 사용자 등록 및 사용자 인식을 위한 인식 장치의 동작을 나타낸 도면이다. 도 1을 참조하면, 인식 장치(110)는 정당한 사용자(101)의 사용자 데이터에 기초하여 정당한 사용자(101)를 인식 장치(110)에 등록할 수 있다. 정당한 사용자(101)는 한 명 이상일 수 있으며, 한 명 이상의 정당한 사용자(101)가 인식 장치(110)에 등록될 수 있다. 정당한 사용자(101)는 인식 장치(110)가 탑재된 디바이스의 소유자나 관리자와 같은 인식 장치(110)의 사용 권한을 갖는 자를 말하며, 진짜 사용자(genuine user)로 지칭될 수도 있다. 정당한 사용자(101)를 인식 장치(110)에 등록하는 것은 사용자 등록 프로세스로 지칭될 수 있다. 사용자 등록 프로세스를 통해 정당한 사용자(101)의 식별 정보(예: 등록 특징 벡터)가 인식 장치(110) 또는 인식 장치(110)와 연계된 다른 장치에 저장될 수 있다. 정당한 사용자(101)의 등록이 완료되면, 정당한 사용자(101)는 등록 사용자로 지칭될 수 있다.1 is a diagram illustrating an operation of a recognition device for user registration and user recognition according to an exemplary embodiment. Referring to FIG. 1, the
테스트 사용자(102)는 신원 미상인 상태로 인식 장치(110)를 이용하기 위해 인식 장치(110)에 사용자 인식을 시도하는 자이며, 정당한 사용자(101) 또는 침입자(imposter)에 해당할 수 있다. 침입자는 인식 장치(110)의 사용 권한을 갖지 않는 자를 말한다. 인식 장치(110)는 테스트 사용자(102)의 테스트 데이터와 사용자 데이터를 비교하여 테스트 사용자(102)에 관한 사용자 인식을 수행하고, 인식 결과를 출력할 수 있다. 테스트 사용자(102)에 관한 사용자 인식을 수행하는 것은 사용자 인식 프로세스로 지칭될 수 있다. 사용자 인식 프로세스는 시간적으로 사용자 등록 프로세스 후에 수행될 수 있다.The
사용자 인식(user recognition)은 사용자 식별(user identification) 및 사용자 인증(user verification)을 포함할 수 있다. 사용자 인증은 테스트 사용자(102)가 등록 사용자가 맞는지 결정하는 것이고, 사용자 식별은 테스트 사용자(102)가 복수의 사용자들 중 어느 사용자인지 결정하는 것이다. 복수의 등록 사용자들이 존재하고 테스트 사용자(102)가 복수의 등록 사용자들 중 어느 하나에 속한다면, 사용자 식별에 따라 테스트 사용자(102)가 복수의 등록 사용자들 중 어느 등록 사용자인지 결정될 수 있다.User recognition may include user identification and user verification. User authentication is to determine whether the
인식 결과는 식별 결과 및 인증 결과 중 적어도 하나를 포함할 수 있다. 예를 들어, 테스트 사용자(102)가 등록 사용자에 해당하는 경우, 인식 장치(110)는 인식 성공에 해당하는 인증 결과를 출력할 수 있다. 이 때, 등록 사용자가 복수로 존재하는 경우, 인식 결과는 테스트 사용자(102)가 복수의 등록 사용자들 중 어느 등록 사용자에 해당하는지에 관한 식별 결과를 포함할 수 있다. 테스트 사용자(102)가 침입자에 해당하는 경우, 인식 장치(110)는 인식 실패에 해당하는 인증 결과를 출력할 수 있다.The recognition result may include at least one of an identification result and an authentication result. For example, when the
사용자 데이터는 정당한 사용자(101)의 것이며, 테스트 데이터는 테스트 사용자(102)의 것이다. 사용자 데이터는 정당한 사용자(101)에 의해 인식 장치(110)에 입력되거나, 인식 장치(110)를 포함하는 다른 장치에 입력되어 인식 장치(110)에 전달되거나, 인식 장치(110)와 별개의 또 다른 장치에 입력되어 인식 장치(110)에 전달될 수 있다. 마찬가지로, 테스트 데이터는 테스트 사용자(102)에 의해 인식 장치(110)에 입력되거나, 인식 장치(110)를 포함하는 다른 장치에 입력되어 인식 장치(110)에 전달되거나, 인식 장치(110)와 별개의 또 다른 장치에 입력되어 인식 장치(110)에 전달될 수 있다.The user data belongs to the
사용자 데이터 및 테스트 데이터와 같이 인식 장치(110)에 입력되는 데이터는 입력 데이터로 지칭될 수 있다. 입력 데이터는 음성 또는 영상을 포함할 수 있다. 예를 들어, 화자 인식(speaker recognition)의 경우 입력 데이터는 발화(speech), 음성(voice), 또는 오디오를 포함할 수 있다. 얼굴 인식의 경우 입력 데이터는 얼굴 영상을 포함할 수 있고, 지문 인식의 경우 입력 데이터는 지문 영상을 포함할 수 있고, 홍채 인식의 경우 입력 데이터는 홍채 영상을 포함할 수 있다. 인식 장치(110)는 이러한 복수의 인증 방식들 중 적어도 하나에 기초하여 사용자 인증을 수행할 수 있다. 사용자 데이터, 테스트 데이터, 참조 데이터, 및 트레이닝 데이터의 모달리티는 인증 장치(110)가 사용하는 적어도 하나의 인증 방식에 대응할 수 있다. 아래에서는 대표적으로 화자 인식의 실시예를 설명하겠으나, 이는 단순히 설명의 편의를 위한 것이며, 아래의 설명은 화자 인식 이외에 다른 인증 방식에도 적용될 수 있다.Data input to the
인식 장치(110)는 특징 추출기(120)를 이용하여 사용자 인증을 수행할 수 있다. 특징 추출기(120)는 제1 뉴럴 네트워크(121) 및 제2 뉴럴 네트워크(122)와 같은 뉴럴 네트워크를 포함할 수 있다. 뉴럴 네트워크의 적어도 일부는 소프트웨어로 구현되거나, 뉴럴 프로세서(neural processor)를 포함하는 하드웨어로 구현되거나, 혹은 소프트웨어 및 하드웨어의 조합으로 구현될 수 있다. 예를 들어, 뉴럴 네트워크는 완전 연결 네트워크(fully connected network), 딥 컨볼루셔널 네트워크(deep convolutional network) 및 리커런트 뉴럴 네트워크(recurrent neural network) 등을 포함하는 딥 뉴럴 네트워크(deep neural network, DNN)에 해당할 수 있다. DNN은 복수의 레이어들을 포함할 수 있다. 복수의 레이어들은 입력 레이어(input layer), 적어도 하나의 히든 레이어(hidden layer), 및 출력 레이어(output layer)를 포함할 수 있다.The
뉴럴 네트워크는 딥 러닝에 기반하여 비선형적 관계에 있는 입력 데이터 및 출력 데이터를 서로 매핑함으로써 주어진 동작을 수행하도록 트레이닝될 수 있다. 딥 러닝은 빅 데이터 세트로부터 주어진 문제를 해결하기 위한 기계 학습 기법이다. 딥 러닝은 준비된 트레이닝 데이터를 이용하여 뉴럴 네트워크를 트레이닝하면서 에너지가 최소화되는 지점을 찾아가는 최적화 문제 풀이 과정으로 이해될 수 있다. 딥 러닝의 지도식(supervised) 또는 비지도식(unsupervised) 학습을 통해 뉴럴 네트워크의 구조, 혹은 모델에 대응하는 웨이트가 구해질 수 있고, 이러한 웨이트를 통해 입력 데이터 및 출력 데이터가 서로 매핑될 수 있다. 도 1에 특징 추출기(120)는 인식 장치(110)의 외부에 위치하는 것으로 도시되어 있으나, 특징 추출기(120)는 인식 장치(110)의 내부에 위치할 수 있다.The neural network may be trained to perform a given operation by mapping input data and output data having a nonlinear relationship to each other based on deep learning. Deep learning is a machine learning technique for solving a given problem from a big data set. Deep learning can be understood as a process of solving an optimization problem to find a point where energy is minimized while training a neural network using prepared training data. Through supervised or unsupervised learning of deep learning, a weight corresponding to the structure of a neural network or a model may be obtained, and input data and output data may be mapped to each other through these weights. In FIG. 1, the
인식 장치(110)는 특징 추출기(120)에 입력 데이터를 입력하고, 입력 데이터의 입력에 따른 특징 추출기(120)의 출력에 기초하여 인식 장치(110)에 사용자를 등록하거나 인식 결과를 생성할 수 있다. 일 실시예에 따르면, 인식 장치(110)는 입력 데이터에 일정한 전처리를 적용하고, 전처리가 적용된 입력 데이터를 특징 추출기(120)에 입력할 수 있다. 입력 데이터는 전처리를 통해 특징 추출기(120)가 특징을 추출하는데 적합한 형태로 변형될 수 있다. 예를 들어, 입력 데이터가 음성 웨이브에 해당하는 경우, 음성 웨이브는 전처리 과정을 통해 주파수 스펙트럼으로 변환될 수 있다.The
특징 추출기(120)는 입력 데이터의 입력에 반응하여 출력 데이터를 출력할 수 있다. 특징 추출기(120)의 출력 데이터는 특징 벡터로 지칭될 수 있다. 또는, 특징 추출기(120)의 출력 데이터는 사용자의 식별 정보를 포함한다는 의미에서 임베딩 벡터(embedding vector)로 지칭될 수도 있다. 정당한 사용자(101)의 사용자 등록 프로세스에서 특징 추출기(120)는 사용자 데이터의 입력에 반응하여 특징 벡터를 출력할 수 있다. 이 때 출력된 특징 벡터는 등록 특징 벡터로 지칭될 수 있고, 정당한 사용자(101)의 식별 정보로서 인식 장치(110) 또는 인식 장치(110)와 연계된 다른 장치에 저장될 수 있다. 테스트 사용자(102)의 사용자 인식 프로세스에서 특징 추출기(120)는 테스트 데이터의 입력에 반응하여 특징 벡터를 출력할 수 있다. 이 때 출력된 특징 벡터는 테스트 특징 벡터로 지칭될 수 있다.The
인식 장치(110)는 등록 특징 벡터와 테스트 특징 벡터를 비교하여 인식 결과를 생성할 수 있다. 예를 들어, 인식 장치(110)는 등록 특징 벡터와 테스트 특징 벡터 간의 거리를 결정하고, 결정된 거리와 임계치 간의 비교에 기초하여 인식 결과를 생성할 수 있다. 결정된 거리의 값이 임계치보다 작은 경우, 등록 특징 벡터와 테스트 특징 벡터가 서로 매칭되는 것으로 표현될 수 있다.The
등록 사용자가 복수인 경우 각 등록 사용자에 관한 등록 특징 벡터가 복수로 존재할 수 있다. 이 경우, 인식 장치(110)는 테스트 특징 벡터를 각 등록 특징 벡터와 비교하여 인식 결과를 생성할 수 있다. 예를 들어, 테스트 특징 벡터가 복수의 등록 특징 벡터들 중 어느 하나와 매칭되는 경우, 인식 장치(110)는 인식 성공에 해당하는 인식 결과를 출력할 수 있다. 이 때, 인식 결과는 테스트 특징 벡터와 매칭된 등록 특징 벡터에 대응하는 등록 사용자에 관한 식별 결과를 포함할 수 있다. 테스트 사용자(102)가 복수의 등록 사용자들 중 어느 등록 사용자에 해당하는지에 관한 식별 결과를 포함할 수 있다.When there are a plurality of registered users, there may be a plurality of registered feature vectors for each registered user. In this case, the
특징 추출기(120)는 제1 뉴럴 네트워크(121) 및 제2 뉴럴 네트워크(122)를 포함할 수 있다. 제1 뉴럴 네트워크(121)는 대규모 사용자 데이터베이스에 기초하여 사전에 트레이닝될 수 있고, 제2 뉴럴 네트워크(122)는 사용자 등록 프로세스에서 사용자 데이터에 기초하여 추가로 트레이닝될 수 있다. 여기서, '사전'이라는 것은 사용자 등록 프로세스의 수행 전 시점, 예를 들어 특징 추출기(120)의 개발 및 생산 시점을 의미할 수 있다. 대규모 사용자 데이터베이스는 불특정 사용자들에 대응할 수 있고, 사용자 데이터는 정당한 사용자(101)와 같은 특정 사용자에 대응할 수 있다. 제1 뉴럴 네트워크(121)의 트레이닝은 특징 추출기(120)의 개발 및 생산 단계에서 서버에 의해 수행될 수 있고, 사전 트레이닝 혹은 1차적 트레이닝으로 지칭될 수 있다. 제2 뉴럴 네트워크(122)의 트레이닝은 사용자 등록 프로세스에서 인식 장치(110)를 포함하는 디바이스에 의해 수행될 수 있고, 온-디바이스 트레이닝 혹은 2차적 트레이닝으로 지칭될 수 있다. 온-디바이스 트레이닝에서 '디바이스'는 인식 장치(110)가 탑재된 사용자 디바이스를 의미할 수 있다.The
제1 뉴럴 네트워크(121)는 고정된 파라미터를 가질 수 있고, 제2 뉴럴 네트워크(122)는 조절가능한 파라미터를 가질 수 있다. 파라미터는 가중치를 포함할 수 있다. 사전 트레이닝에 의해 제1 뉴럴 네트워크(121)가 트레이닝되면, 제1 뉴럴 네트워크(121)의 파라미터는 고정되며, 온-디바이스 트레이닝에 의해 변경되지 않는다. 파라미터가 고정되었다는 것은 파라미터가 동결된(freeze) 것으로 표현될 수도 있다. 제2 뉴럴 네트워크(122)의 파라미터는 온-디바이스 트레이닝에 의해 조절될 수 있다. 제1 뉴럴 네트워크(121)가 일반적인 방식으로 입력 데이터에서 특징을 추출한다면, 제2 뉴럴 네트워크(122)는 제1 뉴럴 네트워크(121)에 의해 추출된 특징을 개별 디바이스의 사용자들에게 특화되도록 재배치(remapping)하는 것으로 이해될 수 있다.The first
사용자 인식에 있어서, 트레이닝 데이터와 실제 사용자 데이터 간의 부조화는 인식 성능을 떨어뜨리는 결과를 초래할 수 있다. 예를 들어, 제1 뉴럴 네트워크(121)의 사전 트레이닝 시 실제 사용자 데이터는 사용되지 않으므로, 제1 뉴럴 네트워크(121)만으로 구성된 특징 추출기(120)의 인식 성능은 높지 않을 수 있다. 제2 뉴럴 네트워크(122)의 온-디바이스 트레이닝은 실제 사용자 데이터에 기초하여 수행되므로, 이러한 부조화를 해소하는데 도움을 줄 수 있다. 예를 들어, 사전 트레이닝만 적용된 일반적인 특징 추출기가 이용될 경우, 가족 구성원들과 같이 유사한 특징을 갖는 사용자들의 식별이 어려울 수 있다. 그러나, 실시예에 따른 특징 추출기(120)가 이용될 경우, 각 사용자의 실제 사용자 데이터가 온-디바이스 트레이닝에 이용되므로, 유사한 특징을 갖는 사용자들이 비교적 정확히 식별될 수 있다.In user recognition, a mismatch between training data and actual user data may result in deterioration of recognition performance. For example, since actual user data is not used during pre-training of the first
나아가, 실시예에 따른 온-디바이스 트레이닝에는 사용자 데이터뿐만 아니라 일반화된 사용자(generalized user)들에 대응하는 참조 데이터가 사용될 수 있다. 사용자 데이터 및 참조 데이터를 이용한 온-디바이스 트레이닝에 따라, 특징 추출기(120)는 사용자 데이터에서 참조 데이터와 구분되는 특징을 추출할 수 있다. 이에 따라 침입자의 특징 벡터와 등록 사용자의 특징 벡터가 더욱 명확히 구분될 수 있고, 인식 성능이 향상될 수 있다. 사용자 데이터 및 참조 데이터를 이용한 온-디바이스 트레이닝은 추후 상세히 설명된다.Further, in the on-device training according to an embodiment, not only user data but also reference data corresponding to generalized users may be used. According to on-device training using user data and reference data, the
도 2는 일 실시예에 따른 사전 트레이닝, 사용자 등록, 및 사용자 인증을 위한 프로세스들을 나타낸 도면이다. 도 2를 참조하면, 단계(210)에서 사전 트레이닝이 수행된다. 사전 트레이닝은 불특정 사용자들에 대응하는 대규모 사용자 데이터베이스에 기초하여 수행될 수 있으며, 사전 트레이닝을 통해 특징 추출기(200)의 제1 뉴럴 네트워크(201)가 트레이닝될 수 있다. 사전 트레이닝은 서버 단에서 수행될 수 있으며, 단계(210)가 수행된 이후 특징 추출기(200)는 디바이스에 탑재되어 사용자에게 배포될 수 있다.2 is a diagram illustrating processes for pre-training, user registration, and user authentication according to an embodiment. 2, in
사용자 등록을 위해 정당한 사용자에 의해 사용자 데이터가 입력되면, 단계(220)에서 온-디바이스 트레이닝이 수행되고, 단계(230)에서 사용자 등록이 수행된다. 단계들(220, 230)은 사용자 등록 프로세스로 지칭될 수 있다. 온-디바이스 트레이닝은 사용자 등록 프로세스에서 수행되는 것으로 이해될 수 있다. 온-디바이스 트레이닝은 정당한 사용자와 같은 특정 사용자의 사용자 데이터 및 일반화된 사용자들에 대응하는 참조 데이터에 기초하여 수행될 수 있으며, 온-디바이스 트레이닝을 통해 특징 추출기(200)의 제2 뉴럴 네트워크(202)가 트레이닝될 수 있다. 온-디바이스 트레이닝이 수행되기 전 제2 뉴럴 네트워크(202)는 항등 행렬(identity matrix)로 초기화된 상태일 수 있다.When user data is input by a legitimate user for user registration, on-device training is performed in
단계(220) 이후에 특징 추출기(200)는 등록 사용자에게 특화된 상태가 될 수 있다. 온-디바이스 트레이닝이 완료된 이후에, 단계(230)에서 정당한 사용자의 사용자 데이터가 특징 추출기(200)에 입력될 수 있다. 사용자 데이터의 입력에 반응한 특징 추출기(200)의 출력에 기초하여 등록 특징 벡터가 결정될 수 있다. 등록 특징 벡터가 결정되면, 결정된 등록 특징 벡터는 등록 사용자 데이터베이스에 저장될 수 있다.After
단계(240)에서 사용자 인식이 수행된다. 단계(240)는 사용자 인식 프로세스로 지칭될 수 있다. 사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터는 특징 추출기(200)에 입력될 수 있다. 테스트 데이터의 입력에 반응한 특징 추출기(200)의 출력에 기초하여 테스트 특징 벡터가 결정될 수 있다. 등록 특징 벡터와 테스트 특징 벡터 간의 비교에 기초하여 테스트 사용자에 관한 사용자 인식이 수행될 수 있다. 단계들(220 내지 240)은 디바이스에 의해 수행될 수 있다.In
도 3은 일 실시예에 따른 사전 트레이닝의 상세 프로세스를 나타낸 도면이다. 도 3을 참조하면, 트레이닝 장치(310)는 입력 데이터에서 특징을 추출하도록 대규모 사용자 데이터베이스(320)를 이용하여 뉴럴 네트워크(330)를 트레이닝할 수 있다. 예를 들어, 대규모 사용자 데이터베이스(320)는 다수의 불특정 사용자들에 관한 트레이닝 데이터를 포함할 수 있고, 각 트레이닝 데이터에 관해 레이블이 할당될 수 있다. 트레이닝 데이터는 음성 또는 영상을 포함할 수 있다. 예를 들어, 화자 인식의 경우 입력 데이터는 발화, 음성, 또는 오디오를 포함할 수 있다.3 is a diagram illustrating a detailed process of pre-training according to an embodiment. Referring to FIG. 3, the
뉴럴 네트워크(330)는 입력 레이어(331), 적어도 하나의 히든 레이어(332), 및 출력 레이어(333)를 포함한다. 예를 들어, 입력 레이어(331)는 트레이닝 데이터에 대응할 수 있고, 출력 레이어(333)는 소프트맥스(Softmax)와 같은 활성화 함수에 대응할 수 있다. 뉴럴 네트워크(330)의 사전 트레이닝을 통해 적어도 하나의 히든 레이어(332)의 파라미터(예: 가중치)가 조절될 수 있다. 각 트레이닝 데이터에 관해 서로 다른 레이블에 할당될 수 있고, 이러한 트레이닝 데이터 및 레이블에 기초한 사전 트레이닝에 따라 뉴럴 네트워크(330)는 서로 다른 입력 데이터에 관해 서로 다른 출력 데이터를 출력하는 능력을 갖게 될 수 있다. 이러한 뉴럴 네트워크(330)의 능력은 특징 추출 기능으로 이해될 수 있다.The
예를 들어, 제1 트레이닝 데이터에 관해 제1 레이블에 할당되고, 제2 트레이닝 데이터에 관해 제2 레이블이 할당된 것을 가정할 수 있다. 이 경우, 뉴럴 네트워크(330)는 제1 트레이닝 데이터의 입력에 반응하여 제1 출력 데이터를 출력할 수 있고, 제2 트레이닝 데이터의 입력에 반응하여 제2 출력 데이터를 출력할 수 있다. 트레이닝 장치(310)는 제1 출력 데이터와 제1 레이블을 비교하고, 제1 출력 데이터과 제1 레이블이 동일해질 수 있는 방향으로 적어도 하나의 히든 레이어(332)의 파라미터를 조절할 수 있다. 마찬가지로, 트레이닝 장치(310)는 제2 출력 데이터와 제2 레이블을 비교하고, 제2 출력 데이터과 제2 레이블이 동일해질 수 있는 방향으로 적어도 하나의 히든 레이어(332)의 파라미터를 조절할 수 있다. 트레이닝 장치(310)는 이와 같은 과정을 대규모 사용자 데이터베이스(320)에 관해 반복하여 뉴럴 네트워크(330)를 사전 트레이닝할 수 있다.For example, it may be assumed that a first label is assigned for first training data and a second label is assigned for second training data. In this case, the
일 실시예에 따르면, 트레이닝 프로세스는 적절한 배치(batch) 단위로 수행될 수 있다. 예를 들어, 하나의 트레이닝 데이터를 뉴럴 네트워크(330)에 입력하고, 트레이닝 데이터의 입력에 따른 뉴럴 네트워크(330)의 출력에 대응하는 하나의 출력 데이터를 획득하는 프로세스가 배치 단위로 실행되며, 배치 단위의 실행의 반복을 통해 대규모 사용자 데이터베이스(320)를 이용한 사전 트레이닝이 수행될 수 있다.According to an embodiment, the training process may be performed in an appropriate batch unit. For example, a process of inputting one training data to the
출력 레이어(333)는 적어도 하나의 히든 레이어(332)에서 출력되는 특징 벡터를 레이블에 대응하는 형태로 변환하는 역할을 수행할 수 있다. 사전 트레이닝에 따라 적어도 하나의 히든 레이어(332)의 파라미터는 트레이닝 목적에 따른 값으로 설정될 수 있고, 사전 트레이닝이 완료되면 적어도 하나의 히든 레이어(332)의 파라미터는 고정될 수 있다. 이후에, 뉴럴 네트워크(330)에서 출력 레이어(333)가 제거될 수 있고, 입력 레이어(331) 및 적어도 하나의 히든 레이어(332)를 포함하는 파트(340)로 특징 추출기의 제1 뉴럴 네트워크가 구성될 수 있다.The
사전 트레이닝이 완료되면, 뉴럴 네트워크(330)는 서로 다른 입력 데이터에 관해 서로 다른 출력 데이터를 출력하는 특징 추출 기능을 수행할 수 있다. 이러한 특징 추출 기능은 트레이닝 데이터가 사용자 등록 프로세스 및 사용자 인식 프로세스에서 사용되는 실제 데이터와 동일한 케이스에서 최대의 성능을 발휘할 수 있다. 그러나, 일반적으로 트레이닝 데이터와 실제 데이터는 다를 수 있다. 인식 성능을 향상시키기 위해 트레이닝 데이터에 실제 데이터를 포함시켜 재트레이닝을 수행함으로써 트레이닝 데이터와 실제 데이터 간의 부조화를 좁히는 방법이 이론적으로는 가능하다.When pre-training is completed, the
그러나, 뉴럴 네트워크(330)가 특징 추출 기능을 갖게 되기까지 대규모 사용자 데이터베이스(320)로 뉴럴 네트워크(330)를 트레이닝하는 것이 필요하고, 이러한 트레이닝 과정에는 대규모 컴퓨팅 자원이 요구된다. 일반적으로 사용자 디바이스의 컴퓨팅 자원에는 한계가 있으므로, 이러한 트레이닝은 대용량 서버 단에서 수행될 수 있다. 따라서, 실시예에 따르면 대규모 사용자 데이터베이스(320)를 통해 뉴럴 네트워크(330)를 트레이닝하여 특징 추출기의 제1 뉴럴 네트워크를 생성하고, 실제 데이터에 기반하여 특징 추출기의 제2 뉴럴 네트워크를 생성하는, 사전 트레이닝과 온-디바이스 트레이닝의 이원화된 트레이닝 방식을 제공한다. 이에 따라 트레이닝 데이터와 실제 데이터 간의 부조화가 해결되고, 사용자 디바이스에 특화된 특징 추출기가 제공될 수 있다.However, it is necessary to train the
도 4는 일 실시예에 따른 온-디바이스 트레이닝 및 사용자 등록을 위한 인증 장치의 동작을 나타낸 도면이다. 도 4를 참조하면, 정당한 사용자는 사용자 등록을 위해 사용자 데이터를 입력할 수 있다. 인식 장치(410)는 사용자 데이터에 기초하여 특징 추출기(420)에 관한 온-디바이스 트레이닝을 수행할 수 있다. 특징 추출기(420)는 제1 뉴럴 네트워크(421) 및 제2 뉴럴 네트워크(422)를 포함한다. 제1 뉴럴 네트워크(421)의 파라미터는 사전 트레이닝에 의해 고정될 수 있고, 온-디바이스 트레이닝에 의해 제2 뉴럴 네트워크(422)의 파라미터가 조절될 수 있다. 온-디바이스 트레이닝에는 참조 데이터가 이용될 수 있다. 인식 장치(410)는 일반화된 유저 모델(430)로부터 참조 데이터를 획득하여 제2 뉴럴 네트워크(422)에 입력할 수 있다. 사용자 데이터는 정당한 사용자에 대응할 수 있고, 참조 데이터는 일반화된 사용자(generalized user)에 대응할 수 있다. 일반화된 유저 모델(430)은 추후 상세히 설명된다.4 is a diagram illustrating an operation of an authentication apparatus for on-device training and user registration according to an embodiment. Referring to FIG. 4, a legitimate user may input user data for user registration. The
인식 장치(410)는 각 사용자 데이터 및 각 참조 데이터에 서로 다른 레이블을 할당하고, 각 사용자 데이터 및 각 참조 데이터의 입력에 반응한 특징 추출기(420)의 출력들과 레이블들을 서로 비교하여, 제2 뉴럴 네트워크(422)의 파라미터를 조절할 수 있다. 이와 같이 인식 장치는 특징 추출기(420)가 각 사용자 데이터 및 각 참조 데이터에 관해 서로 구분되는 특징 벡터를 출력할 수 있도록 특징 추출기(420)를 트레이닝할 수 있다. 사용자 데이터 및 참조 데이터를 함께 사용하여 특징 추출기(420)를 트레이닝함에 따라, 등록 사용자들의 등록 특징 벡터들이 서로 명확히 구분될 수 있을뿐만 아니라, 등록 사용자의 등록 특징 벡터 및 침입자의 특징 벡터가 서로 명확히 구분될 수 있다. 따라서, 온-디바이스 트레이닝에 따라 특징 추출기(420)에 등록 사용자들을 서로 식별할 수 있는 식별 능력 및 등록 사용자와 침입자를 구분하여 등록 사용자를 인증할 수 있는 인증 능력이 부여될 수 있다.The
온-디바이스 트레이닝이 완료되면, 인식 장치(410)는 사용자 데이터를 특징 추출기(420)에 입력하고, 사용자 데이터의 입력에 반응한 특징 추출기(420)에 의해 출력된 특징 벡터를 획득할 수 있다. 인식 장치(410)는 특징 추출기(420)에 의해 출력된 특징 벡터를 등록 특징 벡터로서 등록 사용자 데이터베이스(440)에 저장할 수 있다. 등록 특징 벡터는 추후 사용자 인증 프로세스에 이용될 수 있다.When the on-device training is completed, the
도 5는 일 실시예에 따른 온-디바이스 트레이닝의 상세 프로세스를 나타낸 도면이다. 도 5를 참조하면, 인식 장치(510)는 사용자 데이터 및 참조 데이터를 이용하여 특징 추출기(520)에 관한 온-디바이스 트레이닝을 수행할 수 있다. 사용자 데이터는 제1 뉴럴 네트워크(521)에 입력될 수 있고, 참조 데이터는 제2 뉴럴 네트워크(522)에 입력될 수 있다. 참조 데이터는 일반화된 유저 모델(540)으로부터 획득될 수 있다. 인식 장치(510)는 사용자 데이터를 제1 뉴럴 네트워크(521)에 입력할 수 있고, 제1 뉴럴 네트워크(521)가 사용자 데이터의 입력에 반응하여 특징 벡터를 출력하면, 해당 특징 벡터를 제2 뉴럴 네트워크(522)에 입력할 수 있다. 참조 데이터는 제1 뉴럴 네트워크(521)처럼 특징 추출을 수행하는 뉴럴 네트워크를 이용하여 생성된 것일 수 있다. 제1 뉴럴 네트워크(521)의 출력은 인식 장치의 특별한 제어 없이 제1 뉴럴 네트워크(521)로부터 제2 뉴럴 네트워크(522)에 입력되는 것으로 이해될 수 있다.5 is a diagram illustrating a detailed process of on-device training according to an embodiment. Referring to FIG. 5, the
제2 뉴럴 네트워크(522)는 도 3의 뉴럴 네트워크(330)와 유사한 과정을 통해 트레이닝될 수 있다. 예를 들어, 도 3의 트레이닝 데이터가 사용자 데이터에 대응하는 특징 벡터 및 참조 벡터로 대체된 것으로 이해될 수 있다. 제2 뉴럴 네트워크(522)는 입력 레이어(523), 적어도 하나의 히든 레이어(524), 및 출력 레이어(525)를 포함한다. 예를 들어, 입력 레이어(523)는 사용자 데이터에 대응하는 특징 벡터 및 참조 데이터를 포함하는 입력 데이터에 대응할 수 있고, 출력 레이어(525)는 소프트맥스(Softmax)와 같은 활성화 함수에 대응할 수 있다. 온-디바이스 트레이닝을 통해 적어도 하나의 히든 레이어(524)의 파라미터(예: 가중치)가 조절될 수 있다.The second
각 사용자 데이터 및 각 참조 데이터에 관해 서로 다른 레이블에 할당될 수 있고, 이러한 사용자 데이터, 참조 데이터 및 레이블에 기초한 온-디바이스 트레이닝에 따라 특징 추출기(520)는 서로 다른 사용자 데이터 및 서로 다른 참조 데이터에 관해 서로 다른 출력 데이터를 출력하는 능력을 갖게 될 수 있다. 예를 들어, 제1 뉴럴 네트워크(521)가 일반적인 방식으로 입력 데이터에서 특징을 추출한다면, 제2 뉴럴 네트워크(522)는 제1 뉴럴 네트워크(521)에 의해 추출된 특징을 개별 디바이스의 사용자들에게 특화되도록 재배치(remapping)하는 것으로 이해될 수 있다.For each user data and each reference data may be assigned to different labels, and according to the on-device training based on these user data, reference data and labels, the
일 실시예에 따르면, 트레이닝 프로세스는 적절한 배치(batch) 단위로 수행될 수 있다. 예를 들어, 사용자 데이터 및 참조 데이터 중 하나를 특징 추출기(520)에 입력하고, 특징 추출기(520)의 출력에 대응하는 하나의 출력 데이터를 획득하는 프로세스가 배치 단위로 실행되며, 배치 단위의 실행의 반복을 통해 사용자 데이터 및 참조 데이터를 이용한 온-디바이스 트레이닝이 수행될 수 있다. 온-디바이스 트레이닝이 완료되면 적어도 하나의 히든 레이어(524)의 파라미터는 고정될 수 있다. 이후에, 제2 뉴럴 네트워크(522)에서 출력 레이어(525)가 제거될 수 있고, 출력 레이어(525)가 제거된 상태로 제2 뉴럴 네트워크(522)가 확정될 수 있다.According to an embodiment, the training process may be performed in an appropriate batch unit. For example, a process of inputting one of user data and reference data to the
상술된 것처럼, 온-디바이스 트레이닝을 통해 트레이닝 데이터와 실제 데이터 간의 부조화가 해결될 수 있다. 예를 들어, 사용자 데이터를 통해 등록 특징 벡터들 간의 식별 능력이 향상될 수 있고, 참조 데이터를 통해 등록 특징 벡터와 침입자의 특징 벡터 간의 식별 능력이 향상될 수 있다.As described above, a mismatch between training data and actual data may be solved through on-device training. For example, the ability to discriminate between the registered feature vectors may be improved through user data, and the discrimination capability between the registered feature vectors and the intruder's feature vectors may be improved through reference data.
도 6은 일 실시예에 따른 일반화된 유저 모델의 생성 프로세스를 나타낸 도면이다. 도 6을 참조하면, 대규모 사용자 데이터베이스(610)로부터 입력 데이터가 추출되어 뉴럴 네트워크(620)에 입력된다. 예를 들어, 뉴럴 네트워크(620)는 도 4의 제1 뉴럴 네트워크(421)에 대응할 수 있고, 입력 데이터에 기초하여 특징 벡터를 출력할 수 있다. 대규모 사용자 데이터베이스(610)는 도 3의 대규모 사용자 데이터베이스(610)와 동일할 수도 있고, 상이할 수도 있다.6 is a diagram illustrating a process of generating a generalized user model according to an exemplary embodiment. Referring to FIG. 6, input data is extracted from a large-
뉴럴 네트워크(620)에 의해 출력된 특징 벡터들은 벡터 평면(630) 상에 점으로 표시되어 있다. 이들 특징 벡터들은 대규모 사용자 데이터베이스(610)에 포함된 다수의 일반 사용자들에 대응할 수 있고, 기초 특징 벡터들로 지칭될 수 있다. 이러한 기초 특징 벡터들을 대표하는 벡터들로서 대표 특징 벡터들(θ1, θ2, ..., θc)이 선정될 수 있다. 예를 들어, 기초 특징 벡터들을 클러스터화하여 대표 특징 벡터들(θ1, θ2, ..., θc)이 선정될 수 있다. 대표 특징 벡터들(θ1, θ2, ..., θc)은 일반화된 사용자들에 대응할 수 있고, 일반화된 특징 벡터(generalized feature vector)들로 지칭될 수 있다. 또한, 대표 특징 벡터들(θ1, θ2, ..., θc)은 참조 데이터로서 일반화된 유저 모델(640)을 구성할 수 있고, 온-디바이스 트레이닝을 위해 이용될 수 있다. 이러한 대표 특징 벡터들은 수십 내지 수백 개로, 1000개 이하, 500개 이하, 또는 100개 이하일 수 있으며, 사용자 디바이스가 현실적으로 딥러닝 트레이닝을 처리할 수 있는 정도의 데이터일 수 있다. 예를 들어, 약 10만명의 사용자들 각각으로부터 10개의 발화를 수집하여 약 100만개의 발화를 포함하는 데이터베이스를 구성할 수 있고, 해당 데이터베이스에 기초하여 약 100개의 대표 특징 벡터들이 생성될 수 있다.Feature vectors output by the
도 7은 일 실시예에 따른 사용자 인증을 위한 인증 장치의 동작을 나타낸 도면이다. 도 7을 참조하면, 인식 장치(710)는 테스트 데이터를 특징 추출기(720)에 입력한다. 특징 추출기(720)는 온-디바이스 트레이닝이 완료된 상태일 수 있다. 특징 추출기(720)는 테스트 데이터의 입력에 반응하여 테스트 특징 벡터를 출력한다. 테스트 데이터는 사용자 인증 프로세스에서 테스트 사용자에 의해 입력된 것일 수 있다. 테스트 사용자는 신원 미상인 상태로 인식 장치(710)를 이용하기 위해 인식 장치(710)에 사용자 인식을 시도하는 자이며, 정당한 사용자 또는 침입자(imposter)에 해당할 수 있다.7 is a diagram illustrating an operation of an authentication device for user authentication according to an exemplary embodiment. Referring to FIG. 7, the
인식 장치는 등록 사용자 데이터베이스(730)에서 등록 특징 벡터를 획득하고, 등록 특징 벡터와 테스트 특징 벡터를 비교하여 테스트 사용자에 관한 사용자 인식을 수행하고, 인식 결과를 생성할 수 있다. 예를 들어, 인식 장치(710)는 등록 특징 벡터와 테스트 특징 벡터 간의 거리를 결정하고, 결정된 거리와 임계치 간의 비교에 기초하여 인식 결과를 생성할 수 있다. 예를 들어, 등록 특징 벡터와 테스트 특징 벡터 간의 거리는 등록 특징 벡터와 테스트 특징 벡터 간의 코사인 거리, 유클리디안 거리 등에 기초하여 결정될 수 있다.The recognition device may obtain a registered feature vector from the registered
도 8 및 도 9는 일 실시예에 따른 온-디바이스 트레이닝 전후의 특징 벡터들의 분포 변화를 나타낸 도면이다. 도 8을 참조하면, 벡터 평면들(810, 820) 상에 등록 특징 벡터들이 표시되어 있다. 등록 특징 벡터들은 점 모양으로 표시되어 있으며, 동일한 무늬의 점들은 동일한 등록 사용자의 등록 특징 벡터들을 나타낸다. 벡터 평면(810)의 등록 특징 벡터들은 온-디바이스 트레이닝이 반영되지 않은 특징 추출기를 통해 획득된 것이고, 벡터 평면(820)의 등록 특징 벡터들은 온-디바이스 트레이닝이 반영된 특징 추출기를 통해 획득된 것이다. 도 8에 도시된 것처럼, 등록 특징 벡터들은 온-디바이스 트레이닝을 통해 등록 사용자들에게 특화되도록 재배치(remapping)될 수 있다. 이에 따라, 등록 사용자들, 특히 가족 구성원들과 같이 유사한 특징을 갖는 등록 사용자들이 서로 명확하게 식별될 수 있다.8 and 9 are diagrams illustrating a change in distribution of feature vectors before and after on-device training according to an embodiment. Referring to FIG. 8, registration feature vectors are displayed on
도 9를 참조하면, 벡터 평면들(910, 920)은 도 8의 벡터 평면들(810, 820)에 비해 침입자 특징 벡터들을 더 포함한다. 침입자 특징 벡터들은 별 모양으로 표시되어 있다. 벡터 평면(910)의 등록 특징 벡터들 및 침입자 특징 벡터들은 온-디바이스 트레이닝이 반영되지 않은 특징 추출기를 통해 획득된 것이고, 벡터 평면(920)의 등록 특징 벡터들 및 침입자 특징 벡터들은 온-디바이스 트레이닝이 반영된 특징 추출기를 통해 획득된 것이다. 도 9에 도시된 것처럼, 등록 특징 벡터들뿐만 아니라 침입자 특징 벡터들도 온-디바이스 트레이닝을 통해 등록 사용자들에게 특화되도록 재배치(remapping)될 수 있다. 이에 따라, 등록 사용자와 침입자가 서로 명확하게 구분되어 등록 사용자가 정확히 인증될 수 있다.Referring to FIG. 9, vector planes 910 and 920 further include intruder feature vectors compared to the vector planes 810 and 820 of FIG. 8. Intruder feature vectors are marked with a star. The registered feature vectors and the intruder feature vectors of the
도 10은 일 실시예에 따른 온-디바이스 트레이닝 기반의 인증 방법을 나타낸 플로우 차트이다. 도 10을 참조하면, 인증 장치는 단계(1010)에서 사용자 등록을 위해 정당한 사용자 에 의해 입력된 사용자 데이터를 수신하고, 단계(1020)에서 일반화된 사용자들에 대응하는 참조 데이터 및 상기 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고, 단계(1030)에서 사용자 데이터의 입력에 반응한 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하고, 단계(1040)에서 사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하고, 단계(1050)에서 테스트 데이터의 입력에 반응한 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하고, 단계(1060)에서 등록 특징 벡터와 테스트 특징 벡터 간의 비교에 기초하여 테스트 사용자에 관한 사용자 인식을 수행한다. 그 밖에, 온-디바이스 트레이닝 기반의 인증 방법에는 도 1 내지 도 9를 통해 설명된 사항이 적용될 수 있다.10 is a flowchart illustrating an authentication method based on on-device training according to an embodiment. Referring to FIG. 10, the authentication device receives user data input by a legitimate user for user registration in
도 11은 다른 일 실시예에 따른 온-디바이스 트레이닝 기반의 인증 방법을 나타낸 플로우 차트이다. 도 11을 참조하면, 인증 장치는 단계(1110)에서 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하는 특징 추출기를 획득하고, 단계(1120)에서 정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자들에 대응하는 참조 데이터에 기초하여 상기 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고, 단계(1130)에서 온-디바이스 트레이닝이 완료되면, 특징 추출기를 이용하여 사용자 인식을 수행한다. 그 밖에, 온-디바이스 트레이닝 기반의 인증 방법에는 도 1 내지 도 10을 통해 설명된 사항이 적용될 수 있다.11 is a flowchart illustrating an authentication method based on on-device training according to another embodiment. Referring to FIG. 11, the authentication device obtains a feature extractor including a first neural network having a fixed parameter and a second neural network having an adjustable parameter in
도 12는 일 실시예에 따른 온-디바이스 트레이닝 기반의 인증 장치를 나타낸 블록도이다. 도 12를 참조하면, 인식 장치(1200)는 사용자 데이터 및 테스트 데이터를 포함하는 입력 데이터를 수신하고, 입력 데이터와 관련된 뉴럴 네트워크의 동작을 처리할 수 있다. 예를 들어, 뉴럴 네트워크의 동작은 사용자 인식 동작을 포함할 수 있다. 인식 장치(1200)는 뉴럴 네트워크의 처리와 관련하여 본 명세서에 기술되거나 또는 도시된 하나 이상의 동작을 수행할 수 있고, 뉴럴 네트워크의 처리 결과를 사용자에게 제공할 수 있다.12 is a block diagram illustrating an authentication apparatus based on on-device training according to an embodiment. Referring to FIG. 12, the
인식 장치(1200)는 하나 이상의 프로세서(1210) 및 메모리(1220)를 포함할 수 있다. 메모리(1220)는 프로세서(1210)에 연결되고, 프로세서(1210)에 의해 실행가능한 명령어들, 프로세서(1210)가 연산할 데이터 또는 프로세서(1210)에 의해 처리된 데이터를 저장할 수 있다. 메모리(1220)는 비일시적인 컴퓨터 판독가능 매체, 예컨대 고속 랜덤 액세스 메모리 및/또는 비휘발성 컴퓨터 판독가능 저장 매체(예컨대, 하나 이상의 디스크 저장 장치, 플래쉬 메모리 장치, 또는 기타 비휘발성 솔리드 스테이트 메모리 장치)를 포함할 수 있다.The
프로세서(1210)는 도 1 내지 도 11을 참조하여 설명된 하나 이상의 동작을 실행하기 위한 명령어들을 실행할 수 있다. 일 실시예에 따르면, 메모리(1220)에 저장된 명령어가 프로세서(1210)에서 실행되면, 프로세서(1210)는 사용자 등록을 위해 정당한 사용자에 의해 입력된 사용자 데이터를 수신하고, 일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 사용자 데이터에 기초하여 특징 추출기(1225)에 관한 온-디바이스 트레이닝을 수행하고, 사용자 데이터의 입력에 반응한 특징 추출기(1225)의 출력에 기초하여 등록 특징 벡터를 결정하고, 사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하고, 테스트 데이터의 입력에 반응한 특징 추출기(1225)의 출력에 기초하여 테스트 특징 벡터를 결정하고, 등록 특징 벡터와 테스트 특징 벡터 간의 비교에 기초하여 테스트 사용자에 관한 사용자 인식을 수행할 수 있다.The
다른 일 실시예에 따르면, 메모리(1220)에 저장된 명령어가 프로세서(1210)에서 실행되면, 프로세서(1210)는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하는 특징 추출기(1225)를 획득하고, 정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자(generalized user)들에 대응하는 참조 데이터에 기초하여 특징 추출기(1225)에 관한 온-디바이스 트레이닝을 수행하고, 온-디바이스 트레이닝이 완료되면, 특징 추출기(1225)를 이용하여 사용자 인식을 수행할 수 있다.According to another embodiment, when an instruction stored in the
도 13은 일 실시예에 따른 사용자 디바이스를 나타낸 도면이다. 도 13을 참조하면, 사용자 디바이스(1300)는 입력 데이터를 수신하고, 입력 데이터와 관련된 뉴럴 네트워크의 동작을 처리할 수 있다. 예를 들어, 뉴럴 네트워크의 동작은 사용자 인식 동작을 포함할 수 있다. 사용자 디바이스(1300)는 도 1 내지 도 12를 통해 설명된 인식 장치를 포함하거나, 도 1 내지 도 12를 통해 설명된 인식 장치의 기능을 수행할 수 있다.13 is a diagram illustrating a user device according to an exemplary embodiment. Referring to FIG. 13, the
사용자 디바이스(1300)는 프로세서(1310), 메모리(1320), 카메라(1330), 저장 장치(1340), 입력 장치(1350), 출력 장치(1360) 및 네트워크 인터페이스(1370)를 포함할 수 있다. 프로세서(1310), 메모리(1320), 카메라(1330), 저장 장치(1340), 입력 장치(1350), 출력 장치(1360) 및 네트워크 인터페이스(1370)는 통신 버스(1380)를 통해 서로 통신할 수 있다. 예를 들어, 사용자 디바이스(1300)는 스마트 폰, 태블릿 PC, 노트북, 데스크톱 PC, 웨어러블 디바이스, 스마트 가전기기, 스마트 스피커, 스마트 카 등을 포함할 수 있다.The
프로세서(1310)는 사용자 디바이스(1300) 내에서 실행하기 위한 기능 및 명령어들을 실행한다. 예를 들어, 프로세서(1310)는 메모리(1320) 또는 저장 장치(1340)에 저장된 명령어들을 처리할 수 있다. 프로세서(1310)는 도 1 내지 도 12를 통하여 설명된 하나 이상의 동작을 수행할 수 있다.The
메모리(1320)는 뉴럴 네트워크의 동작을 처리하기 위한 정보를 저장한다. 메모리(1320)는 컴퓨터 판독가능한 저장 매체 또는 컴퓨터 판독가능한 저장 장치를 포함할 수 있다. 메모리(1320)는 프로세서(1310)에 의해 실행하기 위한 명령어들을 저장할 수 있고, 사용자 디바이스(1300)에 의해 소프트웨어 또는 애플리케이션이 실행되는 동안 관련 정보를 저장할 수 있다.The
카메라(1330)는 정지 영상, 비디오 영상, 또는 이들 모두를 촬영할 수 있다. 카메라(1330)는 사용자가 얼굴 인증을 시도하기 위해 입력하는 얼굴 영역을 촬영할 수 있다. 카메라(1330)는 객체들에 관한 깊이 정보를 포함하는 3D 영상을 제공할 수도 있다.The
저장 장치(1340)는 컴퓨터 판독가능한 저장 매체 또는 컴퓨터 판독가능한 저장 장치를 포함한다. 일 실시예에 따르면, 저장 장치(1340)는 메모리(1320)보다 더 많은 양의 정보를 저장하고, 정보를 장기간 저장할 수 있다. 예를 들어, 저장 장치(1340)는 자기 하드 디스크, 광 디스크, 플래쉬 메모리, 플로피 디스크 또는 이 기술 분야에서 알려진 다른 형태의 비휘발성 메모리를 포함할 수 있다.The
입력 장치(1350)는 키보드 및 마우스를 통한 전통적인 입력 방식, 및 터치 입력, 음성 입력, 및 이미지 입력과 같은 새로운 입력 방식을 통해 사용자로부터 입력을 수신할 수 있다. 예를 들어, 입력 장치(1350)는 키보드, 마우스, 터치 스크린, 마이크로폰, 또는 사용자로부터 입력을 검출하고, 검출된 입력을 사용자 디바이스(1300)에 전달할 수 있는 임의의 다른 장치를 포함할 수 있다. 입력 장치(1350)를 통해 사용자의 지문, 홍채, 발화(speech), 음성(voice), 및 오디오 등의 데이터가 입력될 수 있다.The
출력 장치(1360)는 시각적, 청각적 또는 촉각적인 채널을 통해 사용자에게 사용자 디바이스(1300)의 출력을 제공할 수 있다. 출력 장치(1360)는 예를 들어, 디스플레이, 터치 스크린, 스피커, 진동 발생 장치 또는 사용자에게 출력을 제공할 수 있는 임의의 다른 장치를 포함할 수 있다. 네트워크 인터페이스(1370)는 유선 또는 무선 네트워크를 통해 외부 장치와 통신할 수 있다.The
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(Field Programmable Gate Array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.The embodiments described above may be implemented as a hardware component, a software component, and/or a combination of a hardware component and a software component. For example, the apparatus, methods, and components described in the embodiments are, for example, a processor, a controller, an Arithmetic Logic Unit (ALU), a digital signal processor, a microcomputer, a Field Programmable Gate (FPGA). Array), Programmable Logic Unit (PLU), microprocessor, or any other device capable of executing and responding to instructions, such as one or more general purpose computers or special purpose computers. The processing device may execute an operating system (OS) and one or more software applications executed on the operating system. Further, the processing device may access, store, manipulate, process, and generate data in response to the execution of software. For the convenience of understanding, although it is sometimes described that one processing device is used, one of ordinary skill in the art, the processing device is a plurality of processing elements and/or a plurality of types of processing elements. It can be seen that it may include. For example, the processing device may include a plurality of processors or one processor and one controller. In addition, other processing configurations are possible, such as a parallel processor.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to operate as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or, to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited drawings, a person of ordinary skill in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order from the described method, and/or components such as systems, structures, devices, circuits, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.
Claims (31)
일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 상기 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하는 단계;
상기 사용자 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하는 단계;
사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하는 단계;
상기 테스트 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하는 단계; 및
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 비교에 기초하여 상기 테스트 사용자에 관한 사용자 인식을 수행하는 단계
를 포함하는 인식 방법.Receiving user data input by a legitimate user for user registration;
Performing on-device training on a feature extractor based on reference data corresponding to generalized users and the user data;
Determining a registered feature vector based on the output of the feature extractor in response to the input of the user data;
Receiving test data input by a test user for user recognition;
Determining a test feature vector based on an output of the feature extractor in response to the input of the test data; And
Performing user recognition on the test user based on a comparison between the registered feature vector and the test feature vector
Recognition method comprising a.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하고,
상기 온-디바이스 트레이닝에 의해 상기 제2 뉴럴 네트워크의 상기 조절가능한 파라미터가 조절되는,
인식 방법.The method of claim 1,
The feature extractor comprises a first neural network with fixed parameters and a second neural network with adjustable parameters,
The adjustable parameter of the second neural network is adjusted by the on-device training,
Recognition method.
상기 제1 뉴럴 네트워크는 대규모 사용자 데이터베이스에 기초하여 입력 데이터에서 특징을 추출하도록 사전에 트레이닝되는,
인식 방법.The method of claim 2,
The first neural network is pre-trained to extract features from input data based on a large user database,
Recognition method.
상기 온-디바이스 트레이닝을 수행하는 단계는
상기 사용자 데이터 및 상기 참조 데이터 각각에 서로 다른 값의 레이블들을 할당하는 단계; 및
상기 사용자 데이터 및 상기 참조 데이터의 입력에 반응한 상기 특징 추출기의 출력들과 상기 레이블들 간의 비교에 기초하여 상기 온-디바이스 트레이닝을 수행하는 단계
를 포함하는, 인식 방법.The method of claim 1,
The step of performing the on-device training
Allocating labels of different values to each of the user data and the reference data; And
Performing the on-device training based on a comparison between the labels and outputs of the feature extractor in response to the input of the user data and the reference data
Containing, recognition method.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하고,
상기 온-디바이스 트레이닝을 수행하는 단계는
상기 제1 뉴럴 네트워크에 상기 사용자 데이터를 입력하는 단계;
상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 상기 참조 데이터를 상기 제2 뉴럴 네트워크에 입력하는 단계; 및
상기 제2 뉴럴 네트워크의 출력에 기초하여 상기 온-디바이스 트레이닝을 수행하는 단계
를 포함하는, 인식 방법.The method of claim 1,
The feature extractor comprises a first neural network with fixed parameters and a second neural network with adjustable parameters,
The step of performing the on-device training
Inputting the user data into the first neural network;
Inputting an output of the first neural network and the reference data in response to an input of the user data to the second neural network; And
Performing the on-device training based on the output of the second neural network
Containing, recognition method.
상기 참조 데이터는 상기 일반화된 사용자들에 대응하는 일반화된 특징 벡터(generalized feature vector)들을 포함하고,
상기 일반화된 특징 벡터들은 다수의 일반 사용자들에 대응하는 특징 벡터들을 클러스터화하여 생성되는,
인식 방법.The method of claim 1,
The reference data includes generalized feature vectors corresponding to the generalized users,
The generalized feature vectors are generated by clustering feature vectors corresponding to a plurality of general users,
Recognition method.
상기 사용자 인식을 수행하는 단계는
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리 및 임계치 간의 비교에 기초하여 상기 사용자 인식을 수행하는 단계를 포함하는,
인식 방법.The method of claim 1,
The step of performing the user recognition
Comprising the step of performing the user recognition based on a comparison between a distance and a threshold value between the registration feature vector and the test feature vector,
Recognition method.
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리는 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 코사인 거리 및 유클리디안 거리 중 어느 하나에 기초하여 결정되는,
인식 방법.The method of claim 7,
The distance between the registration feature vector and the test feature vector is determined based on any one of a cosine distance and a Euclidean distance between the registration feature vector and the test feature vector,
Recognition method.
상기 등록 특징 벡터가 결정되면, 상기 결정된 등록 특징 벡터를 등록 사용자 데이터베이스에 저장하는 단계를 더 포함하는,
인식 방법.The method of claim 1,
If the registration feature vector is determined, further comprising the step of storing the determined registration feature vector in a registered user database,
Recognition method.
정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자(generalized user)들에 대응하는 참조 데이터에 기초하여 상기 특징 추출기에 관한 온-디바이스 트레이닝을 수행하는 단계; 및
상기 온-디바이스 트레이닝이 완료되면, 상기 특징 추출기를 이용하여 사용자 인식을 수행하는 단계
를 포함하는 인식 방법.Obtaining a feature extractor comprising a first neural network with fixed parameters and a second neural network with adjustable parameters;
Performing on-device training on the feature extractor based on user data corresponding to legitimate users and reference data corresponding to generalized users; And
When the on-device training is completed, performing user recognition using the feature extractor
Recognition method comprising a.
상기 온-디바이스 트레이닝에 의해 상기 제2 뉴럴 네트워크의 상기 조절가능한 파라미터가 조절되는, 인식 방법.The method of claim 10,
Wherein the adjustable parameter of the second neural network is adjusted by the on-device training.
상기 온-디바이스 트레이닝을 수행하는 단계는
상기 제1 뉴럴 네트워크에 상기 사용자 데이터를 입력하는 단계;
상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 상기 참조 데이터를 상기 제2 뉴럴 네트워크에 입력하는 단계; 및
상기 제2 뉴럴 네트워크의 출력에 기초하여 상기 온-디바이스 트레이닝을 수행하는 단계
를 포함하는, 인식 방법.The method of claim 10,
The step of performing the on-device training
Inputting the user data into the first neural network;
Inputting an output of the first neural network and the reference data in response to an input of the user data to the second neural network; And
Performing the on-device training based on the output of the second neural network
Containing, recognition method.
정당한 사용자에 의해 입력된 사용자 데이터를 획득하는 단계;
상기 사용자 데이터를 상기 제 1 뉴럴 네트워크에 입력하는 단계; 및
상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 미리 정해진 참조 데이터를 상기 제 2 뉴럴 네트워크에 입력하여 상기 제 2 뉴럴 네트워크의 파라미터를 조절하는 단계
를 포함하는 온-디바이스 트레이닝 방법.In the on-device training method of a feature extractor, comprising a first neural network having a pre-trained and fixed parameter and a second neural network having an adjustable parameter, and mounted on a user device,
Obtaining user data input by a legitimate user;
Inputting the user data into the first neural network; And
Adjusting a parameter of the second neural network by inputting an output of the first neural network and predetermined reference data in response to the input of the user data to the second neural network
On-device training method comprising a.
상기 참조 데이터는 1000개 이하의 특징 벡터들을 포함하는, 온-디바이스 트레이닝 방법.The method of claim 13,
The reference data includes 1000 or less feature vectors.
상기 참조 데이터는 500개 이하의 특징 벡터들을 포함하는, 온-디바이스 트레이닝 방법.The method of claim 13,
The reference data includes 500 or less feature vectors.
상기 참조 데이터는 100개 이하의 특징 벡터들을 포함하는, 온-디바이스 트레이닝 방법.The method of claim 13,
The reference data includes 100 or less feature vectors.
상기 참조 데이터는 상기 일반화된 사용자들에 대응하는 일반화된 특징 벡터(generalized feature vector)들을 포함하는,
온-디바이스 트레이닝 방법.The method of claim 13,
The reference data includes generalized feature vectors corresponding to the generalized users,
On-device training method.
상기 일반화된 특징 벡터들은 다수의 일반 사용자들에 대응하는 특징 벡터들을 클러스터화하여 생성되는,
온-디바이스 트레이닝 방법.The method of claim 17,
The generalized feature vectors are generated by clustering feature vectors corresponding to a plurality of general users,
On-device training method.
상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리
를 포함하고,
상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는
사용자 등록을 위해 정당한 사용자에 의해 입력된 사용자 데이터를 수신하고,
일반화된 사용자(generalized user)들에 대응하는 참조 데이터 및 상기 사용자 데이터에 기초하여 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고,
상기 사용자 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 등록 특징 벡터를 결정하고,
사용자 인식을 위해 테스트 사용자에 의해 입력된 테스트 데이터를 수신하고,
상기 테스트 데이터의 입력에 반응한 상기 특징 추출기의 출력에 기초하여 테스트 특징 벡터를 결정하고,
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 비교에 기초하여 상기 테스트 사용자에 관한 사용자 인식을 수행하는,
인식 장치.Processor; And
A memory containing instructions executable in the processor
Including,
When the instructions are executed in the processor, the processor
Receiving user data entered by a legitimate user for user registration,
On-device training for a feature extractor is performed based on reference data corresponding to generalized users and the user data,
Determining a registered feature vector based on the output of the feature extractor in response to the input of the user data,
Receive test data entered by a test user for user recognition,
Determining a test feature vector based on the output of the feature extractor in response to the input of the test data,
Performing user recognition on the test user based on a comparison between the registration feature vector and the test feature vector,
Recognition device.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하고,
상기 온-디바이스 트레이닝에 의해 상기 제2 뉴럴 네트워크의 상기 조절가능한 파라미터가 조절되는,
인식 장치.The method of claim 20,
The feature extractor comprises a first neural network with fixed parameters and a second neural network with adjustable parameters,
The adjustable parameter of the second neural network is adjusted by the on-device training,
Recognition device.
상기 제1 뉴럴 네트워크는 대규모 사용자 데이터베이스에 기초하여 입력 데이터에서 특징을 추출하도록 사전에 트레이닝되는,
인식 장치.The method of claim 21,
The first neural network is pre-trained to extract features from input data based on a large user database,
Recognition device.
상기 프로세서는
상기 사용자 데이터 및 상기 참조 데이터 각각에 서로 다른 값의 레이블들을 할당하고,
상기 사용자 데이터 및 상기 참조 데이터의 입력에 반응한 상기 특징 추출기의 출력들과 상기 레이블들 간의 비교에 기초하여 상기 온-디바이스 트레이닝을 수행하는,
인식 장치.The method of claim 20,
The processor is
Assigning labels of different values to each of the user data and the reference data,
Performing the on-device training based on a comparison between the labels and outputs of the feature extractor in response to the input of the user data and the reference data,
Recognition device.
상기 특징 추출기는 고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하고,
상기 프로세서는
상기 제1 뉴럴 네트워크에 상기 사용자 데이터를 입력하고,
상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 상기 참조 데이터를 상기 제2 뉴럴 네트워크에 입력하고,
상기 제2 뉴럴 네트워크의 출력에 기초하여 상기 온-디바이스 트레이닝을 수행하는,
인식 장치.The method of claim 20,
The feature extractor comprises a first neural network with fixed parameters and a second neural network with adjustable parameters,
The processor is
Inputting the user data into the first neural network,
Inputting the output of the first neural network and the reference data in response to the input of the user data into the second neural network,
Performing the on-device training based on the output of the second neural network,
Recognition device.
상기 참조 데이터는 상기 일반화된 사용자들에 대응하는 일반화된 특징 벡터(generalized feature vector)들을 포함하고,
상기 일반화된 특징 벡터들은 다수의 일반 사용자들에 대응하는 특징 벡터들을 클러스터화하여 생성되는,
인식 장치.The method of claim 20,
The reference data includes generalized feature vectors corresponding to the generalized users,
The generalized feature vectors are generated by clustering feature vectors corresponding to a plurality of general users,
Recognition device.
상기 프로세서는
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리 및 임계치 간의 비교에 기초하여 상기 사용자 인식을 수행하는,
인식 장치.The method of claim 20,
The processor is
Performing the user recognition based on a comparison between a distance and a threshold value between the registered feature vector and the test feature vector,
Recognition device.
상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 거리는 상기 등록 특징 벡터와 상기 테스트 특징 벡터 간의 코사인 거리 및 유클리디안 거리 중 어느 하나에 기초하여 결정되는,
인식 장치.The method of claim 26,
The distance between the registration feature vector and the test feature vector is determined based on any one of a cosine distance and a Euclidean distance between the registration feature vector and the test feature vector,
Recognition device.
상기 등록 특징 벡터가 결정되면, 상기 프로세서는 상기 결정된 등록 특징 벡터를 등록 사용자 데이터베이스에 저장하는,
인식 장치.The method of claim 20,
When the registration feature vector is determined, the processor stores the determined registration feature vector in a registered user database,
Recognition device.
상기 프로세서에서 실행가능한 명령어들을 포함하는 메모리
를 포함하고,
상기 명령어들이 상기 프로세서에서 실행되면, 상기 프로세서는
고정된 파라미터를 갖는 제1 뉴럴 네트워크 및 조절가능한 파라미터를 갖는 제2 뉴럴 네트워크를 포함하는 특징 추출기를 획득하고,
정당한 사용자에 대응하는 사용자 데이터 및 일반화된 사용자(generalized user)들에 대응하는 참조 데이터에 기초하여 상기 특징 추출기에 관한 온-디바이스 트레이닝을 수행하고,
상기 온-디바이스 트레이닝이 완료되면, 상기 특징 추출기를 이용하여 사용자 인식을 수행하는,
인식 장치.Processor; And
A memory containing instructions executable in the processor
Including,
When the instructions are executed in the processor, the processor
Obtaining a feature extractor comprising a first neural network with fixed parameters and a second neural network with adjustable parameters,
Perform on-device training on the feature extractor based on user data corresponding to legitimate users and reference data corresponding to generalized users,
When the on-device training is completed, performing user recognition using the feature extractor,
Recognition device.
상기 온-디바이스 트레이닝에 의해 상기 제2 뉴럴 네트워크의 상기 조절가능한 파라미터가 조절되는, 인식 장치.The method of claim 29,
The recognition apparatus, wherein the adjustable parameter of the second neural network is adjusted by the on-device training.
상기 프로세서는
상기 제1 뉴럴 네트워크에 상기 사용자 데이터를 입력하고,
상기 사용자 데이터의 입력에 반응한 상기 제1 뉴럴 네트워크의 출력 및 상기 참조 데이터를 상기 제2 뉴럴 네트워크에 입력하고,
상기 제2 뉴럴 네트워크의 출력에 기초하여 상기 온-디바이스 트레이닝을 수행하는,
인식 장치.The method of claim 29,
The processor is
Inputting the user data into the first neural network,
Inputting the output of the first neural network and the reference data in response to the input of the user data into the second neural network,
Performing the on-device training based on the output of the second neural network,
Recognition device.
Priority Applications (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/914,671 US11900246B2 (en) | 2019-09-02 | 2020-06-29 | Method and apparatus for recognizing user based on on-device training |
| CN202010637175.9A CN112446408B (en) | 2019-09-02 | 2020-07-03 | Method and apparatus for identifying users based on on-device training |
| JP2020136959A JP7534045B2 (en) | 2019-09-02 | 2020-08-14 | On-device training based user recognition method and apparatus |
| EP20192864.5A EP3798925A1 (en) | 2019-09-02 | 2020-08-26 | Method and apparatus for recognizing user based on on-device training |
| US18/403,893 US20240232619A9 (en) | 2019-09-02 | 2024-01-04 | Method and apparatus for recognizing user based on on-device training |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| KR1020190108199 | 2019-09-02 | ||
| KR20190108199 | 2019-09-02 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| KR20210026982A true KR20210026982A (en) | 2021-03-10 |
Family
ID=75148634
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| KR1020190127239A Pending KR20210026982A (en) | 2019-09-02 | 2019-10-14 | Method and apparatus for recognizing user based on on-device training |
Country Status (1)
| Country | Link |
|---|---|
| KR (1) | KR20210026982A (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115546528A (en) * | 2021-06-30 | 2022-12-30 | 华为技术有限公司 | Neural network training method, sample processing method and related equipment |
-
2019
- 2019-10-14 KR KR1020190127239A patent/KR20210026982A/en active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115546528A (en) * | 2021-06-30 | 2022-12-30 | 华为技术有限公司 | Neural network training method, sample processing method and related equipment |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102608470B1 (en) | Data recognition device and method and training device and method | |
| KR102439938B1 (en) | Multi-modal fusion method for user authentification and user authentification method | |
| EP3502968B1 (en) | Liveness test method and apparatus | |
| US10776470B2 (en) | Verifying identity based on facial dynamics | |
| KR102359556B1 (en) | User certification method using fingerprint image and generating method of coded model for user certification | |
| KR102434562B1 (en) | Method and apparatus for detecting fake fingerprint, method and apparatus for recognizing fingerprint | |
| JP2022141931A (en) | Liveness detection model training method and device, liveness detection method and device, electronic device, storage medium, and computer program | |
| KR102374747B1 (en) | Method and device to recognize object | |
| CN111382666B (en) | Device and method with user authentication | |
| KR101997479B1 (en) | Detecting method and apparatus of biometrics region for user authentication | |
| Giot et al. | Fast computation of the performance evaluation of biometric systems: Application to multibiometrics | |
| KR102167011B1 (en) | An image traning apparatus extracting hard negative samples being used to training a neural network based on sampling and a threshold adjusting adaptively and a method performed by the image training apparatus | |
| CN115147875A (en) | Anti-spoofing method and device | |
| KR20210062381A (en) | Liveness test method and liveness test apparatus, biometrics authentication method and biometrics authentication apparatus | |
| KR102547820B1 (en) | Method and apparatus for verifying user using multiple biometric verifiers | |
| KR102796793B1 (en) | Authentication method and apparatus using transformation model | |
| US20240232619A9 (en) | Method and apparatus for recognizing user based on on-device training | |
| US11335117B2 (en) | Method and apparatus with fake fingerprint detection | |
| KR102570070B1 (en) | Method and apparatus for user verification using generalized user model | |
| KR20200055836A (en) | Method and apparatus for classifying data, method and apparatus for training classifier | |
| KR20200083119A (en) | User verification device and method | |
| KR102261833B1 (en) | Method and apparatus for authentication, and method and apparatus for learning recognizer | |
| KR102205495B1 (en) | Method and apparatus for recognizing finger print | |
| CN112926574A (en) | Image recognition method, image recognition device and image recognition system | |
| KR20210026982A (en) | Method and apparatus for recognizing user based on on-device training |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20191014 |
|
| PG1501 | Laying open of application | ||
| A201 | Request for examination | ||
| PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20220823 Comment text: Request for Examination of Application Patent event code: PA02011R01I Patent event date: 20191014 Comment text: Patent Application |
|
| E902 | Notification of reason for refusal | ||
| PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20250415 Patent event code: PE09021S01D |