KR102612695B1 - 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 - Google Patents
변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 Download PDFInfo
- Publication number
- KR102612695B1 KR102612695B1 KR1020220136035A KR20220136035A KR102612695B1 KR 102612695 B1 KR102612695 B1 KR 102612695B1 KR 1020220136035 A KR1020220136035 A KR 1020220136035A KR 20220136035 A KR20220136035 A KR 20220136035A KR 102612695 B1 KR102612695 B1 KR 102612695B1
- Authority
- KR
- South Korea
- Prior art keywords
- learning
- binary
- neural network
- parameters
- vector
- Prior art date
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 230
- 238000000034 method Methods 0.000 title claims abstract description 198
- 238000012360 testing method Methods 0.000 title claims description 23
- 239000013598 vector Substances 0.000 claims abstract description 146
- 230000008569 process Effects 0.000 claims abstract description 123
- 230000008878 coupling Effects 0.000 claims abstract description 69
- 238000010168 coupling process Methods 0.000 claims abstract description 69
- 238000005859 coupling reaction Methods 0.000 claims abstract description 69
- 230000006870 function Effects 0.000 claims description 132
- 230000001537 neural effect Effects 0.000 claims description 48
- 238000000605 extraction Methods 0.000 claims description 37
- 238000012549 training Methods 0.000 claims description 32
- 230000004913 activation Effects 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000003068 static effect Effects 0.000 claims description 6
- 238000010998 test method Methods 0.000 claims description 4
- 238000001994 activation Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003909 pattern recognition Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 241000288673 Chiroptera Species 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000003709 image segmentation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Feedback Control In General (AREA)
- Image Analysis (AREA)
Abstract
Description
도 2a 및 2b는 본 발명의 일 실시예에 따른 변동성 FP 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 SSL 방법을 수행하는 데에 사용되는 변동성 FP 뉴럴넷 및 바이너리 뉴럴넷의 구성을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 변동성 FP 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 SSL 방법을 나타낸 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 변동성 FP 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 SSL 방법의 실시예들을 단계적으로 나타낸 도면이다.
도 5는 본 발명의 변동성 FP 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 SSL 방법의 각 실시예를 적용함에 따른 테스트 시의 정확도의 변화를 나타낸 그래프이다.
도 6a 및 도 6b는 각각 종래의 Supervised KL Div. 학습 방법 및 이에 SSL 방법을 적용하여 응용한 S2-BNN 학습 방법을 나타낸 도면이다.
Claims (24)
- 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습(Self-Supervised Learning, SSL) 방법에 있어서,
(a) 학습 장치가, 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 단계; 및
(b) 상기 학습 장치가, (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 단계
를 포함하되,
상기 (a) 단계는,
상기 학습 장치가, 상기 변동성 FP 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 특징부 파라미터가 기학습된 상태이며 불변하는 FP 특징부로 하여금, 상기 학습용 벡터에 상기 FP 연산의 적어도 일부인 FP 특징추출 연산을 인가하여 학습용 FP 특징벡터를 생성하도록 한 다음, (ii) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 기능부 파라미터가 기학습되지 않고 랜덤하게 초기화된 상태에서 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정을 통해 함께 학습되는 FP 기능부로 하여금, 상기 학습용 FP 특징벡터에 상기 FP 연산의 적어도 일부인 FP 기능 연산을 인가하여 상기 학습용 FP 출력을 생성하도록 하는 것을 특징으로 하는 방법. - 삭제
- 제1항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, 하기 수식에 따라 상기 커플링 로스를 생성하여 학습을 수행하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터 세트를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 연산을 의미하는 것을 특징으로 하는 방법. - 제1항에 있어서,
상기 (a) 단계는,
상기 학습 장치가, 상기 바이너리 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 바이너리 뉴럴넷에 포함된, 상기 바이너리 파라미터 중 적어도 일부인 바이너리 특징부 파라미터를 포함하는 바이너리 특징부로 하여금, 상기 학습용 벡터에 상기 바이너리 연산의 적어도 일부인 바이너리 특징추출 연산을 인가하여 학습용 바이너리 특징벡터를 생성하도록 한 다음, (ii) 상기 바이너리 뉴럴넷에 포함된, 상기 바이너리 파라미터 중 적어도 일부인 바이너리 기능부 파라미터를 포함하는 바이너리 기능부로 하여금, 상기 학습용 바이너리 특징벡터에 상기 바이너리 연산의 적어도 일부인 바이너리 기능 연산을 인가하여 상기 학습용 바이너리 출력을 생성하도록 하는 것을 특징으로 하는 방법. - 제4항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, (i) 상기 학습용 바이너리 출력 및 상기 학습용 FP 출력을 참조하여 KL 발산 로스를 생성하는 프로세스 및 (ii) 상기 학습용 FP 특징벡터 및 상기 학습용 바이너리 특징벡터를 참조하여 피처 유사성 로스를 생성하는 프로세스를 수행한 다음, 상기 KL 발산 로스 및 상기 피처 유사성 로스를 참조하여 상기 커플링 로스를 생성하는 것을 특징으로 하는 방법. - 제5항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, 하기 수식에 따라 상기 커플링 로스를 생성하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 기능 연산을 의미하고, 는 상기 바이너리 특징추출 연산을 의미하며, 는 기설정된 정적 밸런싱 파라미터를 의미하고, 는 피처 유사성 연산을 의미하며, 상기 평균 연산의 첫번째 텀(term)은 상기 KL 발산 로스, 두번째 텀(term)은 상기 피처 유사성 로스를 의미하는 것을 특징으로 하는 방법. - 제6항에 있어서,
상기 학습 장치가, 하기 수식에 따라 상기 피처 유사성 연산을 수행하되,
상기 수식에서, 및 는 임의의 입력 벡터이고, 는 및 간의 코사인 유사도를 의미하는 것을 특징으로 하는 방법. - 제5항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, 상기 KL 발산 로스 및 상기 피처 유사성 로스와 함께, Iteration 수에 따라 변동되는 동적 밸런싱 파라미터를 참조하여 상기 커플링 로스를 생성하는 것을 특징으로 하는 방법. - 제8항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, 하기 수식에 따라 상기 커플링 로스를 생성하여 학습을 수행하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 기능 연산을 의미하고, 는 상기 바이너리 특징추출 연산을 의미하며, 는 상기 동적 밸런싱 파라미터를 의미하고, 는 상기 Iteration 수를 의미하며, 는 피처 유사성 연산을 의미하고, 상기 평균 연산 내부의 첫번째 텀(term)은 상기 KL 발산 로스, 두번째 텀(term)은 상기 피처 유사성 로스를 의미하는 것을 특징으로 하는 방법. - 제9항에 있어서,
상기 (b) 단계는,
상기 학습 장치가, 하기 수식에 따라 상기 동적 밸런싱 파라미터를 계산하되,
상기 수식에서, 는 기설정된 최대 Iteration 수를 의미하고, 는 상기 최대 Iteration 시의 기설정된 밸런싱 파라미터를 의미하며, 는 최초 Iteration 시의 기설정된 밸런싱 파라미터를 의미하고, 가 에 비해 작은 것을 특징으로 하는 방법. - 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습(Self-Supervised Learning, SSL) 방법에 있어서,
(a) 학습 장치가, 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 단계; 및
(b) 상기 학습 장치가, (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 단계
를 포함하되,
멀티스테이지 학습 프로세스를 적용하는 경우,
상기 (a) 단계 이전에,
(a0) 상기 학습 장치가, 바이너리화된 액티베이션 값 및 바이너리화되지 않은 웨이트 값을 포함하는 상기 바이너리 파라미터를 획득하는 단계;
를 더 포함하고,
(c) 상기 학습 장치가, (i) 상기 커플링 로스를 사용하여 학습된 상기 바이너리 뉴럴넷의 상기 웨이트 값을 바이너리화함으로써 획득된 조정 바이너리 뉴럴넷으로 하여금, 제2 학습용 벡터에 적어도 하나의 조정 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 상기 변동성 FP 뉴럴넷의 상기 FP 파라미터 중 적어도 일부가 상기 커플링 로스를 사용하여 학습된 상태인 조정 변동성 FP 뉴럴넷으로 하여금, 상기 제2 학습용 벡터에 적어도 하나의 조정 FP 연산을 가하도록 하는 프로세스를 수행하는 단계; 및
(d) 상기 학습 장치가, (i) 상기 조정 바이너리 뉴럴넷으로부터 획득된 제2 학습용 바이너리 출력 및 (ii) 상기 조정 변동성 FP 뉴럴넷으로부터 획득된 제2 학습용 FP 출력을 참조하여 제2 커플링 로스를 생성한 후, 상기 제2 커플링 로스를 사용하여 상기 조정 바이너리 뉴럴넷의 조정 바이너리 파라미터 중 적어도 일부를 학습함으로써 멀티스테이지 학습 프로세스를 완료하는 단계
를 더 포함하는 것을 특징으로 하는 방법. - 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 자기지도학습(Self-Supervised Learning, SSL)된 바이너리 뉴럴넷을 테스트하는 방법에 있어서,
(a) (1) 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 프로세스; 및 (2) (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 프로세스를 수행함으로써 학습이 완료된 상태에서, 테스트용 벡터가 획득되면, 테스트 장치가, 상기 바이너리 뉴럴넷으로 하여금, 상기 바이너리 뉴럴넷에 적어도 하나의 바이너리 연산을 인가하도록 하는 단계; 및
(b) 상기 테스트 장치가, 상기 바이너리 뉴럴넷으로부터 획득된 테스트용 바이너리 출력을 사용자에게 제공하는 단계
를 포함하되,
상기 (a) 단계는,
상기 변동성 FP 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 특징부 파라미터가 기학습된 상태이며 불변하는 FP 특징부로 하여금, 상기 학습용 벡터에 상기 FP 연산의 적어도 일부인 FP 특징추출 연산을 인가하여 학습용 FP 특징벡터를 생성하도록 한 다음, (ii) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 기능부 파라미터가 기학습되지 않고 랜덤하게 초기화된 상태에서 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정을 통해 함께 학습되는 FP 기능부로 하여금, 상기 학습용 FP 특징벡터에 상기 FP 연산의 적어도 일부인 FP 기능 연산을 인가하여 상기 학습용 FP 출력을 생성하도록 하여 학습을 완료한 상태인 것을 특징으로 하는 방법. - 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습(Self-Supervised Learning, SSL) 장치에 있어서,
인스트럭션들을 저장하는 하나 이상의 메모리; 및
상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 프로세스; 및 (II) (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 프로세스를 수행하되,
상기 (I) 프로세스는,
상기 프로세서가, 상기 변동성 FP 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 특징부 파라미터가 기학습된 상태이며 불변하는 FP 특징부로 하여금, 상기 학습용 벡터에 상기 FP 연산의 적어도 일부인 FP 특징추출 연산을 인가하여 학습용 FP 특징벡터를 생성하도록 한 다음, (ii) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 기능부 파라미터가 기학습되지 않고 랜덤하게 초기화된 상태에서 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정을 통해 함께 학습되는 FP 기능부로 하여금, 상기 학습용 FP 특징벡터에 상기 FP 연산의 적어도 일부인 FP 기능 연산을 인가하여 상기 학습용 FP 출력을 생성하도록 하는 것을 특징으로 하는 장치. - 삭제
- 제13항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 하기 수식에 따라 상기 커플링 로스를 생성하여 학습을 수행하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터 세트를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 연산을 의미하는 것을 특징으로 하는 장치. - 제13항에 있어서,
상기 (I) 프로세스는,
상기 프로세서가, 상기 바이너리 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 바이너리 뉴럴넷에 포함된, 상기 바이너리 파라미터 중 적어도 일부인 바이너리 특징부 파라미터를 포함하는 바이너리 특징부로 하여금, 상기 학습용 벡터에 상기 바이너리 연산의 적어도 일부인 바이너리 특징추출 연산을 인가하여 학습용 바이너리 특징벡터를 생성하도록 한 다음, (ii) 상기 바이너리 뉴럴넷에 포함된, 상기 바이너리 파라미터 중 적어도 일부인 바이너리 기능부 파라미터를 포함하는 바이너리 기능부로 하여금, 상기 학습용 바이너리 특징벡터에 상기 바이너리 연산의 적어도 일부인 바이너리 기능 연산을 인가하여 상기 학습용 바이너리 출력을 생성하도록 하는 것을 특징으로 하는 장치. - 제16항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, (i) 상기 학습용 바이너리 출력 및 상기 학습용 FP 출력을 참조하여 KL 발산 로스를 생성하는 프로세스 및 (ii) 상기 학습용 FP 특징벡터 및 상기 학습용 바이너리 특징벡터를 참조하여 피처 유사성 로스를 생성하는 프로세스를 수행한 다음, 상기 KL 발산 로스 및 상기 피처 유사성 로스를 참조하여 상기 커플링 로스를 생성하는 것을 특징으로 하는 장치. - 제17항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 하기 수식에 따라 상기 커플링 로스를 생성하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 기능 연산을 의미하고, 는 상기 바이너리 특징추출 연산을 의미하며, 는 기설정된 정적 밸런싱 파라미터를 의미하고, 는 피처 유사성 연산을 의미하며, 상기 평균 연산의 첫번째 텀(term)은 상기 KL 발산 로스, 두번째 텀(term)은 상기 피처 유사성 로스를 의미하는 것을 특징으로 하는 장치. - 제18항에 있어서,
상기 프로세서가, 하기 수식에 따라 상기 피처 유사성 연산을 수행하되,
상기 수식에서, 및 는 임의의 입력 벡터이고, 는 및 간의 코사인 유사도를 의미하는 것을 특징으로 하는 장치. - 제17항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 상기 KL 발산 로스 및 상기 피처 유사성 로스와 함께, Iteration 수에 따라 변동되는 동적 밸런싱 파라미터를 참조하여 상기 커플링 로스를 생성하는 것을 특징으로 하는 장치. - 제20항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 하기 수식에 따라 상기 커플링 로스를 생성하여 학습을 수행하되,
상기 수식에서, 는 상기 FP 기능부 파라미터를 의미하고, 는 상기 바이너리 파라미터를 의미하며, 는 평균 연산을 의미하고, 는 상기 학습용 벡터를 의미하며, 는 상기 학습용 벡터를 포함하는 학습 데이터를 의미하고, 은 KL 발산 로스 함수를 의미하며, 는 상기 FP 기능 연산을 의미하고, 는 상기 FP 특징추출 연산을 의미하며, 는 상기 바이너리 기능 연산을 의미하고, 는 상기 바이너리 특징추출 연산을 의미하며, 는 상기 동적 밸런싱 파라미터를 의미하고, 는 상기 Iteration 수를 의미하며, 는 피처 유사성 연산을 의미하고, 상기 평균 연산 내부의 첫번째 텀(term)은 상기 KL 발산 로스, 두번째 텀(term)은 상기 피처 유사성 로스를 의미하는 것을 특징으로 하는 장치. - 제21항에 있어서,
상기 (II) 프로세스는,
상기 프로세서가, 하기 수식에 따라 상기 동적 밸런싱 파라미터를 계산하되,
상기 수식에서, 는 기설정된 최대 Iteration 수를 의미하고, 는 상기 최대 Iteration 시의 기설정된 밸런싱 파라미터를 의미하며, 는 최초 Iteration 시의 기설정된 밸런싱 파라미터를 의미하고, 가 에 비해 작은 것을 특징으로 하는 장치. - 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습(Self-Supervised Learning, SSL) 장치에 있어서,
인스트럭션들을 저장하는 하나 이상의 메모리; 및
상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 프로세스; 및 (II) (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 프로세스를 수행하되,
멀티스테이지 학습 프로세스를 적용하는 경우,
상기 (I) 프로세스 이전에,
(I0) 상기 프로세서가, 바이너리화된 액티베이션 값 및 바이너리화되지 않은 웨이트 값을 포함하는 상기 바이너리 파라미터를 획득하는 프로세스;
를 더 수행하고,
(III) 상기 프로세서가, (i) 상기 커플링 로스를 사용하여 학습된 상기 바이너리 뉴럴넷의 상기 웨이트 값을 바이너리화함으로써 획득된 조정 바이너리 뉴럴넷으로 하여금, 제2 학습용 벡터에 적어도 하나의 조정 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 상기 변동성 FP 뉴럴넷의 상기 FP 파라미터 중 적어도 일부가 상기 커플링 로스를 사용하여 학습된 상태인 조정 변동성 FP 뉴럴넷으로 하여금, 상기 제2 학습용 벡터에 적어도 하나의 조정 FP 연산을 가하도록 하는 프로세스를 수행하는 프로세스; 및 (IV) 상기 프로세서가, (i) 상기 조정 바이너리 뉴럴넷으로부터 획득된 제2 학습용 바이너리 출력 및 (ii) 상기 조정 변동성 FP 뉴럴넷으로부터 획득된 제2 학습용 FP 출력을 참조하여 제2 커플링 로스를 생성한 후, 상기 제2 커플링 로스를 사용하여 상기 조정 바이너리 뉴럴넷의 조정 바이너리 파라미터 중 적어도 일부를 학습함으로써 멀티스테이지 학습 프로세스를 완료하는 프로세스를 더 수행하는 것을 특징으로 하는 장치. - 변동성 플로팅 포인트(Floating Point, FP) 뉴럴넷을 이동 표적으로 사용하여 자기지도학습(Self-Supervised Learning, SSL)된 바이너리 뉴럴넷의 테스트 장치에 있어서,
인스트럭션들을 저장하는 하나 이상의 메모리; 및
상기 인스트럭션들을 수행하도록 설정된 하나 이상의 프로세서를 포함하되, 상기 프로세서는, (I) (1) 학습용 벡터가 획득되면, (i) 적어도 일부가 바이너리 형식인 바이너리 파라미터를 포함하는 상기 바이너리 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스 및 (ii) 다른 일부가 SSL 방법론에 따라 학습된 FP 형식의 FP 파라미터를 포함하되, 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정에서 상기 FP 파라미터 중 적어도 일부가 조정되는 상기 변동성 FP 뉴럴넷으로 하여금, 상기 학습용 벡터에 적어도 하나의 FP 연산을 가하도록 하는 프로세스를 수행하는 프로세스; 및 (2) (i) 상기 바이너리 뉴럴넷으로부터 획득된 학습용 바이너리 출력 및 (ii) 상기 변동성 FP 뉴럴넷으로부터 획득된 학습용 FP 출력을 참조하여 상기 바이너리 뉴럴넷 및 상기 변동성 FP 뉴럴넷 간의 커플링 로스를 생성한 후, 상기 커플링 로스를 사용하여 상기 바이너리 파라미터 중 적어도 일부를 학습하면서 상기 FP 파라미터 중 적어도 일부를 학습하는 프로세스를 수행함으로써 학습이 완료된 상태에서, 테스트용 벡터가 획득되면, 상기 바이너리 뉴럴넷으로 하여금, 상기 바이너리 뉴럴넷에 적어도 하나의 바이너리 연산을 인가하도록 하는 프로세스; 및 (II) 상기 바이너리 뉴럴넷으로부터 획득된 테스트용 바이너리 출력을 사용자에게 제공하는 프로세스를 수행하도록 설정된 것을 특징으로 하되,
상기 (I) 프로세스는,
상기 프로세서가, 상기 변동성 FP 뉴럴넷에 상기 학습용 벡터를 입력하여, (i) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 특징부 파라미터가 기학습된 상태이며 불변하는 FP 특징부로 하여금, 상기 학습용 벡터에 상기 FP 연산의 적어도 일부인 FP 특징추출 연산을 인가하여 학습용 FP 특징벡터를 생성하도록 한 다음, (ii) 상기 변동성 FP 뉴럴넷에 포함된, 상기 FP 파라미터 중 적어도 일부인 FP 기능부 파라미터가 기학습되지 않고 랜덤하게 초기화된 상태에서 상기 바이너리 파라미터 중 적어도 일부를 학습하는 과정을 통해 함께 학습되는 FP 기능부로 하여금, 상기 학습용 FP 특징벡터에 상기 FP 연산의 적어도 일부인 FP 기능 연산을 인가하여 상기 학습용 FP 출력을 생성하도록 하여 학습을 완료한 상태인 것을 특징으로 하는 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220136035A KR102612695B1 (ko) | 2022-10-20 | 2022-10-20 | 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 |
PCT/KR2023/007657 WO2024085337A1 (ko) | 2022-10-20 | 2023-06-02 | 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220136035A KR102612695B1 (ko) | 2022-10-20 | 2022-10-20 | 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102612695B1 true KR102612695B1 (ko) | 2023-12-13 |
Family
ID=89157643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020220136035A KR102612695B1 (ko) | 2022-10-20 | 2022-10-20 | 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR102612695B1 (ko) |
WO (1) | WO2024085337A1 (ko) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019135274A1 (ja) * | 2018-01-04 | 2019-07-11 | 株式会社Abeja | ニューラル・ネットワークを有するデータ処理システム |
WO2020061884A1 (en) * | 2018-09-27 | 2020-04-02 | Intel Corporation | Composite binary decomposition network |
KR20200086581A (ko) * | 2019-01-09 | 2020-07-17 | 삼성전자주식회사 | 뉴럴 네트워크 양자화를 위한 방법 및 장치 |
CN112308210B (zh) * | 2020-10-27 | 2023-04-07 | 中国人民解放军战略支援部队信息工程大学 | 基于神经网络的跨架构二进制函数相似性检测方法及系统 |
-
2022
- 2022-10-20 KR KR1020220136035A patent/KR102612695B1/ko active IP Right Grant
-
2023
- 2023-06-02 WO PCT/KR2023/007657 patent/WO2024085337A1/ko unknown
Non-Patent Citations (1)
Title |
---|
Zhiqiang Shen et al., "S2-BNN: Bridging the Gap Between Self-Supervised Real and 1-bit Neural Networks via Guided Distribution Calibration," arXiv:2102.08946v2 [cs.CV] 21 Jun 2021 (2021.06.21.)* * |
Also Published As
Publication number | Publication date |
---|---|
WO2024085337A1 (ko) | 2024-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Lezcano-Casado et al. | Cheap orthogonal constraints in neural networks: A simple parametrization of the orthogonal and unitary group | |
US10325181B2 (en) | Image classification method, electronic device, and storage medium | |
Sohn et al. | Search based repair of deep neural networks | |
CN112633311A (zh) | 利用输入数据结构的高效黑盒对抗性攻击 | |
US20210124999A1 (en) | System and method for generating adversarial examples | |
Huang et al. | Orthogonal least squares algorithm for training cascade neural networks | |
KR20190134965A (ko) | 뉴럴 네트워크 학습 방법 및 그 시스템 | |
Liu et al. | A meaningful learning method for zero-shot semantic segmentation | |
KR102612695B1 (ko) | 변동성 플로팅 포인트 뉴럴넷을 이동 표적으로 사용하여 바이너리 뉴럴넷을 학습하는 자기지도학습 방법 및 장치, 그리고 이를 이용한 테스트 방법 및 테스트 장치 | |
KR20220058189A (ko) | 뉴럴 네트워크를 이용한 분류 방법 및 장치 | |
Shu et al. | Residual stacking of rnns for neural machine translation | |
US7933449B2 (en) | Pattern recognition method | |
CN111967499B (zh) | 基于自步学习的数据降维方法 | |
Sansone | The Triad of Failure Modes and a Possible Way Out | |
Ozay et al. | Training cnns with normalized kernels | |
Yildiz et al. | Iterative ensemble pseudo-labeling for convolutional neural networks | |
CN113449304A (zh) | 一种基于策略梯度降维的恶意软件检测方法及装置 | |
US20240281642A1 (en) | High frequency sensitive neural network | |
KR20210009059A (ko) | 심층 콘볼루션 신경망의 학습 방법 및 그 장치 | |
US11829861B2 (en) | Methods and apparatus for extracting data in deep neural networks | |
Radu et al. | Testing the Robustness of Deepfake Detectors | |
US20240290065A1 (en) | Method for multimodal embedding and system therefor | |
CN111858893B (zh) | 句子对匹配方法、装置和计算机设备和存储介质 | |
US20240185037A1 (en) | Method for generating time series data and system therefor | |
CN118093436B (zh) | 深度学习算子的随机测试方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20221020 |
|
PA0201 | Request for examination | ||
PA0302 | Request for accelerated examination |
Patent event date: 20221121 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination Patent event date: 20221020 Patent event code: PA03021R01I Comment text: Patent Application |
|
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20230822 Patent event code: PE09021S01D |
|
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20231205 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20231207 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20231208 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |