맞춤기술찾기

이전대상기술

페이지랭크와 토픽 모델링을 이용한 소프트웨어 도메인 토픽 추출 시스템(Software domain topics extraction system using PageRank and topic modeling)

  • 기술번호 : KST2017018619
  • 담당센터 : 서울동부기술혁신센터
  • 전화번호 : 02-2155-3662
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 자바 소스 파일에서 소스 코드가 가지고 있는 단어 집합 중 의미있는 단어 집합을 추출하고, 자바 소스 파일에서 식별자 간 동적 호출 관계를 추출한 호출 그래프를 생성하고, 페이지랭크(PageRank) 알고리즘을 통해 각 식별자에 따른 중요도 값(즉, 페이지랭크 값)를 할당하고, 상기 단어 집합에 페이지랭크 값를 활용하여 최종 분석 대상 문서를 생성하고, 생성된 문서에 LDA 기반 토픽 모델링을 적용하여 토픽별 단어 집합을 출력하게 함으로써, 프로젝트의 도메인 토픽을 얻을 수 있도록 하는, 소프트웨어 도메인 토픽 추출 시스템에 관한 것이다.본 발명의 소프트웨어 도메인 토픽 추출 시스템은, 프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드가 가지고 있는 단어 집합에서, 기 설정된 불용어와, 기 설정된 불중요 단어를 제거한 단어 집합인, 의미 있는 단어의 집합을 추출하는, 전처리기; 프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드를 파싱(parsing)하여 클래스(class)와 메서드(method)를 추출하여, 각 클래스와, 각 클래스 내에 포함된 메서드 호출 정보를 나타내는 호출그래프를 생성하는, 호출 그래프 생성기; 호출 그래프 생성기로부터 수신된 호출그래프의 각 클래스 및 각 클래스 내에 포함된 메서드 호출 정보를, 페이지랭크(PageRank) 알고리즘에 적용하여, 각 클래스별 페이지랭크 값을 생성하는, 페이지 랭커; 전처리기에서 수신된 단어 집합들을 저장한 코퍼스(Copus)를 생성하고, 페이지 랭커로부터 수신된 각 클래스별 페이지랭크 값을 기설정된 보정계수를 곱하여 보정하고, 보정된 페이지랭크 값만큼 각 클래스 식별자를 생성하여, 코퍼스에 추가하는, 코퍼스 생성기; 코퍼스 생성기에서 수신된 코퍼스를 대상으로, 잠재적인 디리클레 할당 (Latent Dirichlet Allocation, LDA) 알고리즘을 적용하여, 코퍼스의 각 문서에 대해, 토픽들에 대한 분포 값을 검출하고, 각 토픽에 대한 단어 집합을 검출하는, 토픽 모델러;를 포함하여 이루어진 것을 특징으로 한다.
Int. CL G06F 17/30 (2017.03.28) G06F 9/45 (2017.03.28) G06F 17/22 (2017.03.28) G06F 17/18 (2017.03.28)
CPC
출원번호/일자 1020170035925 (2017.03.22)
출원인 연세대학교 원주산학협력단
등록번호/일자
공개번호/일자 10-2017-0134191 (2017.12.06) 문서열기
공고번호/일자 문서열기
국제출원번호/일자
국제공개번호/일자
우선권정보 대한민국  |   1020160064521   |   2016.05.26
법적상태 등록
심사진행상태 수리
심판사항
구분 신규
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2017.03.22)
심사청구항수 18

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 연세대학교 원주산학협력단 대한민국 강원도 원주시

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 남영광 대한민국 강원도 원주
2 황상원 대한민국 서울시 성북구
3 이용석 대한민국 서울시 강동구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 민혜정 대한민국 서울특별시 송파구 오금로 **, ***호(방이동, 잠실리시온)(스텔라국제특허법률사무소)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
1 연세대학교 원주산학협력단 강원도 원주시
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 [특허출원]특허출원서
[Patent Application] Patent Application
2017.03.22 수리 (Accepted) 1-1-2017-0282574-11
2 출원인정보변경(경정)신고서
Notification of change of applicant's information
2017.06.23 수리 (Accepted) 4-1-2017-5098886-10
3 출원인정보변경(경정)신고서
Notification of change of applicant's information
2018.05.14 수리 (Accepted) 4-1-2018-5085255-51
4 의견제출통지서
Notification of reason for refusal
2018.09.18 발송처리완료 (Completion of Transmission) 9-5-2018-0643198-40
5 [명세서등 보정]보정서
[Amendment to Description, etc.] Amendment
2018.10.12 보정승인간주 (Regarded as an acceptance of amendment) 1-1-2018-1003598-43
6 [지정기간단축]기간연장(단축, 경과구제)신청서
[Reduction of Designated Period] Request for Extension of Period (Reduction, Expiry Reconsideration)
2018.10.12 수리 (Accepted) 1-1-2018-1003983-18
7 [거절이유 등 통지에 따른 의견]의견(답변, 소명)서
[Opinion according to the Notification of Reasons for Refusal] Written Opinion(Written Reply, Written Substantiation)
2018.10.12 수리 (Accepted) 1-1-2018-1003617-23
8 등록결정서
Decision to grant
2018.12.18 발송처리완료 (Completion of Transmission) 9-5-2018-0869354-11
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드가 가지고 있는 단어 집합에서, 기 설정된 불용어와, 기 설정된 불중요 단어를 제거한 단어 집합인, 의미 있는 단어의 집합을 추출하는, 전처리기;프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드를 파싱(parsing)하여 클래스(class)와 메서드(method)를 추출하여, 각 클래스와, 각 클래스 내에 포함된 메서드 호출 정보를 나타내는 호출그래프를 생성하는, 호출 그래프 생성기;호출 그래프 생성기로부터 수신된 호출그래프의 각 클래스 및 각 클래스 내에 포함된 메서드 호출 정보를, 페이지랭크(PageRank) 알고리즘에 적용하여, 각 클래스별 페이지랭크 값을 생성하는, 페이지 랭커;전처리기에서 수신된 단어 집합들을 저장한 코퍼스(Copus)를 생성하고, 페이지 랭커로부터 수신된 각 클래스별 페이지랭크 값을 기설정된 보정계수를 곱하여 보정하고, 보정된 페이지랭크 값만큼 각 클래스 식별자를 생성하여, 코퍼스에 추가하는, 코퍼스 생성기;코퍼스 생성기에서 수신된 코퍼스를 대상으로, 잠재적인 디리클레 할당 (Latent Dirichlet Allocation, LDA) 알고리즘을 적용하여, 코퍼스의 각 문서에 대해, 토픽들에 대한 분포 값을 검출하고, 각 토픽에 대한 단어 집합을 검출하는, 토픽 모델러;를 포함하여 이루어진 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
2 2
제1항에 있어서, 전처리기는,자바 소스 파일에서 소스 코드를 파싱(parsing)하여, 프로그램 동작과 관련 있는 코드와 프로그램을 설명하는 주석에서 단어를 분류하여, 단어 집합으로 출력하는, 식별자 분석부;식별자 분석부에서 출력된 단어 집합에서 소스 코드에서 사용되는 합성어를, 상기 합성어에서 분리된 단어들과, 상기 합성어 자체로 구분하여 출력하는, 식별자 토큰화부;식별자 토큰화부에서 출력된 단어 집합에서, 어간을 추출하여 어간으로 이루어진 단어 집합을 출력하며, 어간과 원본단어를 대응시킨 어간 단어 사전을 생성하는, 스템머(stemmer);스템머로부터 수신된 단어 집합과 어간 단어 사전에서, 기설정된 불용어와 기 설정된 불중요 단어를 제거하는 필터링을 행하는, 필터;를 포함하여 이루어진 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
3 3
제2항에 있어서,불용어는 관사, 조사, 전치사를 포함하며, 불중요 단어는 소스 코드의 식별자에서 사용되는 ‘get’, ‘set'를 포함하는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
4 4
제1항에 있어서,프로젝트 인스펙터는 프로젝트 아카이브를 읽어들여서, 해당 프로젝트가 가지고 있는 소스파일, 클래스 파일을 포함하는 설정 파일들을 추출하고, 자바 소스파일을 전처리기 및 호출 그래프 생성기로 전달하며,호출 그래프는 각 클래스를 노드(node)로 하고, 각 클래스 내에 포함된 메서드 호출 정보를 간선(edge)으로 나타내되, 간선은 방향과 호출 횟수를 속성으로 갖는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
5 5
제3항에 있어서 페이지 랭커에서, 클래스는 웹페이지이며, 메서드의 호출정보는 웹페이지의 링크로서 나타내어 지는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
6 6
제5항에 있어서 페이지 랭커에서 페이지랭크 값은PR(A)=(1-d)/N+d(PR(T1)/C(T1)+ PR(T2)/C(T2)+…PR(Tn)/C(Tn))(단, PR(A)는 웹 페이지 ‘A’의 페이지랭크 값를 의미하며, d는 댐핑팩터(Damping Factor)로 0과 1의 사이의 값이며, N은 전체 페이지 수이며, Tn은 웹 페이지 ‘A’를 가리키는 페이지이며, C(Tn)은 Tn이 가지고 있는 링크의 수 임)에 의해 구하여 지는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
7 7
제6항에 있어서,댐핑팩터(Damping Factor)인 d는 0
8 8
제1항에 있어서 보정계수는, 보정된 페이지랭크 값이 0 이상의 정수가 되게 하는 값인 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
9 9
제8항에 있어서,보정계수는 200인 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
10 10
제3항에 있어서,토픽 모델러는 LDA 알고리즘에서 LDA의 매개변수를 추정하기 위해 깁스 샘플링(Gibbs Sampling)방법을 사용하는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
11 11
제2항에 있어서,스템머는 포터 스테밍 알고리즘(Porter’s Stemming Algorithm)을 사용하는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템
12 12
전처리기는, 프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드가 가지고 있는 단어 집합에서, 기 설정된 불용어와, 기 설정된 불중요 단어를 제거한 단어 집합인, 의미 있는 단어의 집합을 추출하는, 전처리 단계;호출 그래프 생성기는, 프로젝트 인스펙터로부터 수신된 자바 소스파일에서, 소스 코드를 파싱(parsing)하여 클래스(class)와 메서드(method)를 추출하여, 각 클래스와, 각 클래스 내에 포함된 메서드 호출 정보를 나타내는 호출그래프를 생성하는, 호출 그래프 생성 단계;페이지 랭커는, 호출 그래프 생성 단계로부터 출력된 호출그래프의 각 클래스 및 각 클래스 내에 포함된 메서드 호출 정보를, 페이지랭크(PageRank) 알고리즘에 적용하여, 각 클래스별 페이지랭크 값을 생성하는, 페이지 랭크 단계;코퍼스 생성기는, 전처리 단계에서 출력된 단어 집합들을 저장한 코퍼스(Copus)를 생성하고, 페이지 랭크 단계로부터 출력된 각 클래스별 페이지랭크 값을 기설정된 보정계수를 곱하여 보정하고, 보정된 페이지랭크 값만큼 각 클래스 식별자를 생성하여, 코퍼스에 추가하여 저장하는, 코퍼스 생성단계;토픽 모델러는, 코퍼스 생성단계에서 출력된 코퍼스를 대상으로, 잠재적인 디리클레 할당 (Latent Dirichlet Allocation, LDA) 알고리즘을 적용하여, 코퍼스의 각 문서에 대해, 토픽들에 대한 분포 값을 검출하고, 각 토픽에 대한 단어 집합을 검출하는, 토픽 모델링 단계;를 포함하여 이루어진 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템의 제어방법
13 13
제12항에 있어서, 전처리 단계는,식별자 분석부가, 자바 소스 파일에서 소스 코드를 파싱(parsing)하여, 프로그램 동작과 관련 있는 코드와 프로그램을 설명하는 주석에서 단어를 분류하여, 단어 집합으로 출력하는, 기본단어 추출단계;식별자 토큰화부가, 기본단어 추출단계에서 출력된 단어 집합에서 소스 코드에서 사용되는 합성어를, 상기 합성어에서 분리된 단어들과, 상기 합성어 자체로 구분하여 출력하는, 단어구분 단계;스템머(stemmer)가, 식별자 토큰화부에서 출력된 단어 집합에서, 어간을 추출하여 어간으로 이루어진 단어 집합을 출력하며, 어간과 원본단어를 대응시킨 어간 단어 사전을 생성하는, 스테밍 단계;필터는, 스테밍 단계에서 출력된 단어 집합과 어간 단어 사전에서, 기설정된 불용어와 기 설정된 불중요 단어를 제거하는 필터링을 행하는, 필터링 단계;를 포함하여 이루어진 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템의 제어방법
14 14
제13항에 있어서,불용어는 관사, 조사, 전치사를 포함하며, 불중요 단어는 소스 코드의 식별자에서 사용되는 ‘get’, ‘set'를 포함하며,호출 그래프는 각 클래스를 노드(node)로 하고, 각 클래스 내에 포함된 메서드 호출 정보를 간선(edge)으로 나타내되, 간선은 방향과 호출 횟수를 속성으로 갖는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템의 제어방법
15 15
제13항에 있어서 페이지 랭크 단계에서, 클래스는 웹페이지이며, 메서드의 호출정보는 웹페이지의 링크로서 나타내어 지는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템의 제어방법
16 16
제15항에 있어서 페이지 랭커에서 페이지랭크 값은PR(A)=(1-d)/N+d(PR(T1)/C(T1)+ PR(T2)/C(T2)+…PR(Tn)/C(Tn))(단, PR(A)는 웹 페이지 ‘A’의 페이지랭크 값를 의미하며, d는 댐핑팩터(Damping Factor)로 0과 1의 사이의 값이며, N은 전체 페이지 수이며, Tn은 웹 페이지 ‘A’를 가리키는 페이지이며, C(Tn)은 Tn이 가지고 있는 링크의 수 임)에 의해 구하여 지는 것을 특징으로 하는 소프트웨어 도메인 토픽 추출 시스템의 제어방법
17 17
제16항에 있어서,댐핑팩터(Damping Factor)인 d는 0
18 18
제12항 내지 제17항 중 어느 한 항의 소프트웨어 도메인 토픽 추출 시스템의 제어방법에 대한 컴퓨터 프로그램 소스를 저장한 기록매체
지정국 정보가 없습니다
패밀리정보가 없습니다
순번, 연구부처, 주관기관, 연구사업, 연구과제의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 국가R&D 연구정보 정보 표입니다.
순번 연구부처 주관기관 연구사업 연구과제
1 미래창조과학부 성균관대학교 차세대정보·컴퓨팅기술개발사업 문맥인지기반 SW 재사용 기술 개발