KR102242937B1 - 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법 - Google Patents

회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법 Download PDF

Info

Publication number
KR102242937B1
KR102242937B1 KR1020190002300A KR20190002300A KR102242937B1 KR 102242937 B1 KR102242937 B1 KR 102242937B1 KR 1020190002300 A KR1020190002300 A KR 1020190002300A KR 20190002300 A KR20190002300 A KR 20190002300A KR 102242937 B1 KR102242937 B1 KR 102242937B1
Authority
KR
South Korea
Prior art keywords
regression analysis
data
imitation
unit
learning
Prior art date
Application number
KR1020190002300A
Other languages
English (en)
Other versions
KR102242937B9 (ko
KR20200086102A (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 KR1020190002300A priority Critical patent/KR102242937B1/ko
Publication of KR20200086102A publication Critical patent/KR20200086102A/ko
Application granted granted Critical
Publication of KR102242937B1 publication Critical patent/KR102242937B1/ko
Publication of KR102242937B9 publication Critical patent/KR102242937B9/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06N3/082Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections

Landscapes

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

Abstract

일 실시예에 따른 회귀 분석 장치는 사전 학습된 모방 알고리즘을 기초로 실제(real) 데이터를 모방하는 모방(fake) 데이터를 생성하는 생성부와, 소정의 데이터가 입력되면, 사전 학습된 판별 알고리즘을 기초로 상기 입력받은 데이터가 상기 실제 데이터인지 아니면 상기 모방 데이터인지를 판별하는 판별부와, 소정의 동작을 수행하도록 상기 실제 데이터 및 상기 모방 데이터를 이용하여 사전 학습되어서, 인자(argument)가 입력되면 상기 입력된 인자를 기초로 수행된 상기 동작의 결과를 출력하는 회귀 분석부를 포함한다.

Description

회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법{APPARATUS FOR EXECUTING REGRESSION ANALYSIS AND METHOD FOR CREATING THE SAME}
본 발명은 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법에 관한 것이다.
컴퓨터 등에 설치된 어플리케이션과 같은 프로그램의 성능은 다양한 방법에 의해 향상될 수 있다. 예컨대 프로그램에 포함된 함수를 가속 장치로 대체하는 방법이 있다. 가속 장치는 해당 함수와 동일한 동작을 해당 함수보다 더 빠르게 수행할 수 있다. 따라서, 이러한 방법에 따르면 프로그램의 처리 속도가 향상될 수 있다.
이러한 가속 장치는 다양한 방식에 따라 설계될 수 있다. 예컨대 개발자가 대체 대상인 함수의 알고리즘을 직접 분석한 뒤, 이러한 분석 내용을 기초로 개발자가 직접 RTL(resistor transistor logic) 레벨에서 가속 장치를 설계하는 제1 방식이 있다. 이와 달리 개발자가 아닌 별도의 프로그램이 설계 주체가 되어서, 대체 대상인 함수의 알고리즘을 분석하고 이러한 분석 내용을 기초로 RTL 레벨로 가속 장치를 설계하는 제2 방식이 있다.
한국공개특허공보 10-2018-0120478호 (2018.11.06. 공개)
본 발명의 해결하고자 하는 과제는, 기존보다 정확한 성능을 갖는 회귀 분석 장치를 제공하는 것이다.
아울러, 이러한 회귀 분석 장치를 활용하여서 짧은 시간 내에 시행 착오 없이 최대한의 성능을 갖는 가속 장치를 제공하는 것이다.
다만, 본 발명의 해결하고자 하는 과제는 이상에서 언급한 것으로 제한되지 않으며, 언급되지 않은 또 다른 해결하고자 하는 과제는 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
일 실시예에 따른 회귀 분석 장치는 사전 학습된 모방 알고리즘을 기초로 실제(real) 데이터를 모방하는 모방(fake) 데이터를 생성하는 생성부와, 소정의 데이터가 입력되면, 사전 학습된 판별 알고리즘을 기초로 상기 입력받은 데이터가 상기 실제 데이터인지 아니면 상기 모방 데이터인지를 판별하는 판별부와, 소정의 동작을 수행하도록 상기 실제 데이터 및 상기 모방 데이터를 이용하여 사전 학습되어서, 인자(argument)가 입력되면 상기 입력된 인자를 기초로 수행된 상기 동작의 결과를 출력하는 회귀 분석부를 포함한다
일 실시예에 따른 프로세서를 포함하는 컴퓨팅 장치가 수행하는 회귀 분석 장치의 생성 방법은 입력받은 소정의 데이터가 실제 데이터인지 아니면 상기 실제 데이터를 모방하는 모방 데이터인지를 판별하는데에 이용되는 판별 알고리즘을 학습시키는 단계와, 상기 모방 데이터의 생성에 이용되는 모방 알고리즘을, 상기 판별 알고리즘을 기초로 수행된 판별 결과를 반영하여서 학습시키는 단계와, 상기 실제 데이터 및 상기 학습이 완료된 모방 알고리즘을 이용하여 생성된 모방 데이터를 이용하여서, 인자가 입력되면 상기 회귀 분석 장치에 포함된 회귀 분석부가 상기 입력된 인자를 기초로 소정의 동작을 수행하여서 결과를 출력하도록 학습시키는 단계를 포함하여서 수행된다.
일 실시예에 따른 회귀 분석 장치는 함수의 가속 장치로서 구현될 수 있는데, 인자와 결과를 쌍으로서 복수 개 미리 저장하고 있다가 회귀 분석이 필요한 경우에도 회귀 분석 없이 이렇게 저장된 정보를 회귀 분석된 결과로서 제공할 수 있다. 즉, 보다 가속 성능이 향상된 가속 장치의 제공이 가능해진다.
뿐만 아니라 이러한 회귀 분석 장치는 실제 데이터 뿐만 아니라 GAN에 의해 정교하게 생성된 모방 데이터를 이용해서 학습될 수 있다. 따라서, 실제 데이터만으로 학습된 회귀 분석 장치에 비해 보다 정확한 결과를 도출하는 회귀 분석 장치의 제공이 가능하다.
아울러, 이러한 회귀 분석 장치는 딥러닝을 이용하여 학습 내지 생성될 수 있다. 따라서 종래에 설계자가 직접 생성하는 경우에 비해 빠르면서도 정확한 회귀 분석 장치의 제공이 가능해진다.
도 1은 복수 개의 함수를 포함하는 소정의 프로그램을 개념적으로 도시하고 있는 블록도이다.
도 2는 도 1에 도시된 프로그램에서 복수 개의 함수 각각이 실행되는 순서를 예시적으로 도시하고 있는 순서도이다.
도 3에는 소정의 함수를 대체하는 일 실시예에 따른 회귀 분석 장치(100)의 구성이 예시적으로 도시되어 있다.
도 4는 도 3에 도시된 생성부와 판별부에 대한 학습 과정을 개념적으로 도시하고 있는 개념도이다.
도 5는 도 3에 도시된 생성부, 판별부 및 회귀 분석부에 대한 학습 과정을 개념적으로 도시하고 있는 개념도이다.
도 6은 일 실시예에 따른 회귀 분석 장치의 생성 과정을 예시적으로 도시하고 있는 순서도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
도 1은 복수 개의 함수(11 내지 13)를 포함하는 소정의 프로그램(10)을 개념적으로 도시하고 있는 블록도이다.
도 1에 도시된 프로그램(10)은 개인용 컴퓨터, 서버, 클라우드, 스마트폰이나 패드 등과 같은 전자 장치에 설치 가능한 어플리케이션 등일 수 있다. 아울러 각각의 함수(11 내지 13)는 이러한 프로그램(10)에서 소정의 기능을 수행하도록 구현된 모듈을 나타낸다. 각각의 함수(11 내지 13)에 인자(argument)가 입력되면 내부에 탑재된 알고리즘에 따라 결과(return)가 출력된다.
도 2는 도 1에 도시된 프로그램(10)에서 복수 개의 함수(11 내지 13) 각각이 실행되는 순서를 예시적으로 도시하고 있는 순서도이다. 도 2를 참조하면, 복수 개의 함수(11 내지 13) 중 제1 함수(11)가 먼저 실행되고(S11), 이어서 제2 함수(12)가 실행되며(S12), 마지막으로 제3 함수(13)가 실행된다(S13).
프로그램(10)의 실행 시간은 각 함수(11 내지 13)의 실행 시간의 합으로서 도출될 수 있다. 예컨대 제1 함수(11)의 실행 시간이 10초, 제2 함수(12)의 실행 시간이 1초, 제3 함수(13)의 실행 시간이 3초라면, 프로그램(10)의 실행 시간은 14초(10초+1초+3초)가 된다. 이러한 프로그램(10)의 성능은 다양한 방법에 의해 향상될 수 있다. 예컨대 프로그램(10)에 포함된 제1 함수(11)를, 이러한 제1 함수(11)와 동일한 동작을 제1 함수(11)보다 더 빠르게 수행하는 소정의 가속 장치로 대체하는 방법이 있다.
이러한 가속 장치는 일 실시예에 따른 회귀 분석 장치에 의해 구현 가능하다. 이하는 이러한 회귀 분석 장치에 대해 살펴보도록 한다.
도 3에는 소정의 함수(14)를 대체하는 일 실시예에 따른 회귀 분석 장치(100)의 구성이 예시적으로 도시되어 있다. 소정의 함수(14)는 도 1에 도시된 함수들(11 내지 13)와 같이 소정의 프로그램에 구현된 모듈이다. 도 3을 참조하면, 함수(14)는 인자(argument)를 입력(X)받고 결과(result)를 출력(Y)한다. 회귀 분석 장치(100) 또한 인자를 입력(X)받고 결과를 출력(Y)한다.
여기서 회귀 분석 장치(100)는, 함수(14)가 인자를 입력받아서 결과를 출력하기까지의 소요 시간보다 더 짧은 시간에 동일한 결과를 출력할 수 있다. 따라서 회귀 분석 장치(100)는 함수(14)를 대체하는 가속 장치로서 활용될 수 있다.
이러한 회귀 분석 장치(100)의 구성에 대해 살펴보기로 한다. 회귀 분석 장치(100)는 회귀 분석부(regression analysis)(110), 해시 함수부(hash function)(120), 저장부(130), 제어부(140), 생성부(generator, G)(150) 및 판별부(discriminator, D)(160)를 포함한다. 각각의 구성은 이하에서 설명될 기능을 수행하도록 프로그램된 명령어를 저장하는 메모리 또는 이러한 명령어를 실행하는 마이크로프로세서에 의해 구현 가능하다. 다만, 도 3은 회귀 분석 장치(100)의 구성을 예시적으로 나타낸 것에 불과하므로, 회귀 분석 장치(100)의 구성이 도 3에 도시된 것으로 한정 해석되는 것은 아니다.
회귀 분석부(110)에 대해 먼저 살펴보기로 한다. 회귀 분석부(110)에는 회귀 분석(regression analysis) 알고리즘, 즉 독립 변인(인자(argument))과 종속 변인(결과(result)) 간의 연관 관계를 나타내는 회귀 분석 알고리즘이 탑재되어 있다. 따라서 인자(argument)가 회귀 분석부(110)에 입력(X)되면 이러한 회귀 분석 알고리즘에 따라 결과(result)가 출력(Y)된다.
이러한 회귀 분석 알고리즘은 딥러닝에 의해 생성된 것일 수 있다. 예컨대 인자(argument)와 결과(result)로 이루어진 쌍(pair) 복수 개가 학습용 데이터로서 회귀 분석부(110)에 제공되면, 딥러닝이 수행되면서 이러한 회귀 분석 알고리즘이 학습될 수 있다. 이 때, 전술한 학습용 데이터로서 실제(real) 데이터와 모방(fake) 데이터가 회귀 분석부(110)에 제공될 수 있는데, 이에 대해서는 후술하기로 한다.
다음으로, 해시 함수부(120)는 문자를 입력받아서 숫자로 변환하는, 즉 해시 함수를 구현한 모듈이다. 이러한 해시 함수부(120)는 인자(argument)가 입력되면 이를 숫자로 변환시켜서 저장부(130)에 전달한다. 이러한 해시 함수부(120)는 MD5, SHA-1, SHA-256 등을 해시 함수로서 채용할 수 있으며, 다만 이에 한정되는 것은 아니다.
저장부(130)는 데이터를 저장한다. 예컨대 저장부(130)는 인자의 해시값 및 이러한 해시값에 대응되는 결과(result)를 쌍(pair)으로서 복수 개를 미리 저장할 수 있다. 저장부(130)는 소정의 인자에 대한 해시값을 전달받으면, 해당 해시값에 대응되는 결과(result)가 자신에게 저장되어 있는지를 살펴본 뒤, 있다면 해당 결과(result)를 리턴하고 없다면 없다는 결과를 리턴할 수 있다.
제어부(140)는 인자(argument) 및 이에 대응되는 결과(result)가 저장부(120)에 저장되어 있는지를 확인한 뒤, 저장되어 있다면 해당 결과(result)를 출력(Y)시킨다. 반면 저장부(120)에 저장되어 있지 않다면 제어부(140)는 해당 인자를 다시 회귀 분석부(110)에 전달하며, 이에 따라 회귀 분석부(110)는 회귀 분석을 수행해서 그 결과(result)를 출력(Y)시킨다.
즉, 인자에 대응되는 결과가 저장부(120)에 저장되어 있다면 회귀 분석부(110)는 회귀 분석을 수행하지 않는다. 여기서, 저장부(120)에 결과가 저장되어 있는지를 확인해서 저장된 결과를 출력시킬 때까지의 소요 시간이 회귀 분석부(110)가 회귀 분석을 수행해서 결과를 출력시킬 때까지의 소요 시간보다 현저하게 짧다. 따라서, 이러한 제어부(140)와 저장부(120)를 채용할 경우, 가속 장치로서 동작하는 회귀 분석 장치(100)의 수행 시간은 제어부(140)와 저장부(120)를 채용하지 않는 경우에 비해 보다 감축될 수 있다.
한편, 전술한 바와 같이 회귀 분석부(110)에 탑재된 회귀 분석 알고리즘은 학습용 데이터로서 실제(real) 데이터와 모방(fake) 데이터를 제공받아서 학습된 것일 수 있다.
여기서 실제 데이터란 실제로 생성된 데이터를 나타낸다. 예컨대 일 실시예에서 실제 데이터는, 가속 장치에 의해 대체될 대상인 함수(14)에 실제로 인자(argument)를 입력시키고 그에 따라 출력된 결과(result)를 통해 획득된 데이터, 즉 실제 '인자, 결과'를 지칭할 수 있다. 실시예에 따라 이러한 실제 데이터에는 인자가 입력되어서 결과가 출력될 때까지의 '소요 시간'도 함께 포함될 수 있다.
전술한 실제 데이터는 다양한 방법에 의해 획득될 수 있다. 예컨대 대체 대상인 함수의 주소(function address)를 저장했다가 해당 함수가 호출되는지를 저장된 주소를 모니터링하면서, 해당 함수가 호출되면 그 때마다 인자와 결과를 저장하되 중복된 값은 저장하지 않으며, 또한 이러한 저장 과정을 일정 횟수 반복하는 방법 등이 있다. 다만 이러한 방법에 한정되는 것은 아니다.
반면 모방 데이터란 실제로 생성된 것이 아닌, 인위적으로 생성된 데이터를 나타낸다. 예컨대 일 실시예에서 모방 데이터는 소정의 시드(seed), 예컨대 랜덤 노이즈 등을 기초로 생성된 인자 및 이러한 인자를 입력받아서 생성부(150)가 생성한 결과로 구성될 수 있다. 이 때 생성부(150)는 이러한 모방 데이터의 생성 과정에 실제 데이터의 확률 분포(probability distribution)를 고려할 수 있다. 아울러, 실시예에 따라 전술한 '소요 시간'이 '인자, 결과'와 함께 모방 데이터에 포함될 수도 있다.
이러한 모방 데이터는 생성적 대립 네트워크(Generative Adversarial Network, GAN)를 구성하는 생성부(150)와 판별부(160)의 학습 결과로부터 생성 내지 획득 가능하다. 이하에서는 이러한 생성부(150)와 판별부(160) 및 각각의 학습 과정, 그리고 이들로부터 모방 데이터가 생성되는 과정에 대해 보다 자세하게 살펴보기로 한다.
도 4는 도 3에 도시된 생성부(150)와 판별부(160)에 대한 학습 과정을 개념적으로 도시하고 있는 개념도이다. 도 4를 참조하면, 생성부(150)는 모방 데이터를 생성한다. 그리고 판별부(160)는 생성된 모방 데이터 또는 실제 데이터를 입력받아서, 이렇게 입력받은 데이터가 실제 데이터인지 아니면 모방 데이터인지를 판별한다. 이 때 전술한 바와 같이 생성부(150)는 랜덤 노이즈와 같은 시드를 기초로 모방 데이터를 생성할 수 있다.
이 과정에서, 생성부(150)가 모방 데이터를 생성하는 과정 또는 이러한 모방 데이터의 생성에 이용되는 모방 알고리즘은 반복된 학습을 통해 개선된다. 생성부(150)에 대한 학습 방향은 판별부(160)가 모방 데이터를 실제 데이터로 착각해서 판단하도록 하는 것이다. 예컨대 생성부(150)는 학습이 반복될수록 실제 데이터의 확률 분포에 보다 가까운 모방 데이터를 생성할 수 있게 된다.
뿐만 아니라, 판별부(160)가 입력받은 데이터를 실제 데이터 또는 모방 데이터 중 어느 하나로 판별하는 과정 또는 이렇게 판별하는데에 이용되는 판별 알고리즘은 반복된 학습을 통해 생성 또는 개선된다. 즉, 판별부(160)의 판별 알고리즘은 생성부(150)가 생성한 모방 데이터를 실제 데이터라고 판별하지 않고 모방 데이터라고 판별하도록 학습된다.
즉, 생성부(150)와 판별부(160) 각각에 대한 학습이 반복될수록, 생성부(150)는 모방 데이터를 더욱 실제 데이터에 가깝게 생성할 수 있게 되고, 판별부(160)는 입력받은 데이터가 모방 데이터인지 실제 데이터인지를 보다 정확하게 판별할 수 있게 된다. 생성부(150)와 학습부(160)가 이렇게 서로 대립되는(adversarial) 방향으로 학습되는 과정에서 생성부(150)와 판별부(160) 각각은 보다 정교하게 학습될 수 있다. 그 결과, 생성부(150)는 실제 데이터와 거의 동일한 모방 데이터를 생성할 수 있게 된다. 여기서 생성부(150)와 판별부(160)의 각각의 학습 과정 그 자체는 GAN에 관한 공지된 기술이므로, 이에 대한 설명은 생략하기로 한다.
회귀 분석부(110)에는 전술한 바와 같이 회귀 분석 알고리즘이 탑재된다. 이러한 회귀 분석 알고리즘의 학습에는 학습용 데이터로서 실제 데이터 및 전술한 모방 데이터가 제공된다. 이에 대해서는 도 5를 참조하여서 살펴보기로 한다.
도 5는 도 3에 도시된 생성부(150), 판별부(160) 및 회귀 분석부(110)에 대한 학습 과정을 개념적으로 도시하고 있는 개념도이다. 도 5를 참조하면, 도 4에서 학습이 완료된 생성부(150)는 모방 데이터를 생성한다. 그리고 판별부(160)는 입력받은 데이터가 실제 데이터인지 아니면 모방 데이터인지를 판별한다.
이와 함께, 회귀 분석부(110)에는 실제 데이터와 모방 데이터가 각각 회귀 분석의 학습을 위해 제공된다. 회귀 분석부(110)의 이러한 학습 과정은, 대체 대상인 함수(14)의 소요 시간(함수(14)의 동작에 소요되는 시간)보다 회귀 분석의 소요 시간이 더 짧게 나올 때까지 수행될 수 있다.
아울러, 회귀 분석부(110)에 대한 이러한 학습 과정은 회귀 분석부(110) 내에 형성된 신경망 구조를 변경해가면서 수행될 수 있다. 예컨대 회귀 분석부(110)가 fully connected 형태의 신경망 구조를 채용한다고 전제했을 때, 채용된 신경망 구조를 구성하는 레이어의 개수 및 히든 유닛의 개수를 변경해가면서 학습이 수행될 수 있다. 아울러, 최종적으로 회귀 분석부(110)에는 이렇게 학습된 회귀 분석부 중 어느 하나에 채용된 신경망 구조가 선택 내지 채용될 수 있는데, 선택 내지 채용의 기준은 각 신경망 구조가 갖는 가속 성능일 수 있다. 즉, 가장 빠른 처리 속도를 갖는 신경망 구조를 채용하는 회귀 분석부(110)가 선택될 수 있다.이상에서 살펴본 바와 같이, 일 실시예에 따른 회귀 분석 장치는 함수의 가속 장치로서 구현될 수 있는데, 인자와 결과를 쌍으로서 복수 개 미리 저장하고 있다가 회귀 분석이 필요한 경우에도 회귀 분석 없이 이렇게 저장된 정보를 회귀 분석된 결과로서 제공할 수 있다. 즉, 보다 가속 성능이 향상된 가속 장치의 제공이 가능해진다.
뿐만 아니라 이러한 회귀 분석 장치는 실제 데이터 뿐만 아니라 GAN에 의해 정교하게 생성된 모방 데이터를 이용해서 학습될 수 있다. 따라서, 실제 데이터만으로 학습된 회귀 분석 장치에 비해 보다 정확한 결과를 도출하는 회귀 분석 장치의 제공이 가능하다.
아울러, 이러한 회귀 분석 장치는 딥러닝을 이용하여 학습 내지 생성될 수 있다. 따라서 종래에 설계자가 직접 생성하는 경우에 비해 빠르면서도 정확한 회귀 분석 장치의 제공이 가능해진다.
이하에서는 이러한 회귀 분석 장치(100)를 생성하는 과정에 대해 살펴보기로 한다.
도 6은 일 실시예에 따른 회귀 분석 장치(100)의 생성 과정을 예시적으로 도시하고 있는 순서도이다. 이러한 생성 과정은 프로세서를 포함하는 컴퓨팅 장치에 의해 수행 가능하다. 도 6를 참조하여 살펴보기로 한다.
먼저 생성부(150)와 판별부(160)를 학습시키는 단계가 수행된다(S100). 단계 S100을 보다 자세하게 살펴보면, 생성부(150)의 모방 알고리즘은 판별부(160)가 모방 데이터를 실제 데이터로 착각할 수 있도록, 즉 모방 데이터가 최대한 실제 데이터에 근접하여서 생성되도록(예컨대 실제 데이터의 확률 분포에 가깝도록) 학습될 수 있다. 아울러, 판별부(160)의 판별 알고리즘은 생성부(150)가 생성한 모방 데이터를 실제 데이터라고 판별하지 않고 모방 데이터라고 판별하도록 학습될 수 있다.
즉, 생성부(150)가 학습되는 방향은 판별부(160)가 모방 데이터를 실제 데이터라고 오판하게 하는 것이고 판별부(160)가 학습되는 방향은 모방 데이터를 모방 데이터라고 제대로 판별하는 것이 되는데, 생성부(150)와 학습부(160)가 이렇게 서로 대립되는(adversarial) 방향으로 학습되는 과정에서 생성부(150)와 판별부(160) 각각은 보다 정교한 방향으로 학습될 수 있다. 그 결과, 생성부(150)는 실제 데이터와 거의 동일한 모방 데이터를 생성할 수 있게 된다. 여기서 생성부(150)와 판별부(160)의 각각의 학습 과정 그 자체는 GAN에 관한 공지된 기술이므로, 이에 대한 설명은 생략하기로 한다.
다음으로, 회귀 분석부(110)를 학습시키는 단계가 수행된다(S110). 보다 구체적으로 살펴보면, 회귀 분석부(110)에는 실제 데이터와 모방 데이터가 각각 회귀 분석의 학습을 위해 제공된다. 회귀 분석부(110)의 이러한 학습 과정은, 대체 대상인 함수(14)의 소요 시간(함수(14)의 동작에 소요되는 시간)보다 회귀 분석의 소요 시간이 더 짧게 나올 때까지 수행될 수 있다. 이 때, 회귀 분석부(110) 내에 형성된 신경망 구조를 변경해가면서 학습이 수행될 수 있고, 이렇게 변경된 신경망 구조의 성능을 비교한 결과를 기초로 소정의 신경망 구조가 선택되면, 회귀 분석부(110)는 이렇게 선택된 신경망 구조를 채택할 수 있다.
이하에서는 이렇게 생성된 회귀 분석 장치(100)의 동작 과정에 대해 살펴보기로 한다.
회귀 분석 장치(100)는 인자(argument)를 입력(X)받는다. 제어부(140)는 인자(argument)를 해시 함수부(120)에 전달한다. 해시 함수부(120)는 이러한 인자에 대한 해시값을 저장부(130)에 전달한다. 해시값에 대응되는 결과(result)가 저장부(120)에 저장되어 있으면, 제어부(140)는 해당 결과를 출력(Y)시킨다.
반면 저장부(120)에 저장되어 있지 않다면 제어부(140)는 해당 인자를 회귀 분석부(110)에 전달한다. 회귀 분석부(110)는 전달받은 인자에 대해 회귀 분석을 수행한다. 제어부(140)는 회귀 분석이 수행된 결과를 회귀 분석부(110)로부터 전달받아서 출력(Y)시킨다.
이상에서 살펴본 바와 같이, 일 실시예에 따른 회귀 분석 장치는 함수의 가속 장치로서 구현될 수 있는데, 인자와 결과를 쌍으로서 복수 개 미리 저장하고 있다가 회귀 분석이 필요한 경우에도 회귀 분석 없이 이렇게 저장된 정보를 회귀 분석된 결과로서 제공할 수 있다. 즉, 보다 가속 성능이 향상된 가속 장치의 제공이 가능해진다.
뿐만 아니라 이러한 회귀 분석 장치는 실제 데이터 뿐만 아니라 GAN에 의해 정교하게 생성된 모방 데이터를 이용해서 학습될 수 있다. 따라서, 실제 데이터만으로 학습된 회귀 분석 장치에 비해 보다 정확한 결과를 도출하는 회귀 분석 장치의 제공이 가능하다.
아울러, 이러한 회귀 분석 장치는 딥러닝을 이용하여 학습 내지 생성될 수 있다. 따라서 종래에 설계자가 직접 생성하는 경우에 비해 빠르면서도 정확한 회귀 분석 장치의 제공이 가능해진다.
한편, 전술한 방법에 관한 발명은, 이러한 방법에 포함된 각각의 단계를 수행하도록 프로그램된 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 기록매체의 형태 또는 컴퓨터 판독가능한 기록매체에 저장된, 해당 방법에 포함된 각 단계를 수행하도록 프로그램된 컴퓨터 프로그램의 형태로 실시될 수도 있다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 품질에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 균등한 범위 내에 있는 모든 기술사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
일 실시예에 따르면 보다 가속 성능이 향상된 가속 장치의 제공이 가능해진다. 뿐만 아니라 실제 데이터만으로 학습된 회귀 분석 장치에 비해 보다 정확한 결과를 도출하는 회귀 분석 장치의 제공이 가능하다.
100: 회귀 분석 장치

Claims (11)

  1. 사전 학습된 모방 알고리즘을 기초로 실제(real) 데이터를 모방하는 모방(fake) 데이터를 생성하는 생성부와,
    소정의 데이터가 입력되면, 사전 학습된 판별 알고리즘을 기초로 상기 입력받은 데이터가 상기 실제 데이터인지 아니면 상기 모방 데이터인지를 판별하는 판별부와,
    소정의 동작을 수행하도록 상기 실제 데이터 및 상기 모방 데이터를 이용하여 사전 학습되어서, 인자(argument)가 입력되면 상기 입력된 인자를 기초로 수행된 상기 동작의 결과를 출력하는 회귀 분석부를 포함하며,
    상기 모방 알고리즘의 사전 학습 과정은,
    상기 판별 알고리즘을 기초로 상기 판별부가 판별한 결과가 반영된 것인
    회귀 분석 장치.
  2. 제 1 항에 있어서,
    상기 실제 데이터는 상기 동작을 수행하는 함수에 입력된 인자(argument) 및 상기 함수에 입력된 인자를 기초로 상기 함수가 수행한 동작의 결과(return)을 포함하며,
    상기 모방 데이터는 소정의 인자(argument) 및 상기 소정의 인자를 기초로 상기 생성부가 생성한 결과(return)를 포함하는
    회귀 분석 장치.
  3. 제 2 항에 있어서,
    상기 회귀 분석부에 대한 사전 학습은,
    상기 회귀 분석부가 상기 동작을 수행할 때 소요되는 수행 시간이, 상기 함수가 상기 동작을 수행할 때 소요되는 수행 시간보다 짧은 결과가 나올 때까지 수행된 것인
    회귀 분석 장치.
  4. 제 1 항에 있어서,
    상기 회귀 분석부에 대한 사전 학습은,
    상기 판별 알고리즘에 대한 사전 학습 및 상기 모방 알고리즘에 대한 사전 학습이 수행 완료된 이후에 수행되는
    회귀 분석 장치.
  5. 제 1 항에 있어서,
    인자(argument) 및 상기 인자에 대응되는 결과(result)로 구성된 참조값을 복수 개 저장하고 있는 저장부와,
    소정의 인자가 입력되면 상기 소정의 인자에 대응되는 결과를 상기 저장부 또는 상기 회귀 분석부로부터 획득하여서 출력시키는 제어부를 더 포함하는
    회귀 분석 장치.
  6. 제 5 항에 있어서,
    상기 제어부는,
    상기 소정의 인자에 대응되는 결과가 상기 저장부에 저장되어 있으면 상기 저장부로부터 상기 소정의 인자에 대응되는 결과를 획득하여서 출력시키고, 상기 소정의 인자에 대응되는 결과가 상기 저장부에 저장되어 있지 않으면 상기 회귀 분석부로부터 상기 소정의 인자에 대응되는 결과를 획득하여서 출력시키는
    회귀 분석 장치.
  7. 제 1 항에 있어서,
    상기 회귀 분석부는,
    회귀 분석부에 포함된 신경망 구조를 변경해가면서 학습된 것 중 하나인
    회귀 분석 장치.
  8. 제 7 항에 있어서,
    상기 회귀 분석부는,
    상기 변경된 신경망 구조의 성능 비교 결과를 기초로 선택된 소정의 신경망 구조를 포함하는
    회귀 분석 장치.
  9. 프로세서를 포함하는 컴퓨팅 장치가 수행하는 회귀 분석 장치의 생성 방법으로서,
    입력받은 소정의 데이터가 실제 데이터인지 아니면 상기 실제 데이터를 모방하는 모방 데이터인지를 판별하는데에 이용되는 판별 알고리즘을 학습시키는 단계와,
    상기 모방 데이터의 생성에 이용되는 모방 알고리즘을, 상기 판별 알고리즘을 기초로 수행된 판별 결과를 반영하여서 학습시키는 단계와,
    상기 실제 데이터 및 상기 학습이 완료된 모방 알고리즘을 이용하여 생성된 모방 데이터를 이용하여서, 인자가 입력되면 상기 회귀 분석 장치에 포함된 회귀 분석부가 상기 입력된 인자를 기초로 소정의 동작을 수행하여서 결과를 출력하도록 학습시키는 단계를 포함하는
    회귀 분석 장치의 생성 방법.
  10. 제 9 항에 따른 방법의 각 단계를 포함하여 컴퓨팅 장치가 수행하도록 프로그램된 컴퓨터 프로그램을 저장하는 컴퓨터 판독가능한 기록매체.
  11. 제 9 항에 따른 방법의 각 단계를 포함하여 컴퓨팅 장치가 수행하도록 프로그램된, 컴퓨터 판독가능한 기록매체에 저장된 컴퓨터 프로그램.
KR1020190002300A 2019-01-08 2019-01-08 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법 KR102242937B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190002300A KR102242937B1 (ko) 2019-01-08 2019-01-08 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190002300A KR102242937B1 (ko) 2019-01-08 2019-01-08 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법

Publications (3)

Publication Number Publication Date
KR20200086102A KR20200086102A (ko) 2020-07-16
KR102242937B1 true KR102242937B1 (ko) 2021-04-21
KR102242937B9 KR102242937B9 (ko) 2022-01-17

Family

ID=71839685

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190002300A KR102242937B1 (ko) 2019-01-08 2019-01-08 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법

Country Status (1)

Country Link
KR (1) KR102242937B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102341373B1 (ko) * 2021-08-20 2021-12-21 주식회사 아이엘사이언스 조명용 비구면 렌즈 설계장치 및 그 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018025361A1 (ja) 2016-08-03 2018-02-08 株式会社島津製作所 分析データ処理方法及び分析データ処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008126209A1 (ja) * 2007-03-27 2008-10-23 Fujitsu Limited 重回帰分析による予測モデルの作成方法、作成装置、作成プログラム
KR20130051116A (ko) * 2011-11-09 2013-05-20 한국전자통신연구원 애플리케이션 보안성 점검 자동화 장치 및 방법
KR101796369B1 (ko) * 2016-01-22 2017-12-01 김동완 소프트웨어 분석을 위한 리버스 엔지니어링 협업 장치, 방법 및 시스템
KR102403494B1 (ko) 2017-04-27 2022-05-27 에스케이텔레콤 주식회사 생성적 대립 네트워크에 기반한 도메인 간 관계를 학습하는 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018025361A1 (ja) 2016-08-03 2018-02-08 株式会社島津製作所 分析データ処理方法及び分析データ処理装置

Also Published As

Publication number Publication date
KR102242937B9 (ko) 2022-01-17
KR20200086102A (ko) 2020-07-16

Similar Documents

Publication Publication Date Title
US11790237B2 (en) Methods and apparatus to defend against adversarial machine learning
CN107392619A (zh) 智能合约处理方法及装置
CN111226236A (zh) 深度学习中的多目标生成器
KR102264234B1 (ko) 문서 분류에 있어서 기여도가 높은 단어 및 문장을 제공하는 설명이 부가된 문서 분류 방법
US11741363B2 (en) Computer-readable recording medium, method for learning, and learning device
CN112633310A (zh) 具有改进的训练鲁棒性地对传感器数据进行分类的方法和系统
CN109766259B (zh) 一种基于复合蜕变关系的分类器测试方法及系统
JP2023550194A (ja) モデル訓練方法、データ強化方法、装置、電子機器及び記憶媒体
CN113449299A (zh) 作为对机器学习模型字符串填充抑制的经投影的向量修改
Vasicek et al. How to evolve complex combinational circuits from scratch?
WO2022015390A1 (en) Hardware-optimized neural architecture search
KR102093080B1 (ko) 레이블 데이터 및 비레이블 데이터를 이용한 생성적 적대 신경망 기반의 분류 시스템 및 방법
KR102242937B1 (ko) 회귀 분석 장치 및 회귀 분석 장치를 생성하는 방법
Hu et al. Token-level adversarial prompt detection based on perplexity measures and contextual information
Corley et al. Domaingan: generating adversarial examples to attack domain generation algorithm classifiers
CN111950579A (zh) 分类模型的训练方法和训练装置
Fourie et al. Generalised adaptive harmony search: a comparative analysis of modern harmony search
CN114548300A (zh) 解释业务处理模型的业务处理结果的方法和装置
KR102548519B1 (ko) 준합성 데이터 생성 장치 및 데이터 생성 방법
KR20220159104A (ko) 딥페이크 이미지 판별 장치 및 그 학습 방법
JP2020052935A (ja) 学習済みモデルを生成する方法、データを分類する方法、コンピュータおよびプログラム
CN111126566B (zh) 基于gan模型的异常家具布局数据检测方法
US11966851B2 (en) Construction of a machine learning model
US20230196195A1 (en) Identifying, or checking integrity of, a machine-learning classification model
CN113298108A (zh) 作为机器学习模型字符串填充的抑制的投影向量溢出惩罚

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
G170 Publication of correction