KR20220080472A - 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법 - Google Patents

문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법 Download PDF

Info

Publication number
KR20220080472A
KR20220080472A KR1020200169614A KR20200169614A KR20220080472A KR 20220080472 A KR20220080472 A KR 20220080472A KR 1020200169614 A KR1020200169614 A KR 1020200169614A KR 20200169614 A KR20200169614 A KR 20200169614A KR 20220080472 A KR20220080472 A KR 20220080472A
Authority
KR
South Korea
Prior art keywords
document
learning
data
similarity
model
Prior art date
Application number
KR1020200169614A
Other languages
English (en)
Other versions
KR102507192B1 (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 KR1020200169614A priority Critical patent/KR102507192B1/ko
Publication of KR20220080472A publication Critical patent/KR20220080472A/ko
Application granted granted Critical
Publication of KR102507192B1 publication Critical patent/KR102507192B1/ko

Links

Images

Classifications

    • G06K9/6215
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법이 개시된다. 문서 유사도 측정 모델 생성 방법은 표본 데이터에서 문서 내 핵심 문장을 재배열하는 단계, 상기 문서 내 문장구조 및 문장 사이 관계에 대한 추가 학습하는 단계, 기 구축된 데이터와 문장 유사도를 비교하여 파인 튜닝(fine tuning)하여, 기초 학습 모델을 생성하는 단계, 상기 기초 학습 모델을 이용하여, 레이블링 되지 않은 문서 데이터에 대해서 레이블링을 부여하는 준 지도 학습하는 단계, 및 상기 준 지도 학습 과정을 통해 구축된 훈련 데이터를 최대 토큰의 개수에 따라 단계를 나누어 순차적으로 학습하는 단계를 포함한다.

Description

문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법{GENERATING METHOD OF MODEL MEASURING DOCUMENT SIMILARITY AND MEASURING METHOD FOR DOCUMENT SIMILARITY USING THE SAME}
본 발명은 문서 유사도 측정 모델 생성 방법에 관한 것으로, 보다 상세하게는, GPT2를 기반으로 하는 문서 유사도 측정 모델 생성 방법과 이를 이용한 문서 유사도 측정 방법에 관한 것이다.
최근 주요 포털 사이트에서 제공하는 온라인 뉴스 기사가 여론 형성에 미치는 영향력이 갈수록 강해지고 있다. 특정 신문사를 선택하여 구독하던 종이 신문 시대와 다르게 온라인 뉴스 시대에는 다양한 주제와 관점을 지닌 기사들을 쉽고 빠르게 접할 수 있다. 따라서 온라인 뉴스 기사는 자연스럽게 해당 뉴스 기사 페이지에서 사용자에게 다음 뉴스 기사 선택지를 직/간접적으로 제공하고, 다음 어떤 뉴스 기사로 이동할지 사용자가 선택하여 열람할 수 있다. 이와 같은 온라인 뉴스 기사 열람 형태를 고려하여, 사용자에게 노출되는 다음 뉴스 기사 추천 선택지를 구성하는 새로운 방법을 제시하려고 한다. 기존의 개인 정보나 관심사 등이 반영된 맞춤형 추천 시스템은 합법성 여부와 상관없이 개인마다 편향된 관점의 기사를 제공할 수 있다는 점에서 문제가 될 수 있다. 즉, 사용자는 다양한 관점을 반영한다고 생각하는 공간에서 개인 정보에 따라 자신도 모르게 선별된 기사들을 제공받는다면 특정 집단의 이익을 위한 여론 형성 시스템으로 악용될 잠재적 위협이 존재한다.
이와 같은 문제점을 고려하여 개인의 관심사에 따른 특정 정보에 과도하게 집중하지 않도록 기사 제목과 본문의 유사도를 기반으로 추천 모델을 고안한다. 문서 유사도의 경우 임베딩한 특징 벡터 사이의 코사인 유사도를 주로 사용하여 계산하며, 문서 내의 특징 벡터 추출 방법은 대표적으로 TF-IDF(Term Frequency-Inverse Document Frequency)가 있다.
Figure pat00001
특정 문서 j에서 특정 단어 i의 빈도수인 tfi,j와 전체 문서 n 중에서 특정 단어 i를 포함하고 있는 문서의 수 dfi의 역을 곱하여 특징 벡터를 생성한다. 이러한 특징 벡터는 단순히 단어 빈도수를 기반으로 단어 벡터를 생성하는 것보다 불용어에 해당하는 단어들에 대해 고려한 형태이다. 다른 특징 벡터 추출 방법으로는 Word2Vec방식의 임베딩을 문서 단위에서도 효과적으로 적용하기 위해 고안한 Doc2Vec이 있다. Doc2Vec은 문서의 정보까지도 벡터로 표현하여, 특정 단어를 벡터로 표현하는 상황에 해당 단어가 나타난 문서의 정보까지도 벡터 안에 포함한다. 따라서, 문서 사이의 유사도를 판단할 때, 단어만 다르고 같은 내용을 공유하는 문서의 경우 유사한 문서 벡터 값을 가진다. 그러나, 위의 방식들은 과도하게 어휘 정보에 따른 임베딩 값에 집중하여 문서 사이의 유사도를 측정하는 문제가 있다. 이러한 경향은 어느 정도 문서를 이해하고 문맥 정보를 반영하여 기사를 추천하는데 부적합하다. 따라서, 유사도 기반의 기사 추천에 한국어 언어 모델을 활용하는 방향을 제시한다.
대한민국 등록특허 제1713831호 (2017.03.09. 공고) 대한민국 등록특허 제1877161호 (2018.07.10. 공고) 대한민국 등록특허 제2161666호 (2020.10.05. 공고) 대한민국 등록특허 제1866411호 (2018.06.19. 공고)
본원 발명이 해결하고자 하는 과제는 문서를 이해하고 문맥 정보를 반영하여 문서 사이의 유사도를 측정하는 모델을 생성하는 방법 및 이를 이용한 문서 유사도 측정 방법을 제공하는 것이다.
해결하고자 하는 과제를 달성하기 위하여 본 발명의 실시 예들에 따른 문서 유사도 측정 모델 생성 방법은, 표본 데이터에서 문서 내 핵심 문장을 재배열하는 단계, 상기 문서 내 문장구조 및 문장 사이 관계에 대한 추가 학습하는 단계, 기 구축된 데이터와 문장 유사도를 비교하여 파인 튜닝(fine tuning)하여, 기초 학습 모델을 생성하는 단계, 상기 기초 학습 모델을 이용하여, 레이블링 되지 않은 문서 데이터에 대해서 레이블링을 부여하는 준 지도 학습하는 단계, 및 상기 준 지도 학습 과정을 통해 구축된 훈련 데이터를 최대 토큰의 개수에 따라 단계를 나누어 순차적으로 학습하는 단계를 포함한다.
본 발명의 실시 예들에 따르면, 언어 모델을 활용하여서 어휘보다 높은 차원의 문장 구조 이해와 의미 파악 단계에서 추출 가능한 문맥 정보를 어느 정도 반영하는 유사 문서 값을 반환할 수 있다.
문서 유사도가 사용 가능한 분야인, 뉴스 기사 추천 시스템의 기반 기술로 사용하는 경우, 인터넷 뉴스의 품질 문제와 노이즈에 어느 정도 대처가 가능하다. 또한, 문맥 정보를 최대한 반영할 수 있도록 GPT2에 대한 학습을 진행하며 커리큘럼 학습을 통해 인코더의 특징 추출 능력이 희미해지는 문제를 보완하면서 안정성을 확보할 수 있다.
문서 유사도 학습과 관련하여서, 준 지도 학습을 통해서 별도의 데이터 구축 없이 소량의 문장 유사도 측정 데이터만을 가지고 다량의 실제 뉴스 기사 데이터의 제목과 본문만을 수집해서 모두 학습 데이터로 재구성해서 학습에 활용할 수 있다. 또한, 커리큘럼 학습으로 학습 단계를 나누어, 단일 문장 유사도 학습 파라미터를 바탕으로 순차적으로 복잡하고 길이가 긴 문장과 문단을 학습함으로써 준 지도 학습 과정이 안정적으로 원하는 방향으로 진행할 수 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법을 설명하기 위한 모식도이다.
도 2는 문서 본문 및 제목 임베딩 형태를 설명하기 위한 모식도이다.
도 3은 본 발명의 일 실시예에 따른 문서 유사도 측정 모델 생성 방법을 설명하기 위한 흐름도이다.
도 4는 본 발명의 일 실시예에 따른 문서 유사도 측정 방법을 설명하기 위한 흐름도이다.
본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명들은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.
본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.
제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1 구성 요소는 제2 구성 요소로 명명될 수 있고 유사하게 제2 구성 요소는 제1 구성 요소로도 명명될 수 있다.
어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.
본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다. 그러나, 특허출원의 범위가 이러한 실시 예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
이하, 본 발명의 일 실시 예에 따른 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법에 대하여 설명하기로 한다.
도 1은 본 발명의 일 실시예에 따른 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법을 설명하기 위한 모식도이다.
도 1을 참조하면, 문서 유사도 측정 모델 생성 방법 및/또는 이를 이용한 문서 유사도 측정 방법은 적어도 프로세서 및/또는 메모리를 포함하는 컴퓨팅 장치에 의해 수행될 수 있다. 일 실시예에 따르면, 상기 방법들에 포함되는 적어도 일부의 단계들은 컴퓨팅 장치에 포함되는 프로세서의 동작으로 볼 수도 있다.
소정의 알고리즘(예컨대, BM25 알고리즘)을 통하여 핵심 문장(또는 핵심 문단)이 추출된다.
소정 기간 동안의 복수의 뉴스 기사들, 예컨대 2020년도 1월부터 6월까지 뉴스 기사 21,471개의 표본 데이터에서 기사당 평균 토큰의 개수는 803.6개이며, 표준 편차는 566.9이다. 복수의 뉴스 기사들에 대한 전처리 작업(예컨대, 핵심 문장 추출)이 필요하다. 또한, 복수의 뉴스 기사들은 컴퓨팅 장치의 크롤링 기법에 의해 수집되어 컴퓨팅 장치에 포함될 수 있는 저장 장치에 저장되거나, 소정의 입력 장치를 통하여 수신된 후 컴퓨팅 장치에 미리 저장되어 있을 수 있다.
핵심 문단 추출의 경우, 문서 형태의 문단을 구성할 수 있도록 최대 토큰의 개수 256개 및/또는 512개를 기준으로 데이터를 분할한다. 총 21,471개의 전체 기사 본문을 활용해서 각 문단의 최대 토큰 개수 245 및 512개를 기준으로 52,479 및 52,480의 문단 쌍을 만든다.
최대 토큰의 개수가 256인 문단의 경우, 아래의 수학식 1의 사분위수를 통해 수학식 2 및 3 범위 이외 길이를 지닌 이상치 데이터인 4,070개를 삭제하여 두 문단을 합친 토큰의 개수 평균은 501.22를 유지한다. 마찬가지로 최대 토큰의 개수가 512인 문단의 경우에도 이상치 데이터인 4,733개의 데이터를 삭제하여 두 문단을 합친 토큰의 개수 평균은 883.39를 유지한다.
[수학식 1]
IQR = Q3 - Q1
[수학식 2]
Q1 - 1.5 * IQR
[수학식 3]
Q3 + 1.5 * IQR
입력 문서의 길이와 관련해서는 아래의 수학식 4의 BM25 함수를 이용한다. 수학식 4의 BM25 함수는 문서 사이에 빈번하게 등장하는 단어일 경우 낮은 가중치를 주는 문서 역 빈도 식과 문서 내에 같은 단어가 자주 등장하는 경우 높은 가중치를 부여하는 단어 빈도 식의 곱으로 이루어진다. 단, 이때 문서의 평균 길이를 계산하면서 문서 길이에 대한 영향을 적게 받는다.
[수학식 4]
Figure pat00002
이와 같은 식을 활용하여, 문서 전체 문장의 개수를 기준으로 요약할 문장의 비율 또는 최대 토큰의 개수에 따라 입력 데이터의 길이를 감소시킬 수 있다. 입력 데이터의 길이 축소로 인해, 추천 후보군으로 데이터베이스에 할당해야 할 저장 공간의 효율이 축소비율만큼 증가한다. 또한, 뉴스 기사 본문 전체를 입력으로 사용했을 때보다, 쌍을 이루는 각각 문서에 대해서 최대 토큰의 256 및 512로 압축된 형태의 입력을 사용한 경우에 평균적으로 스피어만 상관계수가 7.56 및 9.07만큼 향상한 것을 알 수 있다.
한편, 도 2는 문서 본문 및 제목 임베딩 형태를 설명하기 위한 모식도이다.
도 2를 참조하면, 입력 데이터 쌍의 각각 제목의 길이를 t1 및 t2, 뉴스 본문의 길이를 c1 및 c2로 가정한다면, KoGPT2의 최대 포지셔닝 임베딩 1,024 내 포함될 수 있도록 1024 - (t1 + c1 + t2 + c2 + s1 + s2 + s3) >= 0의 조건을 만족해야 한다. 또한, 시퀀스 쌍 각각의 길이도 512 - (t1 + c1 + s1) >= 0와 512 - (t2 + c2 + s2 + s3) >= 0을 만족해야 한다. 뉴스 제목은 뉴스 기사 데이터의 특징을 가장 잘 반영하고 있는 부분으로, 각 본문에서 핵심이 될 수 있는 어휘와 문맥에 추가적인 정보를 제공한다.
SKT-AI에서 공개한 언어 모델인 입력 최대 토큰의 길이가 1,024인 KoGPT2 한국어 언어 모델을 활용하는 것이 적합하다. GPT2의 경우, 자기 자신을 예측하는 대표적인 자기 회귀(Auto Regressive)모델이며, OpenAI의 GPT(Generative Pre-Training) 모델을 더 많은 말뭉치와 약 15억개 이상의 파라미터를 통해 발전시킨 언어 모델로 셀프 어텐션(Self-Attention) 기반의 트랜스포머(Transformer) 멀티 레이어 디코더(Multi-Layer Decoder)를 변형하여 사용한다. 또한, 사전 훈련 단계에서 비지도 학습 방식을 사용하여 멀티 태스크 러닝 방식의 다양한 범위의 도메인에 적용할 수 있는 언어 모델이다. 특히, KoGPT2의 경우 많은 양의 한국어 뉴스 기사 정보로 사전 학습을 했으며, 별도의 레이블이 없는 최신 뉴스 기사를 지속적으로 반영하여 학습하기에 적합한 모델이다.
SKT-AI에서 공개한 한국어 GPT2 모델인 KoGPT2는 BPE(Byte Pair Encoding) 데이터 압축 알고리즘을 활용한 50,000개의 토큰 사전을 가지고 있다. 모델 사전 훈련의 경우, 약 20GB의 원시 문장 데이터를 사용한다. KoSPT2의 경우 단방향 디코더를 활용한 생성 모델로 정제된 데이터 셋을 지닌 분류나 추론과 같은 특정 과제에 대해서 최고 수준의 성능을 보이지 않는다. 그러나 본발명의 입력 데이터가 짧은 문장이 아닌 긴 문단 및 문서라는 점과 레이블링이 되어 있지 않은 최신 뉴스 기사 데이터라는 점에서, 자기 예측의 비지도 학습을 기반으로 하는 KoGPT2 모델을 개선할 필요가 있다. 도 1에 도시된 모델(본 발명에서 제안하는 모델로써 KoGPT2Post로 명명될 수 있음)은 한국어의 신조어와 어감이 반영될 수 있도록 2020년 나무위키 데이터 덤프에서 20만개 문장을 선별하여 KoGPT2 모델에 대한 추가 학습을 진행한 모델이다. 해당 모델의 경우, 문장과 문장 사이의 유사도 측정할 때보다 실제 뉴스 기사를 바탕으로 한 문단과 문단 사이의 유사도를 측정할 때 동일 조건에 대해서 더 큰 상승 폭을 보인다.
우선적으로 구축된 데이터인 KorSTS 문장 유사도 비교를 통해 0점과 5점 사이의 값에 대해 예측하는 파인 튜닝이 수행될 수 있다. 문장 데이터의 경우 이후에 있을 준 지도 학습 과정에 사용하는 실제 뉴스 기사 데이터의 레이블링을 위한 기초적인 학습의 일환으로 활용될 수 있다.
문장이 아닌 실제 기사 문단 및 문서에 대해서 학습을 진행하기 위해 준 지도 학습이 적용될 수 있다. 소정의 데이터셋(예컨대, KorSTS 데이터셋)을 통해서 파인 튜닝을 완료한 모델은 실제 뉴스 문단에 대해서 유사함의 정도에 따라 a(a는 임의의 정수로 예시적인 값은 0이 될 수 있음)점에서 b(b는 a 보다 큰 임의의 정수로 예시적인 값은 5가 될 수 있음)점 사이로 레이블링을 진행할 수 있다. 즉, 위의 방식과 같이 문장 단위의 GPT2 파인 튜닝을 통해 기초적인 학습을 완료한 모델은 유사도 점수 레이블이 없는 본문과 제목으로 구성된 기사 쌍에 대한 새로운 유사도 점수를 부여(또는 산출)한다. 레이블링이 된 데이터(즉, 점수를 부여받은 뉴스 기사 쌍)는 이전 단계의 훈련에 사용된 데이터와 중복되지 않으며, 자기 학습 과정에 새로운 훈련 데이터로 사용될 수 있다. 이러한 방식은 많은 시간과 비용이 필요한 리커트 척도를 활용한 점수화 방식보다 일자별로 새로운 데이터로 업데이트가 되는 뉴스 기사에 더 빠르고 효과적으로 학습을 진행할 수 있다.
모델에 대한 커리큘럼 학습이 진행될 수 있다.
커리큘럼 학습의 경우, 모델 훈련을 본문과 제목의 최대 토큰의 합을 기준으로 복수의 단계(예컨대, 총 3개의 단계)로 구성될 수 있다. 1단계의 경우, 소정의 데이터셋(예컨대, KorSTS의 데이터셋) 특징에 따라서 최대 토큰의 개수 64개를 기준으로 파인 튜닝을 진행한다. 해당 데이터셋의 유사도 점수는 문장 쌍이 서로 완전히 다른 경우 a(예컨대, 0)점, 완전히 동일한 경우 b(예컨대, 5)점으로 리커트 척도에 따라 점수를 부여한다. 1단계 학습은 레이블링 되지 않은 실제 뉴스 기사 데이터에 준 지도 학습을 위한 기초 교육으로 새로운 훈련 데이터셋 레이블링에 활용한다. 단, 1단계 학습의 경우 문장 단위로 학습하여, 호흡이 긴 뉴스 가시와 같은 문단 및 문서 유사도를 측정할 때 사람이 판단하기에 실제 유사하지 않았음에도 불구하고 높은 점수를 부여하는 경향을 가진다. 이러한 문제는 기사 제목을 핵심 기준점으로 본문과 연결함으로써 단순히 본문의 어휘 정보만 유사한 경우 점수에 낮은 점수를 부여하고 기사 본문과 유사한 문맥을 지니는 경우 높은 점수를 부여하면서 해결한다.
2단계의 경우, 소정의 데이터셋(예컨대, KorSTS 데이터셋)을 통한 파인 튜닝의 결과로 기초 학습을 완료한 파라미터 초기값을 바탕으로 전체 본문과 제목의 합이 최대 토큰의 개수 512인 수집한 뉴스 기사 문단 쌍을 학습한다.
3단계의 경우, 마찬가지로 2단계 학습을 완료한 파라미터 값을 바탕으로 전체 본문과 제목의 합이 최대 토큰 개수 1,024인 수집한 뉴스 기사 문단 쌍을 학습한다. 2단계 및 3단계의 경우 1단계 학습 과정에서 레이블링한 훈련 데이터를 통해 자기 학습을 진행하며, 각 커리큘럼 학습은 모두 연속된 형태로 각 모델에 대해서 차례대로 진행할 수 있다.
커리큘럼 학습의 경우, 길이가 긴 문서에 대해서는 유사도 학습을 효율적으로 구성하기 위해 64, 512 및 1,024의 길이로 학습 데이터의 최대 길이에 따라 세 단계로 나누어 순차적으로 진행한다. 순차적으로 학습하지 않고 한 번에 최대 1,024의 길이를 지니는 두 개의 뉴스 기사의 유사도를 측정하는 경우 스피어만 상관계수 91.53의 결과를 보였으며, 차례대로 단계를 거처셔 학습하는 경우 스피어만 상관계수 94.14를 보였다.
본 발명의 일 실시예에 따른 문서 유사도 학습 모델(또는 문서 유사도 측정 모델)은 문장 및 문단 이상의 입력 데이터에 대해서 파인 튜닝을 준 지도 학습과 커리큘럼 학습을 통해 뉴스 기사 추천을 위한 최적의 유사도 점수를 찾는다. 최적의 방향으로 학습된 모델은 뉴스 기사 제목과 본문을 중심으로 연관성이 높은 뉴스 기사를 핵심 문단 추출로 저장된 데이터베이스에서 N개의 순위만큼 추천할 수 있다.
도 3은 본 발명의 일 실시예에 따른 문서 유사도 측정 모델 생성 방법 및/또는 이를 이용한 문서 유사도 측정 방법을 설명하기 위한 흐름도이다. 이하에서는, 앞선 기재와 중복되는 내용에 관한 구체적인 설명은 생략하기로 한다. 또한, 상술되는 방법들은 컴퓨팅 장치에 의해 수행될 수 있다.
우선, 소정의 언어 모델에 대한 사전 학습이 수행될 수 있다(S110). 소정의 언어 모델은 GPT2, KoGPT2 등과 같은 알려진 언어 모델일 수 있다. S110 단계에서는 제1 데이터(또는 제1 데이터셋)를 이용하여 언어 모델을 학습시킬 수 있다. S110 단계는 언어 모델이 대상으로 하는 언어의 신조어 및/또는 어감을 언어 모델에 반영하기 위한 것으로 문장 구조와 문장 간의 관계 등에 대한 사전 학습을 의미할 수 있다. 또한, 제1 데이터는 크롤링 기법을 통해 수집될 수 있는 데이터로써, 각각이 제1 길이 보다 작거나 같은 크기를 갖는 복수의 문장들로 구성될 수 있으며, 예시적으로 나무 위키 데이터일 수 있다. 실시예에 따라, S110 단계는 생략될 수도 있다. 제1 길이는 언어 모델의 최대 포지셔닝 임베딩 길이(즉, 언어 모델의 입력의 최대 길이) 보다 작거나 같은 값 일 수 있으며, 해당 데이터 또는 해당 문장을 임베딩하기 위한 토큰의 개수를 의미할 수 있다. 언어 모델이 KoGPT2인 경우, 제1 길이는 1,024 보다 작거나 같은 값 중 어느 하나의 정수일 수 있다.
다음으로, 언어 모델에 대한 파인 튜닝 및/또는 제1 학습이 수행될 수 있다(S120). 언어 모델은 S110 단계에서 사전 학습이 수행되었거나 그렇지 않은 언어 모델을 의미할 수 있다. 파인 튜닝은 문장(또는 문단이나 문서)과 같은 입력 데이터의 유사함의 정도, 즉 유사도를 출력할 수 있는 레이어(layer)를 언어 모델에 추가하거나 결합하는 것을 의미할 수 있고, 파인 튜닝에는 제2 데이터(또는 제2 데이터셋)가 이용될 수 있다. 제2 데이터는 미리 정해진 제2 길이 보다 작거나 같은 길이를 갖는 복수의 문장들을 의미할 수 있으며, 예시적인 제2 데이터는 KorSTS 데이터셋이다. 제2 길이는 언어 모델의 최대 포지셔닝 임베딩 길이(즉, 언어 모델의 입력의 최대 길이)의 1/2 보다 작은 값으로, 예시적인 값은 32이다. 제2 데이터에 포함된 복수의 문장들 중 두 개의 문장이 언어 모델에 입력되고, 언어 모델은 입력된 두 개의 문장들에 대한 유사도를 산출하고 출력하기 때문에, 두 문장을 결합한 길이는 제2 길이(예컨대, 64) 보다 작거나 같아야 한다. 또한, 제2 길이는 해당 데이터 또는 해당 문장을 임베딩하기 위한 토큰의 개수를 의미할 수 있다.
제3 데이터를 이용한 제2 학습 단계가 수행될 수 있다(S130).
제3 데이터는 각각이 동일하거나 상이한 길이를 갖고 제목과 본문으로 구성된 복수의 문서들을 의미할 수 있다. 예시적인 제3 데이터는 뉴스 기사들이다. S130 단계는 복수의 문서들을 제3 길이 이하의 문단으로 요약하거나 제3 길이 이하의 문단을 추출하는 요약 단계, 요약 결과를 이용하여 유사도를 측정하는 유사도 측정 단계, 및 유사도 측정 결과를 이용한 학습 단계를 포함할 수 있다. 제3 길이는 언어 모델의 최대 포지셔닝 임베딩 길이(즉, 언어 모델의 입력의 최대 길이)의 1/2 보다 작거나 같은 값으로, 예시적인 값은 256이다. 요약 결과로 생성된 복수의 문단들 중 두 개의 문단이 언어 모델에 입력되고, 언어 모델은 입력된 두 개의 문단들에 대한 유사도를 산출하고 출력하기 때문에, 두 문단을 결합한 길이는 제3 길이(예컨대, 512) 보다 작거나 같아야 한다. 또한, 제3 길이는 해당 데이터 또는 해당 문단을 임베딩하기 위한 토큰의 개수를 의미할 수 있다.
제4 데이터를 이용한 제3 학습 단계가 수행될 수 있다(S140).
제4 데이터는 각각이 동일하거나 상이한 길이를 갖고 제목과 본문으로 구성된 복수의 문서들을 의미할 수 있다. 예시적인 제4 데이터는 뉴스 기사들이다. S140 단계는 복수의 문서들을 제4 길이 이하의 문단으로 요약하거나 제4 길이 이하의 문단을 추출하는 요약 단계, 요약 결과를 이용하여 유사도를 측정하는 유사도 측정 단계, 및 유사도 측정 결과를 이용한 학습 단계를 포함할 수 있다. 제4 길이는 언어 모델의 최대 포지셔닝 임베딩 길이(즉, 언어 모델의 입력의 최대 길이)의 1/2 보다 작거나 같은 값으로, 예시적인 값은 512이다. 요약 결과로 생성된 복수의 문단들 중 두 개의 문단이 언어 모델에 입력되고, 언어 모델은 입력된 두 개의 문단들에 대한 유사도를 산출하고 출력하기 때문에, 두 문단을 결합한 길이는 제4 길이(예컨대, 1024) 보다 작거나 같아야 한다. 또한, 제4 길이는 해당 데이터 또는 해당 문단을 임베딩하기 위한 토큰의 개수를 의미할 수 있으며, 제4 데이터는 제3 데이터와 동일할 수도 있다.
실시예에 따라, S130 단계의 요약 단계와 S140 단계의 요약 단계, S130 단계의 유사도 측정 단계와 학습 단계, 및 S140 단계의 유사도 측정 단계와 학습 단계의 순으로 동작이 수행될 수도 있다.
또한, 문서 유사도 측정 모델 생성 방법은 목표 문서를 수신하는 단계(S150), 복수의 문서들을 크롤링하는 단계(S160), 및 유사 문서를 결정하는 단계(S170)를 더 포함할 수 있다. 여기서, S150 단계와 S160 단계는 순서와 무관하게 수행될 수도 있다. 이때, 문서 유사도 측정 모델 생성 방법은 문서 유사도 측정 방법으로 명명될 수도 있다. 또한, 상술한 단계들에 대한 상세한 설명은 이하의 문서 유사도 측정 방법을 설명하는 과정에서 상술하기로 한다.
도 4는 본 발명의 일 실시예에 따른 문서 유사도 측정 방법을 설명하기 위한 흐름도이다.
문서 유사도 측정 방법은 컴퓨팅 장치에 의해 수행될 수 있으며, 문서 유사도 측정 방법을 수행하는 컴퓨팅 장치와 문서 유사도 측정 모델 생성 방법을 수행하는 컴퓨팅 장치는 동일하거나 상이할 수 있다. 실시예에 따라, 문서 유사도 측정 방법을 수행하는 컴퓨팅 장치는 문서 유사도 측정 모델을 생성하는 컴퓨팅 장치에 의해 생성된 문서 유사도 측정 모델이 저장된 컴퓨팅 장치를 의미할 수도 있다.
문서 유사도 측정 방법은 목표 문서 수신 단계(S210), 문서 크롤링 단계(S220), 및 유사 문서 결정 단계(S230)를 포함한다. S210 단계와 S220 단계의 수행 순서는 뒤바뀔 수도 있고, 경우에 따라서는 동시에 수행될 수도 있다. 또한, S210 단계의 내용은 S150 단계의 내용과 동일하고, S220 단계의 내용은 S160 단계의 내용과 동일하고, S230 단계의 내용은 S170 단계의 내용과 동일할 수 있다.
S210 단계에서, 목표 문서가 수신된다. 구체적으로 목표 문서는 목표 문서 자체를 의미하거나, 목표 문서를 식별할 수 있는 식별 정보를 의미할 수도 있다. 컴퓨팅 장치에 이미 목표 문서가 저장되어 있거나 크롤링을 통해서 목표 문서를 크롤링할 수도 있기 때문이다. 또한, 목표 문서는 사용자가 사용자의 단말을 이용하여 현재 읽고 있는 뉴스 기사를 의미할 수 있다. 사용자 단말로 뉴스 기사를 제공하는 포털 싸이트, 뉴스 제공 싸이트 등을 운영하는 서버는 사용자 단말의 요청(특정 뉴스의 제공을 요청하는 요청 메시지를 의미할 수 있음)에 따라 요청에 대응하는 뉴스 기사를 제공할 수 있는데, 이때 서버가 제공한 뉴스 기사가 목표 문서가 된다.
또한, 상기 서버와 문서 유사도 측정 방법을 수행하는 컴퓨팅 장치는 동일하거나 상이할 수 있다. 서버와 컴퓨팅 장치가 동일할 경우, 사용자 단말의 요청에 대응하는 뉴스 기사(또는 사용자 단말의 요청에 응답하여 제공한 뉴스 기사)가 목표 문서이기 때문에 서버는 사용자 단말의 요청에 기초하여 목표 문서를 수신할 수 있다. 서버와 컴퓨팅 장치가 상이할 경우, 서버는 사용자의 요청, 사용자의 요청에 대응하는 뉴스 기사, 뉴스 기사를 식별할 수 있는 식별 정보 등 중 적어도 하나를 컴퓨팅 장치로 제공할 수 있다.
실시예에 따라, 서버 또는 컴퓨팅 장치는 목표 문서를 제4 길이 보다 작거나 같은 길이의 문단으로 요약하거나 추출할 수 있다.
S220 단계에서, 복수의 문서들에 대한 크롤링이 수행될 수 있다. 복수의 문서들은 사용자에게 제공이 가능한 뉴스 기사들을 의미하는 것으로, 인터넷 상에서 크롤링을 통해 수집될 수 있다. 또한, 서버 또는 컴퓨팅 장치는 복수의 문서들 각각을 제4 길이 보다 작거나 같은 길이의 문단으로 요약하거나 추출할 수 있다.
S230 단계에서, 복수의 문서들 중 목표 문서와 가장 유사한 적어도 하나의 문서가 결정될 수 있다.
구체적으로, 목표 문서의 요약 결과와 복수의 문서들의 요약 결과들 각각이 문서 유사도 측정 모델에 입력됨으로써, 각 문서들과의 유사도가 산출될 수 있다. 산출된 유사도에 따라, 가장 높은 유사도를 보이는 적어도 하나의 문서가 유사 문서(유사 뉴스)로 결정될 수 있다. 적어도 하나의 유사 문서 또는 적어도 하나의 유사 문서를 식별할 수 있는 식별 정보는 사용자 단말 또는 서버로 송신될 수 있다. 즉, 서버와 컴퓨팅 장치가 동일한 경우, 서버는 적어도 하나의 유사 문서에 대한 정보를 사용자 단말로 제공할 수 있다. 서버와 컴퓨팅 장치가 상이한 경우, 컴퓨팅 장치는 적어도 하나의 유사 문서에 대한 정보를 서버로 송신하고, 서버는 적어도 하나의 유사 무서에 대한 정보를 사용자 단말로 제공할 수 있다.
이상의 과정을 통하여, 사용자 단말은 사용자가 현재 수신하여 읽고 있는 뉴스 기사 기사를 제공할 뿐만 아니라 현재 일고 있는 뉴스 기사와 가장 유사한 뉴스 기사에 대한 정보(링크, 제목 등)를 추천 뉴스 기사로 함께 제공할 수도 있다.
실험 데이터셋 구축과 모델 학습 방법을 바탕으로 실제 뉴스 데이터를 수집하여 실험예를 통해 검증한다.
데이터셋
1단계 기초 학습의 경우 Kakao Brain에서 제공한 KorSTS 데이터셋을 사용했으며, 2 및 3단계의 경우 2020년도 뉴스 기사 데이터를 사용하였다. KorSTS 데이터셋의 경우 총 8,628개의 데이터셋 중 5,749개를 훈련 데이터셋으로 활용했다. 2단계와 3단계의 학습의 경우 이상치 데이터를 제거한 각각 48,409 및 47,747개의 예시 문단 쌍을 8:2의 비율로 훈련과 평가 데이터셋을 분리해서 학습 및 평가를 진행하였다.
실험 방법
비교예는 언어 모델 사용 이전의 TF-IDF, Doc2Vec, 및 SKT-AI에서 공개한 초기의 KoGPT2를 사용하였다. 실험예는 사전 훈련된 KoGPT2를 바탕으로 추가 학습을 진행하여 개선한 KoGPT2Post 모델이다. 단방향 모델의 약점을 보완하기 위해 나무위키 덤프 데이터로 사전에 제작한 문장 내 순서 변형에 대한 학습과 문장과 문장 사이 문맥 파악 강화를 위한 추가적인 학습을 진행했다.
이후 1단계 학습을 통해서 최대 64개의 토큰 개수를 지니는 KorSTS 데이터셋의 유사도 점수를 예측하는 방향으로 학습을 진행했다. 2 및 3단계의 경우 1단계의 학습의 결과를 바탕으로 레이블링된 데이터를 사용해서 훈련을 진행했다.
성능 평가는 정답 유사도 점수와 예측한 유사도 점수 사이의 순위 값 크기에 대한 상관관계를 나타내는 하기의 수학식 5의 스피어만 상관관계 수 rs를 사용하며, n개의 데이터 표본에 대해 진행하였다.
[수학식 5]
Figure pat00003
이때, xi와 yi는 각각 변수 x, y에 대해서 i번째 순위를 나타내며,
Figure pat00004
Figure pat00005
는 순위 평균을 나타낸다. rs는 [-1,1] 사이의 값을 가지며, 1에 가까울수록 강한 양의 상관관계를 지니고, 0에 가까울수록 선형적 상관관계가 약하다.
실험 결과
1단계는 KorSTS 데이터셋에 대해서 정답 유사도 점수와 예측한 유사도 점수 사이의 스피어만 상관계수 rs를 통해 성능 결과를 측정했다. 2, 3단계의 경우도 스피어만 상관계수를 통해서 성능 평가를 진행했으며, 커리큘럼 학습에 따라서 2단계 훈련을 통해 학습된 모델은 3단계 훈련을 연속적으로 진행했다. 각 단계의 데이터는 중복되지 않으며, 훈련 데이터와 평가 데이터는 8:2로 분할하여 진행했다. 1단계의 결과로 나온 유사도 점수는 2, 3단계 훈련을 위해 사용했다.
2단계 및 3단계 학습의 경우 에포크를 3으로 고정한 상태에서 커리큘럼 학습을 적용한 결과로 순차적으로 훈련과 테스트를 진행했다.
[표 1]
Figure pat00006
표 1을 참조하면, 문장이 아닌 문단 이상의 유사도 측정에 GPT2모델은 효과적인 학습이 가능했으며, 본 발명의 실험예의 경우, 동일한 환경에서 KoGPT2보다 각각 1.17 및 1.59의 상승폭을 보였다.
표 2는 2단계와 3단계 학습을 완료한 실험예(KoGPT2Post 모델)를 통해 현재 열람 중인 실제 뉴스 기사와 데이터베이스에 저장한 최신 뉴스 기사 사이에서 유사도 비교를 통해 1 및 2순위의 추천 기사를 보여준다.
[표 2]
Figure pat00007
첫 기사의 경우 코로나와 같은 핵심 반복 어휘 정보가 없더라도 기부와 관련된 문맥 관계를 활용하여 추천이 가능함을 보여준다. 또한, 두 번째 기사의 경우, '재택 근무'와 '출시 10주년'과 같이 관련 없는 방해 어휘가 있더라도, 실험예의 모델이 유사도 측정하는데 있어서 적절한 판단을 내림을 알 수 있다.
표 3은 커리큘럼 학습 및 기사 제목 포함 여부에 따른 성능을 평가한 것이다.
[표 3]
Figure pat00008
표 3과 같이 커리큘럼 학습을 하는 경우, 3단계까지의 학습을 완료한 실험예 모델(KoGPT2Post) 기준으로 전체 데이터를 일괄적으로 진행하는 것보다 동일 에포크 3에 각각 1.57 및 2.61의 상승폭을 보였다. 또한, 기사의 제목을 포함하는 여부에 따라서는 각각 1.34 및 2.38의 성능의 상승 폭을 보였다.
이상에서 설명된 장치는 하드웨어 구성 요소, 소프트웨어 구성 요소, 및/또는 하드웨어 구성 요소 및 소프트웨어 구성 요소의 집합으로 구현될 수 있다. 예를 들어, 실시 예들에서 설명된 장치 및 구성 요소는, 예를 들어, 프로세서, 콘트롤러, ALU(Arithmetic Logic Unit), 디지털 신호 프로세서(Digital Signal Processor), 마이크로컴퓨터, FPA(Field Programmable array), PLU(Programmable Logic Unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(Operation System, OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술 분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(Processing Element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(Parallel Processor)와 같은, 다른 처리 구성(Processing Configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(Computer Program), 코드(Code), 명령(Instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(Collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성 요소(Component), 물리적 장치, 가상 장치(Virtual Equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(Signal Wave)에 영구적으로, 또는 일시적으로 구체화(Embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시 예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시 예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM, DVD와 같은 광기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-optical Media), 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시 예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성 요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성 요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (7)

  1. 컴퓨팅 장치에 의해 수행되는 문서 유사도 측정 모델 생성 방법에 있어서,
    표본 데이터에서 문서 내 핵심 문장을 재배열하는 단계;
    상기 문서 내 문장구조 및 문장 사이 관계에 대한 추가 학습하는 단계;
    기 구축된 데이터와 문장 유사도를 비교하여 파인 튜닝(fine tuning)하여, 기초 학습 모델을 생성하는 단계;
    상기 기초 학습 모델을 이용하여, 레이블링 되지 않은 문서 데이터에 대해서 레이블링을 부여하는 준 지도 학습하는 단계; 및
    상기 준 지도 학습 과정을 통해 구축된 훈련 데이터를 최대 토큰의 개수에 따라 단계를 나누어 순차적으로 학습하는 단계를 포함하는 문서 유사도 측정 모델 생성 방법.
  2. 제1항에 있어서,
    상기 표본 데이터에서 문서 내 핵심 문장을 재배열하는 것은 BM25 알고리즘을 이용하되,
    상기 BM25는 문서 사이에 빈번하게 등장하는 단어에 대해서 낮은 가중치를 부여하는 문서 역 빈도 식과 일 문서 내에 같은 단어가 자주 등장하는 경우 높은 가중치를 부여하는 단어 빈도 식에 대한 곱으로 이루어지는 문서 유사도 측정 모델 생성 방법.
  3. 제1항에 있어서,
    상기 문장구조 및 문장 사이 관계에 대한 추가 학습하는 것은, GPT2을 기반으로 신조어 및 어감 학습을 포함하는 문서 유사도 측정 모델 생성 방법.
  4. 제1항에 있어서,
    상기 기 구축된 데이터와 문장 유사도를 비교하여 파인 튜닝하는 것을 KorSTS 데이터를 기반으로 문장 유사도 비교를 통해 0 내지 5점 사이의 값으로 예측하는 문서 유사도 측정 모델 생성 방법.
  5. 제1항에 있어서,
    상기 준 지도 학습에서 레이블링에 활용된 데이터는 새로운 훈련 데이터셋과 중복되지 않는 문서 유사도 측정 모델 생성 방법.
  6. 제1항에 있어서,
    상기 준 지도 학습에서 본문과 제목으로 구성된 문서 쌍에 대한 새로운 유사도 점수를 부여하는 문서 유사도 측정 모델 생성 방법.
  7. 제1항에 있어서,
    상기 훈련 데이터를 최대 토큰의 개수에 따라 단계를 나누어 순차적으로 학습하는 것은,
    최대 토큰 64길이의 1단계 학습하는 단계;
    최대 토큰 256길이의 2단계 학습하는 단계; 및
    최대 토큰 512길이의 3단계 학습하는 단계를 포함하는 문서 유사도 측정 모델 생성 방법.
KR1020200169614A 2020-12-07 2020-12-07 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법 KR102507192B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020200169614A KR102507192B1 (ko) 2020-12-07 2020-12-07 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200169614A KR102507192B1 (ko) 2020-12-07 2020-12-07 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법

Publications (2)

Publication Number Publication Date
KR20220080472A true KR20220080472A (ko) 2022-06-14
KR102507192B1 KR102507192B1 (ko) 2023-03-07

Family

ID=81980042

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200169614A KR102507192B1 (ko) 2020-12-07 2020-12-07 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법

Country Status (1)

Country Link
KR (1) KR102507192B1 (ko)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020072140A (ko) * 2001-03-09 2002-09-14 서정연 각 범주의 핵심어와 문장간 유사도 측정 기법을 이용한비지도 학습을 기반으로 하는 자동 문서 범주화 방법
JP2011253256A (ja) * 2010-05-31 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 関連コンテンツ提示装置及びプログラム
KR101713831B1 (ko) 2016-07-26 2017-03-09 한국과학기술정보연구원 문서추천장치 및 방법
KR101866411B1 (ko) 2016-09-06 2018-06-19 한양대학교 산학협력단 문서 추천 정보를 제공하는 방법 및 이를 이용하는 문서 추천 정보 제공 장치
KR101877161B1 (ko) 2017-01-09 2018-07-10 포항공과대학교 산학협력단 문서 문맥정보를 고려하는 상황기반 추천 방법 및 장치
KR20200080571A (ko) * 2018-12-27 2020-07-07 에스케이 주식회사 키워드와 관계 정보를 이용한 정보 검색 시스템 및 방법
KR102161666B1 (ko) 2020-04-22 2020-10-05 한밭대학교 산학협력단 LDA 토픽 모델링과 Word2vec을 활용한 유사 특허 문서 추천 시스템 및 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020072140A (ko) * 2001-03-09 2002-09-14 서정연 각 범주의 핵심어와 문장간 유사도 측정 기법을 이용한비지도 학습을 기반으로 하는 자동 문서 범주화 방법
JP2011253256A (ja) * 2010-05-31 2011-12-15 Nippon Telegr & Teleph Corp <Ntt> 関連コンテンツ提示装置及びプログラム
KR101713831B1 (ko) 2016-07-26 2017-03-09 한국과학기술정보연구원 문서추천장치 및 방법
KR101866411B1 (ko) 2016-09-06 2018-06-19 한양대학교 산학협력단 문서 추천 정보를 제공하는 방법 및 이를 이용하는 문서 추천 정보 제공 장치
KR101877161B1 (ko) 2017-01-09 2018-07-10 포항공과대학교 산학협력단 문서 문맥정보를 고려하는 상황기반 추천 방법 및 장치
KR20200080571A (ko) * 2018-12-27 2020-07-07 에스케이 주식회사 키워드와 관계 정보를 이용한 정보 검색 시스템 및 방법
KR102161666B1 (ko) 2020-04-22 2020-10-05 한밭대학교 산학협력단 LDA 토픽 모델링과 Word2vec을 활용한 유사 특허 문서 추천 시스템 및 방법

Also Published As

Publication number Publication date
KR102507192B1 (ko) 2023-03-07

Similar Documents

Publication Publication Date Title
CN105144164B (zh) 使用深度网络对概念术语评分
US11003856B2 (en) Processing text using neural networks
US9846836B2 (en) Modeling interestingness with deep neural networks
CN109165380B (zh) 一种神经网络模型训练方法及装置、文本标签确定方法及装置
CN112131350B (zh) 文本标签确定方法、装置、终端及可读存储介质
US11755909B2 (en) Method of and system for training machine learning algorithm to generate text summary
CN115485696A (zh) 机器学习模型的对抗预训练
US20110184981A1 (en) Personalize Search Results for Search Queries with General Implicit Local Intent
CN105975639B (zh) 搜索结果排序方法和装置
CN112329824A (zh) 多模型融合训练方法、文本分类方法以及装置
CN110678882A (zh) 使用机器学习从电子文档选择回答跨距
CN112805715A (zh) 识别实体属性关系
CN113761868B (zh) 文本处理方法、装置、电子设备及可读存储介质
US11574190B2 (en) Method and apparatus for determining output token
CN113704466B (zh) 基于迭代网络的文本多标签分类方法、装置及电子设备
Li et al. Diverter-guider recurrent network for diverse poems generation from image
KR20220080472A (ko) 문서 유사도 측정 모델 생성 방법 및 이를 이용한 문서 유사도 측정 방법
CN117321602A (zh) 字符级注意力神经网络
KR102541806B1 (ko) 재구성된 질의를 순위화하기 위한 방법, 시스템, 및 컴퓨터 판독가능한 기록 매체
KR102685135B1 (ko) 영상 편집 자동화 시스템
Mehta et al. Improving sentence extraction through rank aggregation
Lin et al. Introduction to the Special Issue of Recent Advances in Computational Linguistics for Asian Languages
US11663251B2 (en) Question answering approach to semantic parsing of mathematical formulas
EP4379567A1 (en) Method and apparatus with entity linking
US20240078379A1 (en) Attention neural networks with n-grammer layers

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant