KR20180077717A - 정점 분류 장치 및 정점 분류 방법 - Google Patents

정점 분류 장치 및 정점 분류 방법 Download PDF

Info

Publication number
KR20180077717A
KR20180077717A KR1020160182358A KR20160182358A KR20180077717A KR 20180077717 A KR20180077717 A KR 20180077717A KR 1020160182358 A KR1020160182358 A KR 1020160182358A KR 20160182358 A KR20160182358 A KR 20160182358A KR 20180077717 A KR20180077717 A KR 20180077717A
Authority
KR
South Korea
Prior art keywords
weight matrix
vertices
reliability
updating
vertex
Prior art date
Application number
KR1020160182358A
Other languages
English (en)
Other versions
KR101924832B1 (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 KR1020160182358A priority Critical patent/KR101924832B1/ko
Publication of KR20180077717A publication Critical patent/KR20180077717A/ko
Application granted granted Critical
Publication of KR101924832B1 publication Critical patent/KR101924832B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/16Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Mathematical Analysis (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Algebra (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

정점 분류 방법이 개시된다. 정점 분류 방법은 (a) 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 웨이트 행렬을 업데이트하는 단계, (b) 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 정점들의 신뢰도를 업데이트하는 단계 및 (c) 업데이트된 정점들의 신뢰도를 기준으로 정점들을 분류하는 단계를 포함한다.

Description

정점 분류 장치 및 정점 분류 방법{APPARATUS AND METHOD FOR CLASSIFYING NODES}
본 발명은 정점 분류 장치 및 정점 분류 방법에 관한 것으로, 보다 상세하게는 확률 기반 그래프 모델에서 정점의 신뢰도를 산출하여 정점을 분류하는 정점 분류 장치 및 정점 분류 방법에 관한 것이다.
정점 분류 방법은 정점과 간선으로 이루어진 그래프 형태의 데이터가 주어졌을 때, 초기 상태가 알려지지 않은 정점을 여러 상태 중 하나로 분류하기 위한 방법이다. 여기서, 상태는 모든 정점이 공유하는 이산 변수이며 가능한 상태의 집합은 그래프와 함께 입력될 수 있다. 정점 중 초기 상태가 알려진 정점이 관찰 정점이며, 정점 분류 알고리즘은 그래프의 구조를 이용하여 관찰 정점으로부터 비관찰 정점으로 주어진 정보를 전파시킬 수 있다.
신뢰 전파 알고리즘은 정점 분류 알고리즘 중 하나이며, 간선으로 연결된 두 정점이 동일한 상태를 가지는 경향이 높을 때, 이를 이용하여 그래프 내의 일부 정점에 대한 초기 정보를 그래프 전체로 전파시킨다. 신뢰 전파 알고리즘에서 모든 간선의 전파도가 동일하며 전파 인자라는 변수에 의해 전파도가 결정된다. 따라서, 전파 인자가 큰 경우 간선으로 연결된 정점이 같은 상태를 가질 확률이 높아지므로 전파력이 강해지고, 전파 인자가 작은 경우 간선으로 연결된 정점이 같은 상태를 가질 확률이 낮아지므로 전파력이 약해진다.
다만, 종래의 신뢰 전파 알고리즘은 전파 인자를 결정하는 방법이 없어서 교차 타당화 방법을 이용하였으며, 교차 타당화 방법은 인자의 개수에 지수적으로 비례하는 시간 복잡도로 인하여 각 간선이 서로 다른 특성을 지니는 복잡한 그래프에는 적용될 수 없는 문제가 있었다.
본 발명의 목적은 웨이트 행렬의 업데이트를 통하여 정점들의 신뢰도를 산출하여 복잡한 그래프에도 이용할 수 있는 정점 분류 장치 및 정점 분류 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 발명의 일 실시 예에 따른 정점 분류 방법은, (a) 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 상기 웨이트 행렬을 업데이트하는 단계, (b) 상기 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트하는 단계 및 (c) 업데이트된 정점들의 신뢰도를 기준으로 상기 정점들을 분류하는 단계를 포함한다.
여기서, 상기 웨이트 행렬을 업데이트하는 단계는, 상기 정점들의 신뢰도, 상기 정점들을 연결하는 간선에 할당되는 메시지 및 상기 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수의 기울기를 산출하는 단계 및 산출된 비용 함수의 기울기 및 상기 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 상기 웨이트 행렬을 업데이트하는 단계를 포함할 수 있다.
여기서, 상기 메시지는, 상기 정점들을 연결하는 간선의 피처 벡터 및 상기 웨이트 행렬로 구성되는 전파 함수와 상기 정점들의 신뢰도를 기반으로 산출될 수 있다.
또한, 상기 웨이트 행렬을 업데이트하는 단계는, 상기 웨이트 행렬에서 상기 비용 함수의 기울기에 상기 스텝 크기를 곱한 값을 뺀 값으로 상기 웨이트 행렬을 업데이트할 수 있다.
또한, 상기 (a) 단계 및 상기 (b) 단계는, 상기 웨이트 행렬이 수렴할 때까지 반복하여 수행될 수 있다.
또한, 상기 정점들을 분류하는 단계는, 상기 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별할 수 있다.
한편, 본 발명의 일 실시 예에 따른 정점 분류 장치는, 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 상기 웨이트 행렬을 업데이트하는 웨이트 행렬 업데이트부, 상기 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트하는 신뢰도 업데이트부 및 업데이트된 정점들의 신뢰도를 기준으로 상기 정점들을 분류하는 정점 분류부를 포함한다.
여기서, 상기 웨이트 행렬 업데이트부는, 상기 정점들의 신뢰도, 상기 정점들을 연결하는 간선에 할당되는 메시지 및 상기 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수의 기울기를 산출하고, 산출된 비용 함수의 기울기 및 상기 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 상기 웨이트 행렬을 업데이트할 수 있다.
여기서, 상기 메시지는, 상기 정점들을 연결하는 간선의 피처 벡터 및 상기 웨이트 행렬로 구성되는 전파 함수와 상기 정점들의 신뢰도를 기반으로 산출될 수 있다.
또한, 상기 웨이트 행렬 업데이트부는, 상기 웨이트 행렬에서 상기 비용 함수의 기울기에 상기 스텝 크기를 곱한 값을 뺀 값으로 상기 웨이트 행렬을 업데이트할 수 있다.
또한, 상기 웨이트 행렬 업데이트부 및 상기 신뢰도 업데이트부는, 상기 웨이트 행렬이 수렴할 때까지 웨이트 행렬 업데이트 및 신뢰도 업데이트를 반복하여 수행할 수 있다.
또한, 상기 정점 분류부는, 상기 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별할 수 있다.
한편, 본 발명의 일 실시 예에 따른 컴퓨터가 읽을 수 있는 기록 매체는, (a) 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 상기 웨이트 행렬을 업데이트하는 단계, (b) 상기 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트하는 단계 및 (c) 업데이트된 정점들의 신뢰도를 기준으로 상기 정점들을 분류하는 단계를 포함하는 정점 분류 방법을 수행하기 위한 프로그램을 기록한다.
이상 설명한 바와 같이 본 발명의 다양한 실시 예에 따르면 웨이트 행렬의 업데이트를 통하여 정점들의 신뢰도를 산출하여, 복잡한 그래프에서도 좀 더 정확하게 정점 분류를 수행할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 정점 분류 장치의 구성을 나타내는 블럭도이다.
도 2는 본 발명의 일 실시 예에 따른 정점 분류 방법을 나타내는 흐름도이다.
도 3은 본 발명의 일 실시 예에 따른 정점 분류 방법이 반복된 후 웨이트 행렬의 결과값을 나타내는 도면이다.
도 4는 본 발명의 일 실시 예에 따른 정점 분류 방법의 결과값을 다른 정점 분류 방법의 결과값과 비교한 도면이다.
본 발명의 다른 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술 되는 실시 예를 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예는 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
만일 정의되지 않더라도, 여기서 사용되는 모든 용어들(기술 혹은 과학 용어들을 포함)은 이 발명이 속한 종래 기술에서 보편적 기술에 의해 일반적으로 수용되는 것과 동일한 의미를 가진다. 일반적인 사전들에 의해 정의된 용어들은 관련된 기술 그리고/혹은 본 출원의 본문에 의미하는 것과 동일한 의미를 갖는 것으로 해석될 수 있고, 그리고 여기서 명확하게 정의된 표현이 아니더라도 개념화되거나 혹은 과도하게 형식적으로 해석되지 않을 것이다.
본 명세서에서 사용된 용어는 실시 예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 '포함한다' 및/또는 이 동사의 다양한 활용형들 예를 들어, '포함', '포함하는', '포함하고', '포함하며' 등은 언급된 조성, 성분, 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 조성, 성분, 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
본 명세서에서 '및/또는' 이라는 용어는 나열된 구성들 각각 또는 이들의 다양한 조합을 가리킨다.
한편, 본 명세서 전체에서 사용되는 '~부', '~기', '~블록', '~모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어 소프트웨어, FPGA 또는 ASIC과 같은 하드웨어 구성요소를 의미할 수 있다. 그렇지만 '~부', '~기', '~블록', '~모듈' 등이 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부', '~기', '~블록', '~모듈'은 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부', '~기', '~블록', '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로 코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부', '~기', '~블록', '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부', '~기', '~블록', '~모듈'들로 결합되거나 추가적인 구성요소들과 '~부', '~기', '~블록', '~모듈'들로 더 분리될 수 있다.
도 1은 본 발명의 일 실시 예에 따른 정점 분류 장치를 나타내는 블럭도이다.
도 1을 참조하면, 정점 분류 장치(100)는 웨이트 행렬 업데이트부(110), 신뢰도 업데이트부(120) 및 정점 분류부(130)를 포함한다.
웨이트 행렬 업데이트부(110)는 정점들의 신뢰도를 기반으로 웨이트 행렬을 업데이트한다. 여기서, 각 정점에는 신뢰도가 부여될 수 있으며, 간선은 정점 사이를 연결한 선으로, 정점 간의 관계를 나타낼 수 있다. 일 예로, 본 발명에 따른 정점 분류 방법이 논문 추천 방법에 적용되는 경우, 각 논문을 정점으로 나타낼 수 있으며, 각 논문 간의 관계를 간선으로 나타낼 수 있다. 여기서, 신뢰도는 각 논문의 선호도 등이 될 수 있다. 다른 예로, 본 발명에 따른 정점 분류 방법이 영화 추천 방법에 적용되는 경우, 각 영화는 정점, 각 영화 간의 관계는 간선으로 나타낼 수 있고, 각 영화의 선호도를 신뢰도로 나타낼 수 있다. 여기서, 선호도는 특정 사용자가 해당 영화에 부여한 평점이 될 수 있다. 다만, 이에 한정되는 것은 아니며, 각 정점 및 간선은 다양한 실시 예에 따라 다양한 방법으로 설정될 수 있다.
정점들의 신뢰도는 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출될 수 있다. 구체적으로, 웨이트 행렬 업데이트부(110)는 정점들의 신뢰도, 정점들을 연결하는 간선에 할당되는 메시지 및 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수(cost function)의 기울기를 산출하고, 산출된 비용 함수의 기울기 및 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 웨이트 행렬을 업데이트할 수 있다. 여기서, 메시지는 정점들을 연결하는 간선의 피처 벡터 및 웨이트 행렬로 구성되는 전파 함수와 정점들의 신뢰도를 기반으로 산출될 수 있다.
예를 들어, 정점 분류 방법을 영화 추천 방법에 적용하는 경우, 영화 장르나 영화감독 등을 기준으로 간선의 피처 벡터를 생성할 수 있으며, 사용자가 일부 영화에 평점을 부여하면, 정점 분류 알고리즘을 수행하여, 모든 영화에 대한 해당 사용자의 영화 선호도를 설정할 수 있으며, 이에 따라 영화를 추천할 수 있다. 구체적으로, 사용자가 평점을 부여한 영화에 대응되는 정점에 사용자가 부여한 평점에 따른 신뢰도를 부여하고, 각 간선의 피처 벡터 및 웨이트 행렬을 기반으로 신뢰도가 부여된 일부 정점의 신뢰도를 전파하여, 모든 정점에 대한 신뢰도를 산출할 수 있다. 이 경우, 피처 벡터 및 웨이트 행렬은 반복적으로 업데이트될 수 있으며, 업데이트된 웨이트 행렬에 대응하여 정점들의 신뢰도를 업데이트할 수 있다. 이후, 웨이트 행렬이 수렴될 때까지 웨이트 행렬 및 신뢰도의 업데이트를 반복하여 수행한 후, 수렴된 웨이트 행렬을 이용하여 산출된 정점들의 신뢰도를 이용하여 정점들을 분류할 수 있다. 예를 들어, 정점들의 신뢰도(즉, 사용자의 영화 선호도)가 3 이상인 정점(영화)들을 선별하여, 사용자에게 추천하는 서비스를 제공할 수 있다.
이하, 구체적인 수학식을 이용하여 웨이트 행렬 업데이트부(110)가 웨이트 행렬을 업데이트하는 방법을 설명한다.
우선, 웨이트 행렬 업데이트부(110)는 정점들의 입력 데이터를 웨이트 행렬에 반영하여 일부 정점들의 신뢰도를 산출할 수 있으며, 웨이트 행렬은 정점들의 입력 데이터에 기초하여 임의로 설정될 수 있다. 웨이트 행렬 업데이트부(110)는 아래의 수학식 1을 이용하여 각 간선의 전파 인자를 산출할 수 있다.
Figure pat00001
여기서,
Figure pat00002
는 웨이트 벡터,
Figure pat00003
는 피처 벡터,
Figure pat00004
는 상수 벡터이다.
즉, 전파 인자는 웨이트 벡터 및 피처 벡터에 의하여 결정될 수 있으며, 웨이트 벡터 및 피처 벡터는 초기에 임의로 설정될 수 있으며, 정점 분류 알고리즘이 수행됨에 따라 업데이트될 수 있다. 상기 수학식 1을 이용하여, k가 1, 2, 3, 4일 때의 값으로부터 전파 인자
Figure pat00005
,
Figure pat00006
,
Figure pat00007
,
Figure pat00008
를 산출할 수 있다.
이후, 웨이트 행렬 업데이트부(110)는 산출된 전파 인자를 이용하여, 각 간선에 할당되는 메시지를 산출할 수 있다. 구체적으로, 아래의 수학식 2를 이용하여, 산출된 전파 인자
Figure pat00009
,
Figure pat00010
,
Figure pat00011
,
Figure pat00012
와 정점의 신뢰도를 적용하여 메시지를 산출할 수 있다.
Figure pat00013
여기서,
Figure pat00014
Figure pat00015
은 메시지,
Figure pat00016
는 정점의 신뢰도,
Figure pat00017
,
Figure pat00018
,
Figure pat00019
,
Figure pat00020
는 전파 인자이다.
웨이트 행렬 업데이트부(110)는 전파 인자, 정점의 신뢰도 및 메시지를 이용하여, 비용 함수의 기울기를 산출할 수 있다. 우선, 아래의 수학식 3을 이용하여 메시지를 웨이트 행렬에 대하여 미분한 값을 산출할 수 있다.
Figure pat00021
여기서,
Figure pat00022
는 아래의 수학식 4 및 5에 의해 도출될 수 있다. 구체적으로, 아래의 수학식 4를 이용하여 z 값을 산출하고, 산출된 z 값을 수학식 4에 대입하여
Figure pat00023
를 산출할 수 있다.
Figure pat00024
Figure pat00025
여기서,
Figure pat00026
는 정점의 신뢰도,
Figure pat00027
Figure pat00028
는 메시지이고,
Figure pat00029
,
Figure pat00030
,
Figure pat00031
,
Figure pat00032
는 전파 인자이다.
또한,
Figure pat00033
는 아래의 수학식 6 및 7을 이용하여 도출할 수 있다. 구체적으로, 아래의 수학식 7을 이용하여 z, k, k', k1, k2, k3, k4 값을 산출하고, 산출된 z, k, k', k1, k2, k3, k4 값을 아래의 수학식 6에 대입하여,
Figure pat00034
를 산출할 수 있다.
Figure pat00036
여기서,
Figure pat00037
는 정점의 신뢰도,
Figure pat00038
Figure pat00039
는 메시지이고,
Figure pat00040
,
Figure pat00041
,
Figure pat00042
,
Figure pat00043
는 전파 인자이다.
또한,
Figure pat00044
Figure pat00045
Figure pat00046
의 시그모이드(sigmoid) 함수이므로
Figure pat00047
Figure pat00048
에 대하여 미분하여 산출할 수 있으며,
Figure pat00049
Figure pat00050
Figure pat00051
에 대하여 미분하여 재귀적으로(recursive) 산출할 수 있다.
웨이트 행렬 업데이트부(110)는 상기와 같은 방법으로,
Figure pat00052
,
Figure pat00053
,
Figure pat00054
,
Figure pat00055
를 각각 산출한 후, 상기 수학식 3에 대입하여,
Figure pat00056
를 산출할 수 있다.
이후, 웨이트 행렬 업데이트부(110)는 아래의 수학식 8을 이용하여
Figure pat00057
를 산출할 수 있다.
Figure pat00058
여기서,
Figure pat00059
는 정점의 신뢰도,
Figure pat00060
는 메시지이다.
이후, 웨이트 행렬 업데이트부(110)는 산출된
Figure pat00061
Figure pat00062
를 아래의 수학식 9에 적용하여, 신뢰도를 웨이트 행렬에 대하여 미분한 값을 산출할 수 있다.
Figure pat00063
이후, 웨이트 행렬 업데이트부(110)는 신뢰도를 웨이트 행렬에 대하여 미분한 값을 아래의 수학식 10에 적용하여, 비용 함수의 기울기(비용 함수를 웨이트 행렬에 대하여 미분한 값)를 산출할 수 있다.
Figure pat00064
여기서, λ는 균일화 인자, x는 bn-bp 이다. 균일화 인자는 웨이트 행렬의 최대 크기를 결정하는 값으로, 결과의 과적합을 방지하고 웨이트 행렬이 지나치게 많이 업데이트되는 것을 방지할 수 있다.
비용 함수는 아래의 수학식 11과 같이 나타낼 수 있으며, 비용 함수를 웨이트 행렬에 대하여 미분하면 상기와 같은 수학식 10이 도출될 수 있다.
Figure pat00065
여기서, λ는 균일화 인자,
Figure pat00066
는 웨이트 행렬이고, h(x) 함수는 아래의 수학식 12와 같다.
Figure pat00067
여기서, x는 bn-bp, d는 상수이다.
웨이트 행렬 업데이트부(110)는 비용 함수의 기울기가 산출되면, 웨이트 행렬에서 비용 함수의 기울기에 스텝 크기를 곱한 값을 뺀 값으로 웨이트 행렬을 업데이트할 수 있다. 즉, 웨이트 행렬은 아래의 수학식 13과 같이 업데이트될 수 있다.
Figure pat00068
여기서,
Figure pat00069
는 웨이트 행렬, α는 스텝 크기,
Figure pat00070
는 비용 함수의 기울기이다. 스텝 크기는 웨이트 행렬의 업데이트 횟수를 결정하는 값으로, 정점의 입력 데이터에 따라 적절한 값을 선택할 수 있다.
웨이트 행렬 업데이트부(110)는 웨이트 행렬이 수렴할 때까지 웨이트 행렬 업데이트를 반복하여 수행할 수 있다.
신뢰도 업데이트부(120)는 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트한다. 구체적으로, 업데이트된 웨이트 행렬 및 간선의 피처 벡터를 이용하여 메시지를 산출하고, 메시지가 수렴할 때까지 메시지 업데이트를 반복 수행하여 정점들의 신뢰도를 업데이트할 수 있다.
신뢰도 업데이트부(120)는 웨이트 행렬이 수렴할 때까지 신뢰도 업데이트를 반복하여 수행할 수 있다.
정점 분류부(130)는 업데이트된 정점들의 신뢰도를 기준으로 정점들을 분류할 수 있다. 또한, 정점 분류부(130)는 웨이트 행렬 업데이트부(110) 및 신뢰도 업데이트부(120)에서 웨이트 행렬이 수렴할 때까지 웨이트 행렬 및 신뢰도가 업데이트된 후, 정점들의 업데이트된 신뢰도를 기준으로 정점들을 분류할 수 있다. 일 예로, 정점 분류부(130)는 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별할 수 있다. 다만, 이에 한정되는 것은 아니며, 정점 분류부(130)는 AUC, MAP 등 다양한 방식으로 정점을 분류할 수 있다.
이상 설명한 바와 같이 본 발명의 다양한 실시 예에 따르면 웨이트 행렬의 업데이트를 통하여 정점들의 신뢰도를 산출하여, 복잡한 그래프에서도 좀 더 정확하게 정점 분류를 수행할 수 있다.
도 2는 본 발명의 일 실시 예에 따른 정점 분류 방법을 나타내는 흐름도이다.
도 2를 참조하면, 우선, 정점들의 신뢰도를 기반으로 웨이트 행렬을 업데이트한다(S210). 여기서, 정점들의 신뢰도는 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출될 수 있다. 구체적으로, 정점들의 신뢰도, 정점들을 연결하는 간선에 할당되는 메시지 및 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수의 기울기를 산출한 후, 산출된 비용 함수의 기울기 및 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 웨이트 행렬을 업데이트할 수 있다. 여기서, 메시지는 정점들을 연결하는 간선의 피처 벡터 및 웨이트 행렬로 구성되는 전파 함수와 정점들의 신뢰도를 기반으로 산출될 수 있다.
이어서, 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 정점들의 신뢰도를 업데이트한다(S220). 정점들의 신뢰도가 업데이트된 후, 업데이트된 정점들의 신뢰도를 이용하여 웨이트 행렬을 업데이트할 수 있으며, 웨이트 행렬이 수렴할 때까지 정점들의 신뢰도 및 웨이트 행렬의 업데이트를 수행할 수 있다.
이어서, 업데이트된 정점들의 신뢰도를 기준으로 정점들을 분류한다(S230). 일 예로, 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별할 수 있다. 다만, 이에 한정되는 것은 아니며, AUC, MAP 등 다양한 방식으로 정점을 분류할 수 있다.
또한, 전술한 본 발명의 실시 예에 따른 정점 분류 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있다. 상기 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장 장치 등이 있다.
도 3은 본 발명의 일 실시 예에 따른 정점 분류 방법이 반복된 후 웨이트 행렬의 결과값을 나타내는 도면이다. 도 3을 참조하면, 본 발명의 일 실시 예에 따른 정점 분류 방법을 일정 횟수 이상 반복 수행하는 경우, 웨이트 행렬이 수렴하는 것을 볼 수 있다.
또한, 도 4를 참조하면, 본 발명의 일 실시 예에 따른 정점 분류 방법(도 4에서 SBP)은 다른 정점 분류 방법보다 좋은 성능(best performance)이 나타남을 확인할 수 있다.
이상의 실시 예들은 본 발명의 이해를 돕기 위하여 제시된 것으로, 본 발명의 범위를 제한하지 않으며, 이로부터 다양한 변형 가능한 실시 예들도 본 발명의 범위에 속할 수 있음을 이해하여야 한다. 예를 들어, 본 발명의 실시 예에 도시된 각 구성 요소는 분산되어 실시될 수도 있으며, 반대로 여러 개로 분산된 구성 요소들은 결합되어 실시될 수 있다. 따라서, 본 발명의 기술적 보호범위는 특허청구범위의 기술적 사상에 의해 정해져야 할 것이며, 본 발명의 기술적 보호범위는 특허청구범위의 문언적 기재 그 자체로 한정되는 것이 아니라 실질적으로는 기술적 가치가 균등한 범주의 발명에 대하여까지 미치는 것임을 이해하여야 한다.
100: 정점 분류 장치 110: 웨이트 행렬 업데이트부
120: 신뢰도 업데이트부 130: 정점 분류부

Claims (13)

  1. (a) 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 상기 웨이트 행렬을 업데이트하는 단계;
    (b) 상기 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트하는 단계; 및
    (c) 업데이트된 정점들의 신뢰도를 기준으로 상기 정점들을 분류하는 단계;를 포함하는 정점 분류 방법.
  2. 제1항에 있어서,
    상기 웨이트 행렬을 업데이트하는 단계는,
    상기 정점들의 신뢰도, 상기 정점들을 연결하는 간선에 할당되는 메시지 및 상기 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수의 기울기를 산출하는 단계; 및
    산출된 비용 함수의 기울기 및 상기 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 상기 웨이트 행렬을 업데이트하는 단계;를 포함하는 정점 분류 방법.
  3. 제2항에 있어서,
    상기 메시지는,
    상기 정점들을 연결하는 간선의 피처 벡터 및 상기 웨이트 행렬로 구성되는 전파 함수와 상기 정점들의 신뢰도를 기반으로 산출되는 정점 분류 방법.
  4. 제2항에 있어서,
    상기 웨이트 행렬을 업데이트하는 단계는,
    상기 웨이트 행렬에서 상기 비용 함수의 기울기에 상기 스텝 크기를 곱한 값을 뺀 값으로 상기 웨이트 행렬을 업데이트하는 정점 분류 방법.
  5. 제1항에 있어서,
    상기 (a) 단계 및 상기 (b) 단계는, 상기 웨이트 행렬이 수렴할 때까지 반복하여 수행되는 정점 분류 방법.
  6. 제1항에 있어서,
    상기 정점들을 분류하는 단계는,
    상기 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별하는 정점 분류 방법.
  7. 정점들의 입력 데이터를 웨이트 행렬에 반영하여 산출되는 정점들의 신뢰도를 기반으로 상기 웨이트 행렬을 업데이트하는 웨이트 행렬 업데이트부;
    상기 정점들의 신뢰도를 업데이트된 웨이트 행렬에 반영하여 상기 정점들의 신뢰도를 업데이트하는 신뢰도 업데이트부; 및
    업데이트된 정점들의 신뢰도를 기준으로 상기 정점들을 분류하는 정점 분류부;를 포함하는 정점 분류 장치.
  8. 제7항에 있어서,
    상기 웨이트 행렬 업데이트부는,
    상기 정점들의 신뢰도, 상기 정점들을 연결하는 간선에 할당되는 메시지 및 상기 웨이트 행렬의 최대 크기를 결정하는 균일화 인자를 기반으로 비용 함수의 기울기를 산출하고, 산출된 비용 함수의 기울기 및 상기 웨이트 행렬의 업데이트 횟수를 결정하는 스텝 크기를 이용하여 상기 웨이트 행렬을 업데이트하는 정점 분류 장치.
  9. 제8항에 있어서,
    상기 메시지는,
    상기 정점들을 연결하는 간선의 피처 벡터 및 상기 웨이트 행렬로 구성되는 전파 함수와 상기 정점들의 신뢰도를 기반으로 산출되는 정점 분류 장치.
  10. 제8항에 있어서,
    상기 웨이트 행렬 업데이트부는,
    상기 웨이트 행렬에서 상기 비용 함수의 기울기에 상기 스텝 크기를 곱한 값을 뺀 값으로 상기 웨이트 행렬을 업데이트하는 정점 분류 장치.
  11. 제7항에 있어서,
    상기 웨이트 행렬 업데이트부 및 상기 신뢰도 업데이트부는, 상기 웨이트 행렬이 수렴할 때까지 웨이트 행렬 업데이트 및 신뢰도 업데이트를 반복하여 수행하는 정점 분류 장치.
  12. 제7항에 있어서,
    상기 정점 분류부는,
    상기 업데이트된 정점의 신뢰도가 기설정된 값 이상인 정점을 선별하는 정점 분류 장치.
  13. 제1항 내지 제6항 중 어느 한 항의 방법을 수행하기 위한 프로그램을 기록한 컴퓨터가 읽을 수 있는 기록 매체.

KR1020160182358A 2016-12-29 2016-12-29 정점 분류 장치 및 정점 분류 방법 KR101924832B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160182358A KR101924832B1 (ko) 2016-12-29 2016-12-29 정점 분류 장치 및 정점 분류 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160182358A KR101924832B1 (ko) 2016-12-29 2016-12-29 정점 분류 장치 및 정점 분류 방법

Publications (2)

Publication Number Publication Date
KR20180077717A true KR20180077717A (ko) 2018-07-09
KR101924832B1 KR101924832B1 (ko) 2018-12-05

Family

ID=62919092

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160182358A KR101924832B1 (ko) 2016-12-29 2016-12-29 정점 분류 장치 및 정점 분류 방법

Country Status (1)

Country Link
KR (1) KR101924832B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116094943A (zh) * 2023-04-07 2023-05-09 湖南快乐阳光互动娱乐传媒有限公司 一种pcdn节点重要性排名方法、装置和设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140079639A (ko) * 2012-12-18 2014-06-27 한양대학교 산학협력단 협업 필터링을 위한 emd 기반 유사 사용자 선별 방법
JP2014222434A (ja) * 2013-05-14 2014-11-27 日本電信電話株式会社 重み行列更新装置、その動作方法およびコンピュータプログラム
KR20150028497A (ko) * 2013-09-06 2015-03-16 한양대학교 산학협력단 행렬 분해 기반 추천 방법을 위한 신뢰 네트워크를 이용하는 데이터 대치 방법
JP2015215826A (ja) * 2014-05-13 2015-12-03 富士通株式会社 グラフデータ演算方法、グラフデータ演算システムおよびグラフデータ演算プログラム
JP2016095568A (ja) * 2014-11-12 2016-05-26 Kddi株式会社 モデル構築装置及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140079639A (ko) * 2012-12-18 2014-06-27 한양대학교 산학협력단 협업 필터링을 위한 emd 기반 유사 사용자 선별 방법
JP2014222434A (ja) * 2013-05-14 2014-11-27 日本電信電話株式会社 重み行列更新装置、その動作方法およびコンピュータプログラム
KR20150028497A (ko) * 2013-09-06 2015-03-16 한양대학교 산학협력단 행렬 분해 기반 추천 방법을 위한 신뢰 네트워크를 이용하는 데이터 대치 방법
JP2015215826A (ja) * 2014-05-13 2015-12-03 富士通株式会社 グラフデータ演算方法、グラフデータ演算システムおよびグラフデータ演算プログラム
JP2016095568A (ja) * 2014-11-12 2016-05-26 Kddi株式会社 モデル構築装置及びプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116094943A (zh) * 2023-04-07 2023-05-09 湖南快乐阳光互动娱乐传媒有限公司 一种pcdn节点重要性排名方法、装置和设备
CN116094943B (zh) * 2023-04-07 2023-06-06 湖南快乐阳光互动娱乐传媒有限公司 一种pcdn节点重要性排名方法、装置和设备

Also Published As

Publication number Publication date
KR101924832B1 (ko) 2018-12-05

Similar Documents

Publication Publication Date Title
Lundberg et al. An unexpected unity among methods for interpreting model predictions
US11514308B2 (en) Method and apparatus for machine learning
US8219573B2 (en) Test case generation apparatus, generation method therefor, and program storage medium
WO2018170454A2 (en) Using different data sources for a predictive model
US11416743B2 (en) Swarm fair deep reinforcement learning
CN108229667A (zh) 基于人工神经网络类别的修剪
Laurain et al. An instrumental least squares support vector machine for nonlinear system identification
US20210073633A1 (en) Neural network rank optimization device and optimization method
Ghosh et al. Point processes, hole events, and large deviations: random complex zeros and Coulomb gases
Andrade et al. Bayesian robustness modelling of location and scale parameters
Riis et al. A geometric integration approach to nonsmooth, nonconvex optimisation
US20230133683A1 (en) Feature interaction via edge search
US11468294B2 (en) Projecting images to a generative model based on gradient-free latent vector determination
US11003989B2 (en) Non-convex optimization by gradient-accelerated simulated annealing
US20180260396A1 (en) Method and system for mapping attributes of entities
CN116029359A (zh) 计算机可读记录介质、机器学习的方法以及信息处理设备
KR101924832B1 (ko) 정점 분류 장치 및 정점 분류 방법
US11741101B2 (en) Estimating execution time for batch queries
CN108470251B (zh) 基于平均互信息的社区划分质量评价方法及系统
KR102534936B1 (ko) 영상 분류 장치 및 방법
Bassett et al. Fused density estimation: theory and methods
Brockhoff et al. Using comparative preference statements in hypervolume-based interactive multiobjective optimization
WO2022252694A1 (zh) 神经网络优化方法及其装置
Taylor et al. Interactive multiobjective optimisation: Preference changes and algorithm responsiveness
CN114489574B (zh) 一种基于svm的流处理框架的自动调优方法

Legal Events

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