KR102560042B1 - 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법 - Google Patents

기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법 Download PDF

Info

Publication number
KR102560042B1
KR102560042B1 KR1020200133210A KR20200133210A KR102560042B1 KR 102560042 B1 KR102560042 B1 KR 102560042B1 KR 1020200133210 A KR1020200133210 A KR 1020200133210A KR 20200133210 A KR20200133210 A KR 20200133210A KR 102560042 B1 KR102560042 B1 KR 102560042B1
Authority
KR
South Korea
Prior art keywords
hyperparameter
hyperparameters
algorithm
search
computer system
Prior art date
Application number
KR1020200133210A
Other languages
English (en)
Other versions
KR20220049737A (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 KR1020200133210A priority Critical patent/KR102560042B1/ko
Priority to JP2021016212A priority patent/JP7348444B2/ja
Publication of KR20220049737A publication Critical patent/KR20220049737A/ko
Application granted granted Critical
Publication of KR102560042B1 publication Critical patent/KR102560042B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation

Abstract

기계 학습 모델의 초매개변수 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법 및 시스템이 개시된다. 일 실시예에 따른 컴퓨터 시스템에 의해 수행되는 초매개변수 조정 방법은, 초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들의 조합의 학습 모델에 기초하여, 알고리즘의 검색 과정을 시각화하는 단계; 및 상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하는 단계를 포함할 수 있다.

Description

기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법{TUNING ALGORITHM-AWARE VISUALIZATION METHOD FOR ANALYZING AND ADJUSTMENT HYPERPARAMETER OPTIMIZATION PROCESS OF MACHINE LEARNING MODELS}
아래의 설명은 학습 모델의 초매개변수를 최적화하는 기술에 관한 것이다.
심층 신경망 모델의 연구와 개발에 있어서 초매개변수(hyperparameter)들의 조정은 모델의 성능에 매우 큰 영향을 끼치며 대부분의 실무자들은 조정 과정을 수동 반복적으로 수행한다. 이러한 초매개변수 조정 과정의 고통을 완화하기 위해 대규모 매개변수 조합 검색 공간(hyperparameter search space)에서 최적의 초매개변수의 조합을 검색하는 자동화된 머신러닝(AutoML) 방식이 개발됐다.
그러나 자동화된 머신러닝 방법의 검색 결과는 초기 구성(configuration)의 설정에 따라 결과가 다양해질 수 있으며, 실무자가 적용하려는 인공지능 모델에 맞는 적절한 구성을 찾기 위하여 또 다른 수동 반복적인 과정이 동반된다. 종래에 개발된 자동화된 머신러닝 기술들은 초기 구성 설정에 대한 뚜렷한 가이드를 주지 못하고 있다.
심층 신경망 모델의 종류와 자동화된 머신러닝(AutoML) 방법의 종류에 국한되지 않는 사용자 주도형 초매개변수 조정 과정을 지원하는 시각적 분석 방법 및 시스템을 제공할 수 있다.
자동화된 머신러닝의 검색 결과를 통해 획득된 분석 내용에 기초하여 검색 공간(search space)과 자동화된 머신러닝 알고리즘의 구성을 조정하는 방법 및 시스템을 제공할 수 있다.
서로 다른 초매개변수들의 상대적인 중요도 분석과 상호 작용 효과(interaction effect) 분석을 바탕으로 초매개변수의 검색 공간을 조정할 수 있는 환경을 조성하는 방법 및 시스템을 제공할 수 있다.
컴퓨터 시스템에 의해 수행되는 초매개변수 조정 방법은, 상기 컴퓨터 시스템은 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 초매개변수 조정 방법은, 초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 검색 과정을 시각화하는 단계; 및 상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하는 단계 를 포함할 수 있다.
상기 시각화하는 단계는, 초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝(Auto ML) 알고리즘을 이용하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 머신러닝 알고리즘을 이용하여 탐색된 초매개변수 검색 공간에 대한 설정 정보를 구성하도록 상기 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 성능 및 알고리즘의 구성을 진단하기 위한 검색 과정을 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 탐색된 초매개변수 검색 공간과 상기 초매개변수들에 대하여 구성된 설정 정보의 조합을 평행 좌표 그래프 상에 위치시키고, 상기 초매개변수들의 상대적인 중요도를 상기 평행 좌표 그래프의 주변에 중요도의 크기를 반영한 도형 형태의 인터페이스를 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 초매개변수들을 나타내는 각각의 유저 인터페이스를 상기 평행 좌표 그래프에 구성하고, 상기 구성된 각각의 유저 인터페이스를 초매개변수의 상대적인 중요도에 따라 기 설정된 방향에서부터 위치시키고, 상기 위치된 각각의 유저 인터페이스에 대응하여 상기 평행 좌표 그래프의 좌표들을 나열하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 초매개변수들을 나타내는 각각의 유저 인터페이스에 대한 사용자와의 상호작용을 통해 초매개변수를 활성화시키는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 사용자로부터 선택된 유저 인터페이스에 대응하는 초매개변수의 상대적인 중요도 값을 수치화하고, 상기 선택된 초매개변수를 나타내는 유저 인터페이스의 크기를 확대시키고, 상기 선택된 초매개변수와 연관성이 있는 다른 초매개변수들을 연관성의 값에 따라 배치시키고, 상기 선택된 초매개변수에 대한 설정값의 범위를 평행 좌표 그래프와 복수 개의 바(Bar)로 구성된 시각화 모듈을 통해 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 초매개변수의 중요도 산출 결과를 매트릭스 형태로 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 매트릭스 형태에 구성된 각 행에 초매개변수 또는 초매개변수들의 조합의 중요도와, 상기 중요도의 신뢰값을 시각화하고, 사용자에 의한 상호작용을 통해 상기 각 행이 활성화됨에 따라 초매개변수의 중요도에 대한 상세 정보를 제공하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 초매개변수의 타입(type)에 따라 상기 초매개변수에 대한 상세 정보를 서로 다른 플롯으로 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 학습 모델의 성능 갱신을 확인하기 위한 모니터링 뷰를 제공하여 사용자로부터 설정 정보가 구성된 자동화된 머신러닝 알고리즘의 성능 갱신 기록을 라인 플롯을 통해 시각화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 자동화된 머신러닝 알고리즘이 탐색 로직을 반복함에 따라 탐색 로직의 인덱스를 x축에 표현하고, 상기 자동화된 머신러닝 알고리즘에 의해 탐색된 학습 모델의 성능을 y축에 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 상기 x축과 y축의 값에 따라 라인 플롯의 좌표 상에 점(point)으로 위치시키는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 알고리즘의 성능을 확인하기 위한 탐색 히스토리 뷰를 제공하여 자동화된 머신러닝 알고리즘을 수행하기 전에 설정된 초매개변수 검색 공간에 기초하여 복수 개의 플롯을 구성하고, 상기 구성된 복수 개의 플롯 중 각각의 플롯을 통해 초매개변수의 검색 공간에 대한 탐색 히스토리를 가시화하는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 구성된 복수 개의 플롯을 학습 모델의 성능 향상 모니터링 뷰의 x축과 일치시켜 자동화된 머신러닝 알고리즘의 탐색 로직의 인덱스를 표현하고, y축에 초매개변수 검색 공간의 범위를 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 초매개변수의 값에 따라 좌표 상에 점(point)으로 위치시키는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 구성된 복수 개의 플롯에서 초매개변수의 타입(type)에 따라 학습 모델들에 대응하는 각각의 점들이 겹치는 경우, 척력(repulsive force)를 가하여 점들을 위치시키는 단계를 포함할 수 있다.
상기 시각화하는 단계는, 상기 자동화된 머신러닝 알고리즘의 탐색 로직 특성에 따라, 점선과 곡선을 이용하여 학습 모델들에 대응하는 점들을 연결하여 학습 모델들 간의 관계를 시각화하는 단계를 포함할 수 있다.
초매개변수 조정 방법을 상기 컴퓨터 시스템에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램을 제공할 수 있다.
초매개변수 조정 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 비-일시적인 컴퓨터 판독 가능한 기록 매체를 제공할 수 있다.
컴퓨터 시스템은, 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 상기 알고리즘의 검색 과정을 시각화하는 시각화부; 및 상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하는 최적화부를 포함할 수 있다.
상기 시각화부는, 초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝(Auto ML) 알고리즘을 이용할 수 있다.
심층 신경망 기반의 학습 모델의 종류와 자동화된 머신러닝(AutoML)의 종류에 국한되지 않는 사용자 주도형 초매개변수 조정 과정을 제공할 수 있다.
자동화된 머신러닝의 검색 결과를 통해 획득된 분석 정보에 기초하여 검색 공간(search space)과 자동화된 머신러닝 알고리즘의 구성을 정교하게 조정할 수 있다.
서로 다른 초매개변수들의 상대적인 중요도 분석과 상호작용 효과(interaction effect) 분석을 바탕으로 초매개변수의 검색 공간을 효율적으로 조정할 수 있다.
도 1은 일 실시예에 있어서 컴퓨터 시스템의 내부 구성의 일례를 설명하기 위한 블록도이다.
도 2는 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이다.
도 3은 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 설명하기 위한 흐름도이다.
도 4는 일 실시예에 따른 컴퓨터 시스템에서 학습 모델의 초매개변수의 최적화 과정과 시각적 분석을 수행하는 개괄적 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝의 결과를 시각화한 예이다.
도 6은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘의 검색 과정을 시각화하는 동작을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘의 검색 결과를 시각화한 것을 비교하기 위한 예이다.
도 8은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘에서 탐색된 초매개변수의 검색 공간의 분석과 조정을 시각화하는 동작을 설명하기 위한 도면이다.
이하, 실시예를 첨부한 도면을 참조하여 상세히 설명한다.
도 1은 일 실시예에 따른 컴퓨터 시스템의 예를 도시한 블록도이다. 예를 들어, 실시예들에 따른 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 시스템은 도 1을 통해 도시된 컴퓨터 시스템(100)에 의해 구현될 수 있다.
도 1에 도시된 바와 같이 컴퓨터 시스템(100)은 본 발명의 실시예들에 따른 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 실행하기 위한 구성요소로서, 메모리(110), 프로세서(120), 통신 인터페이스(130) 그리고 입출력 인터페이스(140)를 포함할 수 있다.
메모리(110)는 컴퓨터에서 판독 가능한 기록매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 여기서 ROM과 디스크 드라이브와 같은 비소멸성 대용량 기록장치는 메모리(110)와는 구분되는 별도의 영구 저장 장치로서 컴퓨터 시스템(100)에 포함될 수도 있다. 또한, 메모리(110)에는 운영체제와 적어도 하나의 프로그램 코드가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(110)와는 별도의 컴퓨터에서 판독 가능한 기록매체로부터 메모리(110)로 로딩될 수 있다. 이러한 별도의 컴퓨터에서 판독 가능한 기록매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록매체가 아닌 통신 인터페이스(130)를 통해 메모리(110)에 로딩될 수도 있다. 예를 들어, 소프트웨어 구성요소들은 네트워크(160)를 통해 수신되는 파일들에 의해 설치되는 컴퓨터 프로그램에 기반하여 컴퓨터 시스템(100)의 메모리(110)에 로딩될 수 있다.
프로세서(120)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(110) 또는 통신 인터페이스(130)에 의해 프로세서(120)로 제공될 수 있다. 예를 들어 프로세서(120)는 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 인터페이스(130)은 네트워크(160)를 통해 컴퓨터 시스템(100)이 다른 장치와 서로 통신하기 위한 기능을 제공할 수 있다. 일례로, 컴퓨터 시스템(100)의 프로세서(120)가 메모리(110)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청이나 명령, 데이터, 파일 등이 통신 인터페이스(130)의 제어에 따라 네트워크(160)를 통해 다른 장치들로 전달될 수 있다. 역으로, 다른 장치로부터의 신호나 명령, 데이터, 파일 등이 네트워크(160)를 거쳐 컴퓨터 시스템(100)의 통신 인터페이스(130)를 통해 컴퓨터 시스템(100)으로 수신될 수 있다. 통신 인터페이스(130)를 통해 수신된 신호나 명령, 데이터 등은 프로세서(120)나 메모리(110)로 전달될 수 있고, 파일 등은 컴퓨터 시스템(100)이 더 포함할 수 있는 저장 매체(상술한 영구 저장 장치)로 저장될 수 있다.
통신 방식은 제한되지 않으며, 네트워크(160)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 유선/무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(160)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(160)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
입출력 인터페이스(140)는 입출력 장치(150)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 마이크, 키보드, 카메라 또는 마우스 등의 장치를, 그리고 출력 장치는 디스플레이, 스피커와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(140)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 입출력 장치(150)는 컴퓨터 시스템(100)과 하나의 장치로 구성될 수도 있다.
또한, 다른 실시예들에서 컴퓨터 시스템(100)은 도 1의 구성요소들보다 더 적은 혹은 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 컴퓨터 시스템(100)은 상술한 입출력 장치(150) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
종래의 기술은 초매개변수(hyperparameter)의 최적화 작업을 위한 강력한 데이터 탐색인 동시에 인간의 통찰력(human insight)을 활용하여 최적화 과정의 투명성(transparency)을 향상시키는데 기여했지만, 최적화 과정의 분석에 필요한 두 가지 중요한 측면을 고려하지 않았다.
첫째, 종래의 기술은 어떤 초매개변수가 기계 학습 모델의 성능에 더 많은 영향을 주는지, 중요한 초매개변수가 있다면 해당 변수의 검색 공간(search space)의 어떤 범위가 추가적인 검색을 위해 유망한 지에 대해 사용자에게 명시적으로 안내해 주지 않는다. 따라서, 검색 공간의 조정은 전적으로 사용자의 직관 (intuition)에 의존될 수 밖에 없다. 둘째, 종래의 기술은 초매개변수 최적화 과정과 결과에 큰 영향을 미칠 수 있는 자동화된 머신러닝(AutoML) 알고리즘의 설정 구성(configuration)과 설정 구성을 진단하는 것의 중요성을 고려하지 않았다.
실시예에서는 중요한 초매개변수와 상기 초매개변수의 효과적인 값의 범위에 대한 명시적인 안내(explicit guidance)를 제공함으로써 사용자로 하여금 불필요한 검색 공간을 발견하고 전체적인 최적화 과정의 효율성을 향상시키는 데에 도움을 줄 수 있다. 또한, 자동화된 머신러닝 알고리즘의 종류가 다양하며 각각의 알고리즘 특성에 따라 구성 방식 또한 달라진다. 이에, 초매개변수의 최적화를 수행하기 전에, 사용자로부터 검색 공간과 학습 모델에 따른 설정값을 포함하는 설정 구성에 따라 검색 방식과 검색 결과가 결정되므로 사용자로부터 설정값을 고려하도록 한다.
실시예에 따르면, 자동화된 머신러닝 알고리즘의 복잡한 행위에 대한 시각화 기법을 제안하여 사용자가 자동화된 머신러닝 알고리즘의 동작 방식을 이해할 수 있도록 하고, 설정한 초기 구성에 따른 학습 모델을 진단할 수 있도록 하여 자동화된 머신러닝의 잠재력을 최대화할 수 있다.
도 2는 일 실시예에 따른 컴퓨터 시스템의 프로세서가 포함할 수 있는 구성요소의 예를 도시한 도면이고, 도 3은 일 실시예에 따른 컴퓨터 시스템이 수행할 수 있는 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 설명하기 위한 흐름도이다.
도 2에 도시된 바와 같이, 프로세서(120)는 시각화부(210), 및 최적화부(220)를 포함할 수 있다. 이러한 프로세서(120)의 구성요소들은 적어도 하나의 프로그램 코드에 의해 제공되는 제어 명령에 따라 프로세서(120)에 의해 수행되는 서로 다른 기능들(different functions)의 표현들일 수 있다.
프로세서(120) 및 프로세서(120)의 구성요소들은 도 3의 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법이 포함하는 단계들(S310 내지 S320)을 수행할 수 있다. 예를 들어, 프로세서(120) 및 프로세서(120)의 구성요소들은 메모리(110)가 포함하는 운영체제의 코드와 상술한 적어도 하나의 프로그램 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다. 여기서, 적어도 하나의 프로그램 코드는 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 처리하기 위해 구현된 프로그램의 코드에 대응될 수 있다.
프로세서(120)는 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 위한 프로그램 파일에 저장된 프로그램 코드를 메모리(110)에 로딩할 수 있다. 예를 들어, 초매개변수 최적화 과정의 분석과 조정을 위한 시각화 방법을 위한 프로그램 파일은 메모리(110)와는 구분되는 영구 저장 장치에 저장되어 있을 수 있고, 프로세서(120)는 버스를 통해 영구 저장 장치에 저장된 프로그램 파일로부터 프로그램 코드가 메모리(110)에 로딩되도록 컴퓨터 시스템(100)을 제어할 수 있다. 이때, 프로세서(120) 및 프로세서(120)가 포함하는 시각화부(210), 및 최적화부(220) 각각은 메모리(110)에 로딩된 프로그램 코드 중 대응하는 부분의 명령을 실행하여 이후 단계들(S310 내지 S320)을 실행하기 위한 프로세서(120)의 서로 다른 기능적 표현들일 수 있다. 단계들(S310 내지 S320)의 실행을 위해, 프로세서(120) 및 프로세서(120)의 구성요소들은 직접 제어 명령에 따른 연산을 처리하거나 또는 컴퓨터 시스템(100)을 제어할 수 있다.
단계(S310)에서 시각화부(210)는 초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 검색 과정을 시각화할 수 있다. 시각화부(210)는 초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝(Auto ML) 알고리즘을 이용할 수 있다. 시각화부(210)는 알고리즘을 이용하여 탐색된 초매개변수 검색 공간에 대한 설정 정보를 구성하도록 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 성능 및 알고리즘의 구성을 진단하기 위한 검색 과정을 시각화할 수 있다. 시각화부(210)는 학습 모델의 성능 갱신을 확인하기 위한 모니터링 뷰를 제공하여 사용자로부터 설정 정보가 구성된 자동화된 머신러닝 알고리즘의 성능 갱신 기록을 라인 플롯을 통해 시각화할 수 있다. 시각화부(210)는 자동화된 머신러닝 알고리즘이 탐색 로직을 반복함에 따라 탐색 로직의 인덱스를 x축에 표현하고, 자동화된 머신러닝 알고리즘에 의해 탐색된 학습 모델의 성능을 y축에 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 x축과 y축의 값에 따라 라인 플롯의 좌표 상에 점(point)으로 위치시킬 수 있다. 시각화부(210)는 알고리즘의 성능을 확인하기 위한 탐색 히스토리 뷰를 제공하여 자동화된 머신러닝 알고리즘을 수행하기 전에 설정된 초매개변수 검색 공간에 기초하여 복수 개의 플롯을 구성하고, 구성된 복수 개의 플롯 중 각각의 플롯을 통해 초매개변수의 검색 공간에 대한 탐색 히스토리를 가시화할 수 있다. 시각화부(210)는 구성된 복수 개의 플롯을 학습 모델의 성능 향상 모니터링 뷰의 x축과 일치시켜 자동화된 머신러닝 알고리즘의 탐색 로직의 인덱스를 표현하고, y축에 초매개변수 검색 공간의 범위를 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 초매개변수의 값에 따라 좌표 상에 점(point)으로 위치시킬 수 있다. 시각화부(210)는 구성된 복수 개의 플롯에서 초매개변수의 타입(type)에 따라 학습 모델들에 대응하는 점들이 겹치는 경우 척력(repulsive force)을 가하여 점들을 위치시킬 수 있다. 시각화부(210)는 자동화된 머신러닝 알고리즘의 탐색 로직 특성에 따라, 점선과 곡선을 이용하여 학습 모델들에 대응하는 점들을 연결하여 학습 모델들 간의 관계를 시각화할 수 있다.
단계(S320)에서 최적화부(220)는 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)할 수 있다. 최적화부(220)는 알고리즘을 이용하여 탐색된 초매개변수 검색 공간과 초매개변수들에 대하여 구성된 설정 정보의 조합을 평행 좌표 그래프 상에 위치시키고, 초매개변수들의 상대적인 중요도를 평행 좌표 그래프의 주변에 중요도의 크기를 반영한 도형 형태의 인터페이스를 시각화할 수 있다. 최적화부(220)는 초매개변수들을 나타내는 각각의 유저 인터페이스를 평행 좌표 그래프에 구성하고, 구성된 각각의 유저 인터페이스를 초매개변수의 상대적인 중요도에 따라 기 설정된 방향에서부터 위치시키고, 위치된 각각의 유저 인터페이스에 대응하여 평행 좌표 그래프의 좌표들을 나열할 수 있다. 최적화부(220)는 초매개변수들을 나타내는 각각의 유저 인터페이스에 대한 사용자와의 상호작용(예를 들면, 드래그, 터치, 클릭 등)을 통해 초매개변수를 활성화시킬 수 있다. 최적화부(220)는 사용자로부터 선택된 유저 인터페이스에 대응하는 초매개변수의 상대적인 중요도 값을 수치화하고, 선택된 초매개변수를 나타내는 유저 인터페이스의 크기를 확대시키고, 선택된 초매개변수와 연관성이 있는 다른 초매개변수들을 연관성의 값에 따라 배치시키고, 선택된 초매개변수에 대한 설정값의 범위를 평행 좌표 그래프와 복수 개의 바(Bar)로 구성된 시각화 모듈을 통해 시각화할 수 있다. 최적화부(220)는 초매개변수의 중요도 산출 결과를 매트릭스 형태로 시각화할 수 있다. 최적화부(220)는 매트릭스 형태에 구성된 각 행에 초매개변수 또는 초매개변수들의 조합의 중요도와, 중요도의 신뢰값을 시각화하고, 사용자에 의한 상호작용을 통해 각 행이 활성화됨에 따라 초매개변수의 중요도에 대한 상세 정보를 제공할 수 있다. 최적화부(220)는 초매개변수의 타입(type)에 따라 초매개변수에 대한 상세 정보를 서로 다른 플롯으로 시각화할 수 있다.
도 4는 일 실시예에 따른 컴퓨터 시스템에서 학습 모델의 초매개변수의 최적화 과정과 시각적 분석을 수행하는 개괄적 동작을 설명하기 위한 도면이다.
컴퓨터 시스템은 실무자들의 분석 요구 사항을 반영한 초매개변수의 최적화 과정과 시각적 분석을 시각화할 수 있다. 일례로, 복수 명의 실무자와의 인터뷰를 통해 복수 개의 분석 요구 사항을 식별할 수 있다. 실무자로부터 세 가지의 분석 요구 사항이 존재할 수 있다. 예를 들면, 효과적인 초매개변수 식별, 검색 알고리즘의 행동 분석, 요구 사항을 만족하는 모델을 선택 등을 포함하는 분석 요구 사항이 존재할 수 있다.
컴퓨터 시스템은 최적화 루프(loop)를 통해 초매개변수 최적화의 프로세스를 수행한 결과 데이터를 실무자들의 분석 요구 사항을 반영하여 시각화할 수 있다. 시각화를 통해 지원되는 태스크에 대한 사용자의 통찰을 통해 초매개변수 최적화를 위한 사용자의 개입을 통하여 검색 과정을 제어할 수 있다.
도 5는 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝의 결과를 시각화한 예이다.
컴퓨터 시스템은 초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 성능 및 알고리즘의 구성을 진단하기 위한 알고리즘의 검색 과정을 시각화할 수 있다. 이때, 학습 모델은 심층 신경망 기반의 기계 학습 모델을 의미할 수 있다.
도 5(a)를 참고하면, 유저 인터페이스를 제공하는 시각화 화면(500)을 통해 초매개변수를 최적화하는 자동화된 머신러닝 프로세스의 동작이 시각화될 수 있다. 예를 들면, 시각화 화면(500)은 초매개변수 최적화 프로세스를 추적하고 분석하도록 설계될 수 있다. 이러한 시각화 화면(500)에 구성된 각각의 영역에 초매개변수 최적화 과정의 분석과 조정을 위한 다양한 정보가 시각화될 수 있다. 시각화 화면(500)에 구성된 각각의 영역을 통해 도 5(b) 내지 도 5(e)에 대한 정보가 시각화될 수 있다. 시각화 화면(500)에서 사용자에 의한 반복적이고 상호작용하는 조정 과정을 통해 초매개변수의 최적화가 효과적으로 수행될 수 있다. 사용자는 시각화 화면(500)을 통해 시각화된 정보를 이용하여 사용자의 통찰력을 기반으로 최적의 초매개변수를 미세 조정할 수 있다.
도 5(b)를 참고하면, 컴퓨터 시스템은 시각화 화면(500)을 통해 최적화 개요를 제공할 수 있다. 컴퓨터 시스템은 시각화 화면(500)을 통해 사용자로부터 학습 모델의 크기 및 예측 정확도를 포함하는 기준에 따라 최적화 결과의 통계 정보와 학습 모델의 분포를 탐색한 결과를 시각화할 수 있다. 또한, 학습 모델의 성능을 실험한 값이 시각화될 수 있다. 예를 들면, 사용자에 의하여 초매개변수의 검색 공간이 조절된 범위에서 탐색된 학습 모델의 성능 값이 시각화될 수 있다. 도 5(c)를 참고하면, 컴퓨터 시스템은 시각화 화면(500)을 통해 학습 모델의 성능에 대한 분석을 수행함에 따라 초매개변수와 초매개변수에 대한 범위를 명시적으로 강조하여 사용자가 검색 공간을 구체화할 수 있도록 도와줄 수 있다. 도 5(d)를 참고하면, 컴퓨터 시스템은 시각화 화면(500)을 통해 학습 모델을 분석한 결과를 시각화할 수 있다. 도 5(e)를 참고하면, 컴퓨터 시스템은 시각화 화면(500)을 통해 초매개변수의 검색 공간에 대한 탐색 이력을 시각화하여 사용된 알고리즘의 복잡한 동작을 시각적으로 이해하고 알고리즘 구성 간의 차이점을 비교할 수 있도록 진단하고, 검색 과정을 조정할 수 있도록 한다.
도 6은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘의 검색 과정을 시각화하는 동작을 설명하기 위한 도면이다.
컴퓨터 시스템은 초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝 알고리즘을 이용한 검색 과정의 이해와 진단을 돕기 위하여 검색 과정을 시각화할 수 있다. 컴퓨터 시스템은 복수의 자동화된 머신러닝 알고리즘의 동작 방식과 각 알고리즘의 설정값에 대하여 진단할 수 있다. 컴퓨터 시스템은 초매개변수 검색 공간을 탐색하여 주어진 학습 모델의 성능을 최대화하는 최적의 초매개변수 조합을 반환할 수 있다. 이때, 자동화된 머신러닝 알고리즘은 랜덤, 베이지안, bandit, 진화(evolutionary) 기반의 다양한 종류의 검색 알고리즘이 포함될 수 있으며, 각각의 알고리즘들은 자동화된 머신러닝의 프로세스를 수행하기 전에 구성해야 할 고유의 설정 항목들을 가지고 있다. 각각의 알고리즘의 설정 항목에 대한 값들에 따라 알고리즘의 탐색 과정과 결과가 매우 다양하게 나타나게 된다. 사용자가 자동화된 머신러닝 알고리즘을 효과적으로 사용하기 위하여 사용자가 최적화하려는 학습 모델의 특징, 초매개변수의 특징, 검색 공간의 크기에 따라 설정값을 구성해야 한다.
컴퓨터 시스템은 사용자들이 여러 종류의 자동화된 머신러닝 알고리즘들의 검색 과정을 이해하고, 주어진 학습 모델과 초매개변수 검색 공간에 적합한 설정값을 구성할 수 있도록 자동화된 머신러닝 알고리즘의 검색 과정을 시각화할 수 있다.
도 6을 참고하면, 자동화된 머신러닝 알고리즘의 검색 과정을 표현한 예이다. 컴퓨터 시스템은 모델 성능 향상 모니터링 뷰(a) 및 탐색 히스토리 뷰(b)를 포함하는 복수 개의 뷰를 구분하여 자동화된 머신러닝 알고리즘의 검색 과정을 표현할 수 있다.
모델 성능 향상 모니터링 뷰(a)에 대하여 설명하기로 한다. 모델 성능 향상 모니터링 뷰(a)는 자동화된 머신러닝 알고리즘이 고유의 탐색 로직에 따라 초매개변수를 샘플링하면서 점진적으로 학습 모델의 성능이 증가하고 있는지 여부를 표현하는 뷰를 의미한다. 모델 성능 향상 모니터링 뷰(a)는 사용자로부터 구성된 설정값에 따른 자동화된 머신러닝 알고리즘의 동작을 라인 플롯을 통해 시각화할 수 있다. 모델 성능 향상 모니터링 뷰(a)를 통해 사용자로부터 구성된 설정값에 따라 자동화된 머신러닝 알고리즘이 올바르게 동작하고 있는지 빠르게 파악될 수 있다. 자동화된 머신러닝 알고리즘이 탐색 로직을 반복함에 따라 점선의 구역으로 탐색 로직의 인덱스가 x축, 자동화된 머신러닝 알고리즘에 의해 탐색된 학습 모델의 성능이 y축에 시각화될 수 있다. 각 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들이 작은 점(point)으로 표현되며, x축 및 y축의 값에 따라 좌표 상에 위치될 수 있다.
탐색 히스토리 뷰(b)에 대하여 설명하기로 한다. 탐색 히스토리 뷰(b)는 자동화된 머신러닝을 수행하기 전에 설정된 초매개변수 검색 공간의 집합에 따라 복수 개의 플롯(도 6에서는 h1, h2)을 구성할 수 있다. 탐색 히스토리 뷰(b)를 통해 구성된 복수 개의 플롯 중 각각 플롯을 통해 각각의 초매개변수의 검색 공간을 탐색한 히스토리가 시각화될 수 있다. 이러한 플롯에 모델 성능 향상 모니터링 뷰(a)의 x축과 일치시켜 자동화된 머신러닝 알고리즘의 반복된 탐색 로직의 인덱스를 표현할 수 있다. 이러한 반복된 탐색 로직의 인덱스가 플롯 안에 회색 스케일(gray scale)의 그라데이션(gradation)으로 구분될 수 있다. y축에는 초매개변수를 탐색한 검색 공간의 범위가 표현될 수 있으며, 각 반복된 탐색 로직의 인덱스에서 탐색된 학습 모델들은 초매개변수의 값에 따라 위치될 수 있다.
컴퓨터 시스템은 다양한 머신러닝 알고리즘에 대한 동작 원리의 이해를 돕기 위하여 각각의 검색 알고리즘의 특징들을 시각화할 수 있다. 도 6을 참고하면, 진화(evolutionary) 기반의 자동화된 머신러닝 알고리즘의 동작 원리를 표현한 예이다. 컴퓨터 시스템은 진화 기반의 자동화된 머신러닝 알고리즘의 경우, 설정된 인구 수(population size) 만큼 초매개변수의 조합을 가진 학습 모델들을 랜덤하게 샘플링하고, 설정된 훈련 단계까지 학습 모델들을 훈련시킨 후, 학습 모델들의 성능을 비교할 수 있다. 컴퓨터 시스템은 성능 비교 시, 우월한 성능을 가진 학습 모델들을 기 설정된 생존율(survival rate) 만큼 살려두고, 나머지는 버린다. 예를 들면, 컴퓨터 시스템은 기 설정된 생존율 이상인 k(k는 자연수)개의 학습 모델들을 유지시키고, 기 설정된 생존율 이하의 k(k 는 자연수)개의 학습 모델을 폐기할 수 있다. 다시 말해서, 인구 수로부터 기 설정된 생존율을 제외한 학습 모델이 폐기될 수 있다. 컴퓨터 시스템은 다음의 탐색 로직의 인덱스에서 살아남은 학습 모델들을 복사하여, 살아남은 학습 모델들이 가졌던 초매개변수의 값들을 참고하여 초매개변수의 값들을 조금씩 변경하여 학습 모델들을 생성함으로써 빈 인구 수를 채울 수 있다. 이러한 반복 과정을 세대수(generation size) 만큼 반복될 수 있다.
진화(evolutionary) 기반의 자동화된 머신러닝 알고리즘의 경우, 단순히 반복된 탐색 로직의 인덱스에 따라 점(포인트)를 시각화하는 것만으로 알고리즘의 이해가 힘들 수 있다. 컴퓨터 시스템은 각 학습 모델이 어떠한 학습 모델로부터 비롯되었는지에 대한 히스토리(계보)를 시각화할 수 있다. 이전의 반복된 탐색 로직의 인덱스에서 살아남은 학습 모델의 경우, 살아남은 학습 모델이 현재 반복되는 탐색 로직의 인덱스에서도 존재하게 된다. 컴퓨터 시스템은 학습 모델을 새롭게 생성하지 않으므로 이전의 반복된 탐색 로직의 인덱스에서 살아남은 학습 모델과 현재 반복되는 탐색 로직의 인덱스에서 존재하는 학습 모델을 점선으로 연결하여 성능 히스토리를 시각화할 수 있다. 컴퓨터 시스템은 살아남은 학습 모델의 초매개변수 값을 참고하여 생성된 학습 모델의 경우, 새롭게 학습 모델을 생성하는 경우이기 때문에 실선으로 이전의 반복된 탐색 로직의 인덱스에서 살아남은 학습 모델과 연결하여 학습 모델의 생성 히스토리를 시각화할 수 있다.
이외에도, 다른 검색 방식을 가진 자동화된 머신러닝 알고리즘에도 적용과 응용이 가능하다. 예를 들면, bandit 기반의 자동화된 머신러닝 알고리즘의 경우, 학습 모델의 성능을 비교한 후, 성능이 약한 모델들을 점진적으로 폐기하고, 성능이 좋은 학습 모델들만 살아남는 방식이다(살아남은 학습 모델을 복사하지 않음). 이에, bandit 기반의 자동화된 머신러닝 알고리즘에서는 점선만을 이용하여 성능 히스토리의 표현이 가능하다.
또한, 초매개변수는 수치형(numerical) 이외에도 범주형(categorical)이 존재한다. 범주형 초매개변수의 경우 각 학습 모델의 점들이 동일한 범주형 값을 가지고 있을 경우, 플롯의 좌표상에서 서로 중첩되어 잘못된 인지를 일으킬 수 있다. 실시예에서는 범주형 위치에 적당한 척력(repulsive force)을 주는 방식을 이용하여 각각의 점들의 위치가 중첩되지 않도록 한다.
도 7은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘의 검색 결과를 시각화한 것을 비교하기 위한 예이다.
도 7을 참고하면, 다양한 자동화된 머신러닝 알고리즘의 검색 결과를 시각화한 것이다. 각각의 다른 검색 방식을 가진 자동화된 머신러닝 알고리즘에 대한 초기 설정에 따라 검색 과정과 검색 결과가 달라짐을 확인할 수 있다.
도 7(a)를 참고하면, 랜덤 검색 및 베이지안 최적화, 도 7(b)를 참고하면, 하이퍼밴드(HyperBand), BOHB, 도 7(c)를 참고하면, PBT를 이용한 검색 결과를 나타낸 예이다. 일례로, 도 7(a)의 랜덤 검색 및 베이지안 최적화를 통한 검색 결과를 참고하면, 검색 패턴을 거의 드러나지 않음을 확인할 수 있다.
도 7(b)의 bandit 기반의 자동화된 머신러닝 알고리즘을 이용한 검색 결과를 참고하면, 유망한 모델이 살아 남았고, 나쁜 모델은 폐기되었음을 확인할 수 있다. 또한, 도 7(a)의 베이지안 최적화에서는 검색 패턴이 드러나지 않았지만, 도 7(b)의 베이지안 최적화와 하이퍼밴드를 결합한 알고리즘인 BOHB에서는 뚜렷한 검색 패턴이 나타나는 것을 확인할 수 있다. 도 7(c)의 PBT 기반의 자동화된 머신러닝 알고리즘을 이용한 검색 결과를 참고하면, 초기 설정 값에 따라 검색 패턴이 구별되는 것을 확인할 수 있다.
도 8은 일 실시예에 따른 컴퓨터 시스템에서 자동화된 머신러닝 알고리즘에서 탐색된 초매개변수의 검색 공간의 분석과 조정을 시각화하는 동작을 설명하기 위한 도면이다.
학습 모델의 초매개변수는 일반적으로 고차원의 성격을 가지고 있고, 초매개변수들의 값들의 조합은 무한에 가깝다. 무한에 가까운 초매개변수들의 조합에서 학습 모델의 성능에 가장 중요한 초매개변수가 무엇인지 파악하고, 중요한 초매개변수의 어떤 값의 범위가 효과적인지 파악하는 것은 자동화된 머신러닝 알고리즘을 사용함에 있어서, 사용자들이 가장 필요로 하는 분석 요소 중 하나이다.
컴퓨터 시스템은 학습 모델의 성능에 영향을 주는 초매개변수와 초매개변수의 효과적인 값의 구간을 안내(guide)할 수 있다. 이를 통해 사용자는 초매개변수와 초매개변수에 대한 값의 구간을 조정함으로써 초매개변수를 최적화할 수 있다.
컴퓨터 시스템은 학습 모델의 성능에 따른 효과적인 초매개변수를 탐색하여 초매개변수의 중요도를 분석하고, 복수 개의 초매개변수 간의 상호작용 효과를 분석함으로써 추가 탐색을 위한 검색 공간을 구체화할 수 있다.
도 8(a)는 검색 공간 개괄뷰, 도 8(b)는 초매개변수 중요도 분석뷰를 나타낸 것이다. 도 8(a)의 첫 번째 도면을 참고하면, 컴퓨터 시스템은 자동화된 머신러닝 알고리즘을 이용하여 초매개변수 검색 공간과 초매개변수 값들의 조합을 평행 좌표 그래프(parallel coordinates) 상에 표현할 수 있다. 추가적으로, 컴퓨터 시스템은 초매개변수의 중요도를 계산하여 초매개변수들의 상대적인 중요도를 평행 좌표 그래프 주변에 중요도의 크기를 반영한 도형(예를 들면, 사각형) 형태로 나열하여 표현할 수 있다. 예를 들면, 컴퓨터 시스템은 초매개변수들의 상대적인 중요도를 평행 좌표 그래프의 상단에 초매개변수들의 상대적인 중요도의 크기를 반영하는 막대 형태의 유저 인터페이스를 구성하고, 초매개변수들의 상대적인 중요도에 따라 평행 좌표 그래프의 상단에 구성된 막대 형태의 유저 인터페이스의 크기를 조절할 수 있도록 시각화할 수 있다. 컴퓨터 시스템은 시각적 인지를 향상시키기 위하여 각 초매개변수를 나타내는 유저 인터페이스의 순서를 중요도에 따라 특정 방향(예를 들면, 오른쪽)에서부터 위치시키고, 평행 좌표 그래프들의 좌표들 또한 동일한 방향에서부터 나열할 수 있다. 컴퓨터 시스템은 도형 형태의 유저 인터페이스에 대응되는 좌표 정보에 굽은선(curved line)으로 표현하고 굽은선의 두께를 중요도의 값에 따라 조정할 수 있다.
도 8(a)의 두 번째 도면을 참고하면, 초매개변수를 나타내는 유저 인터페이스의 상세 분석을 위해 사용자의 상호작용(예를 들면, 드래그, 클릭, 터치 등)을 통해 초매개변수가 활성화될 수 있다. 도 8(a)를 참고하면, 사용자가 가장 오른쪽에 있는 초매개변수를 나타내는 유저 인터페이스와 상호작용하는 예를 나타낸 것이다. 컴퓨터 시스템은 사용자로부터 초매개변수를 나타내는 유저 인터페이스가 클릭될 경우, 사용자로부터 클릭된 유저 인터페이스에 해당하는 초매개변수의 상대적인 중요도 값을 오른쪽에 원 형태와 함께 표현할 수 있다. 컴퓨터 시스템은 초매개변수의 상대적인 중요도 값이 표현된 막대 형태의 유저 인터페이스의 아래에 클릭한 초매개변수의 상대적 중요도 값과 관련된 막대 형태의 유저 인터페이스를 확대하여 표현할 수 있다. 컴퓨터 시스템은 확대된 막대 형태의 유저 인터페이스의 왼쪽 영역에 클릭된 초매개변수와 연관성이 있는 다른 초매개변수들의 연관성의 값에 따라 다른 초매개변수들을 순서대로 배치하여 시각화할 수 있다. 또한, 컴퓨터 시스템은 활성화된 초매개변수의 효과적인 값의 범위를 평행 좌표 그래프와 연결시켜 바 차트(bar chart)를 통해 시각화할 수 있다. 다시 말해서, 컴퓨터 시스템은 활성화된 매개변수의 영역에 대응하는 평행 좌표 그래프에 바 차트를 중첩(overlay)시킬 수 있다. 이러한 시각화를 통해 사용자는 학습 모델의 성능에 영향을 주는 초매개변수를 직관적으로 파악할 수 있으며, 사용자와의 상호작용을 통해 초매개변수가 클릭됨에 따라 검색 결과를 통해 초매개변수의 조정을 수행하는 가이드를 제공받을 수 있어 검색의 효율성을 증대시킬 수 있다.
또한, 도 8(a)의 세 번째 도면을 참고하면, 단일 초매개변수가 활성화된 상황에서 다른 초매개변수를 나타내는 유저 인터페이스가 클릭될 경우, 평행 좌표 그래프 상에서 서로 다른 초매개변수 간의 연관성이 표현될 수 있다. 이에, 다른 매개변수들과의 영향을 고려하면서 초매개변수 검색 공간의 분석과 조정이 가능하다. 도 8(a)의 네 번째 도면을 참고하면, 초매개변수 검색 공간의 성능을 최대화하는 검색 공간을 구체화할 수 있다.
도 8(b)를 참고하면, 컴퓨터 시스템은 중요도 산출 결과에 대한 상세한 정보를 시각화할 수 있다. 도 8(b)의 첫 번째 도면을 참고하면, 컴퓨터 시스템은 초매개변수의 중요도 산출 결과를 매트릭스(matrix) 형태로 시각화할 수 있다. 매트릭스 형태를 구성하는 각 행(row)에 단일의 초매개변수(또는 두 개의 초매개변수의 조합)의 중요도와, 중요도의 신뢰도 값이 표현될 수 있다. 사용자에 의해 각 행이 활성화 될 경우, 행에 대응되는 초매개변수의 중요도에 관한 상세 정보가 시각화될 수 있다. 도 8(b)의 두 번째 도면을 참고하면, 단일 초매개변수의 중요도에 대한 상세 정보는 수치형 초매개변수일 경우 라인 플롯(line plot), 범주형 초매개변수일 경우 박스 플롯(box plot)으로 시각화될 수 있다. 도 8(b)의 세 번째 도면을 참고하면, 두 개의 초매개변수의 조합에 대한 상세한 정보는 히트맵(heatmap) 플롯으로 시각화될 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.

Claims (20)

  1. 컴퓨터 시스템에 의해 수행되는 초매개변수 조정 방법에 있어서,
    상기 컴퓨터 시스템은 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,
    상기 초매개변수 조정 방법은,
    초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 검색 과정을 시각화하는 단계; 및
    상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하는 단계
    를 포함하고,
    상기 가이드하는 단계는,
    상기 알고리즘을 이용하여 탐색된 초매개변수 검색 공간과 상기 초매개변수들에 대하여 구성된 설정 정보의 조합을 평행 좌표 그래프 상에 위치시키고, 상기 초매개변수들의 상대적인 중요도를 상기 평행 좌표 그래프의 주변에 중요도의 크기를 반영한 도형 형태의 인터페이스를 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  2. 제1항에 있어서,
    상기 시각화하는 단계는,
    초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝(Auto ML) 알고리즘을 이용하는 단계
    를 포함하는 초매개변수 조정 방법.
  3. 제1항에 있어서,
    상기 시각화하는 단계는,
    상기 알고리즘을 이용하여 탐색된 초매개변수 검색 공간에 대한 설정 정보를 구성하도록 상기 복수의 초매개변수들 조합의 학습 모델에 기초하여, 상기 알고리즘의 성능 및 상기 알고리즘의 구성을 진단하기 위한 알고리즘의 검색 과정을 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  4. 삭제
  5. 제1항에 있어서,
    상기 가이드하는 단계는,
    상기 초매개변수들을 나타내는 각각의 유저 인터페이스를 상기 평행 좌표 그래프에 구성하고, 상기 구성된 각각의 유저 인터페이스를 초매개변수의 상대적인 중요도에 따라 기 설정된 방향에서부터 위치시키고, 상기 위치된 각각의 유저 인터페이스에 대응하여 상기 평행 좌표 그래프의 좌표들을 나열하는 단계
    를 포함하는 초매개변수 조정 방법.
  6. 제5항에 있어서,
    상기 가이드하는 단계는,
    상기 초매개변수들을 나타내는 각각의 유저 인터페이스에 대한 사용자와의 상호작용을 통해 초매개변수를 활성화시키는 단계
    를 포함하는 초매개변수 조정 방법.
  7. 제6항에 있어서,
    상기 가이드하는 단계는,
    상기 사용자로부터 선택된 유저 인터페이스에 대응하는 초매개변수의 상대적인 중요도 값을 수치화하고, 상기 선택된 초매개변수를 나타내는 유저 인터페이스의 크기를 확대시키고, 상기 선택된 초매개변수와 연관성이 있는 다른 초매개변수들을 연관성의 값에 따라 배치시키고, 상기 선택된 초매개변수에 대한 설정값의 범위를 평행 좌표 그래프와 복수 개의 바(Bar)로 구성된 시각화 모듈을 통해 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  8. 제7항에 있어서,
    상기 가이드하는 단계는,
    상기 초매개변수의 중요도 산출 결과를 매트릭스 형태로 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  9. 제8항에 있어서,
    상기 가이드하는 단계는,
    상기 매트릭스 형태에 구성된 각 행에 초매개변수 또는 초매개변수들의 조합의 중요도와, 상기 중요도의 신뢰값을 시각화하고, 사용자에 의한 상호작용을 통해 상기 각 행이 활성화됨에 따라 초매개변수의 중요도에 대한 상세 정보를 제공하는 단계
    를 포함하는 초매개변수 조정 방법.
  10. 제9항에 있어서,
    상기 가이드하는 단계는,
    상기 초매개변수의 타입(type)에 따라 상기 초매개변수에 대한 상세 정보를 서로 다른 플롯으로 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  11. 제1항에 있어서,
    상기 시각화하는 단계는,
    상기 학습 모델의 성능 갱신을 확인하기 위한 모니터링 뷰를 제공하여 사용자로부터 설정 정보가 구성된 자동화된 머신러닝 알고리즘의 성능 갱신 기록을 라인 플롯을 통해 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  12. 제11항에 있어서,
    상기 시각화하는 단계는,
    상기 자동화된 머신러닝 알고리즘이 탐색 로직을 반복함에 따라 탐색 로직의 인덱스를 x축에 표현하고, 상기 자동화된 머신러닝 알고리즘에 의해 탐색된 학습 모델의 성능을 y축에 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 상기 x축과 y축의 값에 따라 라인 플롯의 좌표 상에 점(point)으로 위치시키는 단계
    를 포함하는 초매개변수 조정 방법.
  13. 컴퓨터 시스템에 의해 수행되는 초매개변수 조정 방법에 있어서,
    상기 컴퓨터 시스템은 메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서를 포함하고,
    상기 초매개변수 조정 방법은,
    초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 알고리즘의 검색 과정을 시각화하는 단계; 및
    상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하는 단계
    를 포함하고,
    상기 시각화하는 단계는,
    상기 알고리즘의 성능을 확인하기 위한 탐색 히스토리 뷰를 제공하여 자동화된 머신러닝 알고리즘을 수행하기 전에 설정된 초매개변수 검색 공간에 기초하여 복수 개의 플롯을 구성하고, 상기 구성된 복수 개의 플롯 중 각각의 플롯을 통해 초매개변수의 검색 공간에 대한 탐색 히스토리를 가시화하는 단계
    를 포함하는 초매개변수 조정 방법.
  14. 제13항에 있어서,
    상기 시각화하는 단계는,
    상기 구성된 복수 개의 플롯을 학습 모델의 성능 향상 모니터링 뷰의 x축과 일치시켜 자동화된 머신러닝 알고리즘의 탐색 로직의 인덱스를 표현하고, y축에 초매개변수 검색 공간의 범위를 표현하고, 탐색 로직을 반복함에 따라 각 인덱스에서 탐색된 학습 모델들을 초매개변수의 값에 따라 좌표 상에 점(point)으로 위치시키는 단계
    것을 특징으로 하는 초매개변수 조정 방법.
  15. 제14항에 있어서,
    상기 시각화하는 단계는,
    상기 구성된 복수 개의 플롯에서 초매개변수의 타입(type)에 따라 학습 모델들에 대응하는 각각의 점들이 겹치는 경우, 척력(repulsive force)을 가하여 점들을 위치시키는 단계
    를 포함하는 초매개변수 조정 방법.
  16. 제14항에 있어서,
    상기 시각화하는 단계는,
    상기 자동화된 머신러닝 알고리즘의 탐색 로직 특성에 따라, 점선과 곡선을 이용하여 학습 모델들에 대응하는 각각의 점들을 연결하여 학습 모델들 간의 관계를 시각화하는 단계
    를 포함하는 초매개변수 조정 방법.
  17. 제1항 내지 제3항 및 제5항 내지 제16항 중 어느 한 항의 초매개변수 조정 방법을 상기 컴퓨터 시스템에 실행시키기 위해 비-일시적인 컴퓨터 판독가능한 기록 매체에 저장되는 컴퓨터 프로그램.
  18. 제1항 내지 제3항 및 제5항 내지 제16항 중 어느 한 항의 초매개변수 조정 방법을 컴퓨터에 실행시키기 위한 프로그램이 기록되어 있는 비-일시적인 컴퓨터 판독 가능한 기록 매체.
  19. 컴퓨터 시스템에 있어서,
    메모리에 포함된 컴퓨터 판독가능한 명령들을 실행하도록 구성된 적어도 하나의 프로세서
    를 포함하고,
    상기 적어도 하나의 프로세서는,
    초매개변수들의 조합을 검색하기 위한 알고리즘을 이용하여 탐색된 복수의 초매개변수들 조합의 학습 모델에 기초하여, 상기 알고리즘의 검색 과정을 시각화하고,
    상기 시각화된 알고리즘의 검색 과정을 통해 초매개변수 또는 초매개변수들 조합의 중요도를 분석하여 학습 모델의 성능과 관련있는 초매개변수의 정보를 가이드(guide)하고,
    상기 알고리즘을 이용하여 탐색된 초매개변수 검색 공간과 상기 초매개변수들에 대하여 구성된 설정 정보의 조합을 평행 좌표 그래프 상에 위치시키고, 상기 초매개변수들의 상대적인 중요도를 상기 평행 좌표 그래프의 주변에 중요도의 크기를 반영한 도형 형태의 인터페이스를 시각화하는 컴퓨터 시스템.
  20. 제19항에 있어서,
    상기 적어도 하나의 프로세서는,
    초매개변수들의 조합을 검색하기 위한 자동화된 머신러닝(Auto ML) 알고리즘을 이용하는
    것을 특징으로 하는 컴퓨터 시스템.
KR1020200133210A 2020-10-15 2020-10-15 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법 KR102560042B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200133210A KR102560042B1 (ko) 2020-10-15 2020-10-15 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법
JP2021016212A JP7348444B2 (ja) 2020-10-15 2021-02-04 機械学習モデルのハイパーパラメータ最適化過程の分析と調整のためのチューニングアルゴリズム認識視覚化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200133210A KR102560042B1 (ko) 2020-10-15 2020-10-15 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법

Publications (2)

Publication Number Publication Date
KR20220049737A KR20220049737A (ko) 2022-04-22
KR102560042B1 true KR102560042B1 (ko) 2023-07-27

Family

ID=81386197

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200133210A KR102560042B1 (ko) 2020-10-15 2020-10-15 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법

Country Status (2)

Country Link
JP (1) JP7348444B2 (ko)
KR (1) KR102560042B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116992253A (zh) * 2023-07-24 2023-11-03 中电金信软件有限公司 与目标业务关联的目标预测模型中超参数的取值确定方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190236487A1 (en) * 2018-01-30 2019-08-01 Microsoft Technology Licensing, Llc Machine learning hyperparameter tuning tool
US20200097847A1 (en) * 2018-09-21 2020-03-26 Gloudera, lnc. Hyperparameter tuning using visual analytics in a data science platform

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
Aladdin Persson, "TensorFlow Tutorial 17 - Complete TensorBoard Guide." [YouTube], [URL: https://youtu.be/k7KfYXXrOj0]*
Heungseok Park, "(Preview) HyperTendril: Visual Analytics for User-Driven Hyperparameter Optimization of Neural Nets." [YouTube], [URL: https://youtu.be/AewQb1As5A0]*
Hutter et al. "An efficient approach for assessing hyperparameter importance", Proc. the International Conference on Machine Learning (ICML), pp. 754-762, 2014.*
Kim et al. "CHOPT: Automated hyperparameter optimization framework for cloud-based machine learning platforms." arXiv preprint arXiv:1810.03527 (2018).*
Park et al. "Hypertendril: Visual analytics for user-driven hyperparameter optimization of deep neural networks." IEEE Transactions on Visualization and Computer Graphics 27.2 (2020): 1407-1416.
Park et al. "VisualHyperTuner: Visual analytics for user-driven hyperparameter tuning of deep neural networks." Proceedings of the 2nd SysML Conference. 2019.*

Also Published As

Publication number Publication date
JP2022065599A (ja) 2022-04-27
KR20220049737A (ko) 2022-04-22
JP7348444B2 (ja) 2023-09-21

Similar Documents

Publication Publication Date Title
Jamshidi et al. Learning to sample: Exploiting similarities across environments to learn performance models for configurable systems
US11579951B2 (en) Disk drive failure prediction with neural networks
US11544604B2 (en) Adaptive model insights visualization engine for complex machine learning models
US20220129791A1 (en) Systematic approach for explaining machine learning predictions
JP7041473B2 (ja) 複雑なグラフ検索のための局所的な視覚グラフ・フィルタ
US20180300333A1 (en) Feature subset selection and ranking
US20220188645A1 (en) Using generative adversarial networks to construct realistic counterfactual explanations for machine learning models
CN114365158A (zh) 视觉创建和监控机器学习模型
CN108874382A (zh) 用于处理代码的方法和装置
US20220366297A1 (en) Local permutation importance: a stable, linear-time local machine learning feature attributor
US20220036232A1 (en) Technology for optimizing artificial intelligence pipelines
JP2023044728A (ja) 機械学習のための方法、システムおよびコンピュータプログラム製品(埋め込みを用いるインクリメンタル機械学習)
CN115705501A (zh) 机器学习数据处理管道的超参数空间优化
Qing et al. A survey on explainable reinforcement learning: Concepts, algorithms, challenges
KR102560042B1 (ko) 기계 학습 모델의 초매개변수(hyperparameter) 최적화 과정의 분석과 조정을 위한 튜닝 알고리즘 인식 시각화 방법
JP2023036773A (ja) データ処理方法、データ処理装置、電子機器、記憶媒体およびコンピュータプログラム
US11620550B2 (en) Automated data table discovery for automated machine learning
US11699000B2 (en) Experiment design variants evaluation table GUI
KR20210116640A (ko) 피라미드 계층의 아키텍처를 생성하기 위한 시스템 및 방법
US20230259807A1 (en) Providing online expert-in-the-loop training of machine learning models
EP3644241B1 (en) Interactive machine learning model development
KR102576664B1 (ko) 그래픽 사용자 인터페이스의 프로토타입 제작 방법 및 그 시스템
KR102588260B1 (ko) 직관성이 향상된 인포그래픽 시스템
US20230177388A1 (en) Visualization and editing of machine learning models
US11977820B1 (en) Systems, methods, and graphical user interfaces for configuring design of experiments

Legal Events

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