KR102654190B1 - 영형 대명사 복원 및 해소 - Google Patents

영형 대명사 복원 및 해소 Download PDF

Info

Publication number
KR102654190B1
KR102654190B1 KR1020217036940A KR20217036940A KR102654190B1 KR 102654190 B1 KR102654190 B1 KR 102654190B1 KR 1020217036940 A KR1020217036940 A KR 1020217036940A KR 20217036940 A KR20217036940 A KR 20217036940A KR 102654190 B1 KR102654190 B1 KR 102654190B1
Authority
KR
South Korea
Prior art keywords
computer
missing
pronoun
input words
pronouns
Prior art date
Application number
KR1020217036940A
Other languages
English (en)
Other versions
KR20210144901A (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 텐센트 아메리카 엘엘씨
Publication of KR20210144901A publication Critical patent/KR20210144901A/ko
Application granted granted Critical
Publication of KR102654190B1 publication Critical patent/KR102654190B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/205Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/253Grammatical analysis; Style critique
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Machine Translation (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

누락된 대명사를 복원하기 위한 방법, 컴퓨터 프로그램, 및 컴퓨터 시스템이 제공된다. 방법, 컴퓨터 프로그램, 및 컴퓨터 시스템은, 하나 이상의 입력 단어에 대응하는 데이터를 수신하는 것, 및 수신된 입력 단어 데이터에 대한 맥락 상의 표현들을 결정하는 것을 수반한다. 누락된 대명사는 맥락 상의 표현들과 연관된 확률 값에 기반하여 식별될 수 있고, 수신된 입력 단어들 중 하나 이상과 연관된 범위가 결정될 수 있다. 범위는, 입력 단어들 중 어느 입력 단어를 누락된 대명사가 참조하는지에 대응할 수 있다.

Description

영형 대명사 복원 및 해소
관련 출원에 대한 상호 참조
본 출원은, 미국 특허상표청에 2019년 12월 5일자로 출원된 미국 특허 출원 제16/704,241호를 우선권으로 주장하며, 상기 출원의 개시내용은 그 전체가 인용에 의해 본원에 포함된다.
기술분야
본 개시내용은 일반적으로 컴퓨팅의 분야에 관한 것으로, 더 상세하게는, 자연 언어 처리에 관한 것이다.
전세계에 걸친 많은 언어들은 문장들에서 주격 대명사들을 누락시킨다. 영어와 같은 대명사 비-누락(non-pro-drop) 언어들에서는 주격 대명사들을 누락시키는 것이 드물지만, 중국어와 같은 다른 언어들에서는 대명사 누락(pro-drop)이 빈번하게 발생하며, 주격 대명사들 중 최대 30 %가 누락될 수 있다. 이러한 언어들에 대해, 누락된 또는 영형(zero) 대명사는 맥락으로부터 쉽게 추론될 수 있는 문장 주어에 대응할 수 있다. 이러한 경우들에서, 주어는 인간 청취자들에게 모호성을 도입함이 없이 단순성 및 효율을 위해 생략될 수 있다.
실시예들은, 누락된 대명사들을 복원하기 위한 방법, 시스템, 및 컴퓨터 판독가능 매체에 관한 것이다. 일 양상에 따르면, 누락된 대명사들을 복원하기 위한 방법이 제공된다. 방법은, 컴퓨터에 의해, 하나 이상의 입력 단어에 대응하는 데이터를 수신하는 단계, 및 수신된 입력 단어 데이터에 대한 맥락 상의 표현들을 결정하는 단계를 포함할 수 있다. 컴퓨터는, 맥락 상의 표현들과 연관된 확률 값에 기반하여 누락된 대명사를 식별할 수 있고, 누락된 대명사가 입력 단어들 중 어느 것을 참조하는지에 대응하는, 수신된 입력 단어들 중 하나 이상과 연관된 범위(span)를 결정할 수 있다.
다른 양상에 따르면, 누락된 대명사들을 복원하기 위한 컴퓨터 시스템이 제공된다. 컴퓨터 시스템은, 하나 이상의 프로세서, 하나 이상의 컴퓨터 판독가능 메모리, 하나 이상의 컴퓨터 판독가능 유형적(tangible) 저장 디바이스, 및 하나 이상의 메모리 중 적어도 하나를 통해 하나 이상의 프로세서 중 적어도 하나에 의해 실행되도록 하나 이상의 저장 디바이스 중 적어도 하나에 저장되는 프로그램 명령어들을 포함할 수 있으며, 이에 의해, 컴퓨터 시스템이 방법을 수행하는 가능하다. 방법은, 컴퓨터에 의해, 하나 이상의 입력 단어에 대응하는 데이터를 수신하는 단계, 및 수신된 입력 단어 데이터에 대한 맥락 상의 표현들을 결정하는 단계를 포함할 수 있다. 컴퓨터는, 맥락 상의 표현들과 연관된 확률 값에 기반하여 누락된 대명사를 식별할 수 있고, 누락된 대명사가 입력 단어들 중 어느 것을 참조하는지에 대응하는, 수신된 입력 단어들 중 하나 이상과 연관된 범위를 결정할 수 있다.
또 다른 양상에 따르면, 누락된 대명사들을 복원하기 위한 컴퓨터 판독가능 매체가 제공된다. 컴퓨터 판독가능 매체는, 하나 이상의 컴퓨터 판독가능 저장 디바이스, 및 하나 이상의 유형적 저장 디바이스 중 적어도 하나 상에 저장되는 프로그램 명령어들을 포함할 수 있으며, 프로그램 명령어들은 프로세서에 의해 실행가능하다. 프로그램 명령어들은 방법을 수행하도록 프로세서에 의해 실행가능하며, 방법은 그에 따라서, 컴퓨터에 의해, 하나 이상의 입력 단어에 대응하는 데이터를 수신하는 단계, 및 수신된 입력 단어 데이터에 대한 맥락 상의 표현들을 결정하는 단계를 포함할 수 있다. 컴퓨터는, 맥락 상의 표현들과 연관된 확률 값에 기반하여 누락된 대명사를 식별할 수 있고, 누락된 대명사가 입력 단어들 중 어느 것을 참조하는지에 대응하는, 수신된 입력 단어들 중 하나 이상과 연관된 범위를 결정할 수 있다.
이들 및 다른 목적들, 특징들 및 이점들은, 첨부된 도면들과 관련하여 읽혀질 예시적인 실시예들의 다음의 상세한 설명으로부터 명백해질 것이다. 도면들의 다양한 특징들은 실측이 아니며, 그 이유는, 예시들이, 관련 기술분야의 통상의 기술자가 상세한 설명과 함께 본 개시내용을 이해하는 것을 용이하게 함에 있어서의 명확성을 위한 것이기 때문이다. 도면들에서:
도 1은 적어도 하나의 실시예에 따른 네트워킹된 컴퓨터 환경을 예시한다.
도 2는 적어도 하나의 실시예에 따른, 누락된 대명사들을 검출하고 복원하는 프로그램의 블록도이다.
도 3은 적어도 하나의 실시예에 따른, 누락된 대명사들을 검출하고 복원하는 프로그램에 의해 수행되는 단계들을 예시하는 동작 흐름도이다.
도 4는 적어도 하나의 실시예에 따른, 도 1에 도시된 컴퓨터 시스템을 포함하는 예시적인 클라우드 컴퓨팅 환경의 블록도이다.
도 5는 적어도 하나의 실시예에 따른, 도 4의 예시적인 클라우드 컴퓨팅 환경의 기능적 계층들의 블록도이다.
도 6은 적어도 하나의 실시예에 따른, 도 1에 도시된 컴퓨터들 및 서버들의 내부 및 외부 구성요소들의 블록도이다.
청구된 구조들 및 방법들의 상세한 실시예들이 본원에 개시되지만; 개시된 실시예들은 단지 다양한 형태들로 구현될 수 있는 청구된 구조들 및 방법들을 예시한다는 것이 이해될 수 있다. 그러나, 본 개시내용의 양상들은 많은 상이한 형태들로 구현될 수 있으며, 본원에 기재된 예시적인 실시예들로 제한되는 것으로 해석되어서는 안 된다. 오히려, 이러한 예시적인 실시예들은, 본 개시내용이 철저하고 완전해질 것이도록, 그리고 관련 기술분야의 통상의 기술자들에게 본 개시내용의 범위를 완전히 전달하도록 제공된다. 설명에서, 잘 알려진 특징들 및 기법들의 세부사항들은 제시된 실시예들을 불필요하게 불명료하게 하는 것을 피하기 위해 생략될 수 있다.
실시예들은 일반적으로 컴퓨팅의 분야에 관한 것으로, 더 상세하게는, 자연 언어 처리에 관한 것이다. 다음에 설명된 예시적인 실시예들은, 다른 것들 중에서도, 대명사가 문장에서 누락되었는지 여부를 예측하고 문장의 맥락에 기반하여 누락된 대명사를 복원하기 위한 시스템, 방법, 및 프로그램 제품을 제공한다. 따라서, 일부 실시예들은, 컴퓨터들이 누락된 대명사들을 복원하고 누락된 주격 대명사들과 연관된 술어들을 결정할 수 있게 함으로써 컴퓨팅의 분야를 개선하는 능력을 갖는다. 그에 따라, 본원에 개시된 컴퓨터에 의해 구현되는 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 매체는, 다른 것들 중에서도, 대명사 누락 언어를 말하는 사용자들에 대한 자연 언어 처리 애플리케이션들을 개선하는 데 사용될 수 있다.
이전에 설명된 바와 같이, 전세계에 걸친 많은 언어들은 주격 대명사들을 누락시킨다. 영어와 같은 대명사 비-누락(non-pro-drop) 언어들에서는 주격 대명사들을 누락시키는 것이 드물지만, 중국어와 같은 다른 언어들에서는 대명사 누락(pro-drop)이 빈번하게 발생하며, 주격 대명사들 중 최대 30 %가 누락될 수 있다. 이러한 언어들에 대해, 누락된 또는 영형 대명사는 맥락으로부터 쉽게 추론될 수 있는 문장 주어에 대응할 수 있다. 이러한 경우들에서, 주어는 인간 청취자들에게 모호성을 도입함이 없이 단순성 및 효율을 위해 생략될 수 있다. 그러나, 대명사 누락은, 자연 언어 처리(NLP)를 활용하는 컴퓨터들이 누락된 주격 대명사들을 결정할 수 없기 때문에 그러한 컴퓨터들에 대한 문제들을 야기할 수 있다. 영형 대명사 누락은 문장 내의 중심 술어의 주어 또는 목적어와 같은 정보의 손실을 야기할 수 있으며, 이는, 기계 번역, 다중-전환(multi-turn) 대화에 기반한 질의-응답, 및 대화 이해와 같은 많은 NLP 애플리케이션들에 대해 모호성을 도입할 수 있다.
영형 대명사들에 대한 2개의 오래 존재해 온 작업이 있는데, 원래의 대명사를 복원하는 데 사용될 수 있는 영형 대명사 복원(zero pronoun recovery), 및 각각의 누락된 대명사가 참조할 수 있는 문장 내의 단어들을 결정하는 데 사용될 수 있는 영형 대명사 해소(zero pronoun resolution)이다. 2개의 작업의 결과들이 서로 고도로 상호작용하기 때문에, 따라서, 둘 모두의 작업들을 함께 해결하는 것이 유리할 수 있다. 본 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 매체는 다중 작업 학습 프레임워크 하에서 두 작업들 모두를 공동으로 해결할 수 있다. 예컨대, 트랜스포머들을 통한 양방향 인코더 표현(Bidirectional Encoder Representation from Transformers)(BERT) 모델이 사용될 수 있다. 모델은, 각각의 훈련 단계에서 배치(batch)의 작업-특정 손실 값에 기반하여, 모델이 업데이트될 수 있기 전에 다수의 혼합 데이터세트들에 대해 이종 방식으로 훈련될 수 있다.
양상들은, 특정 실시예들에 따른 방법들, 장치(시스템들), 및 컴퓨터 판독가능 매체의 흐름도 예시들 및/또는 블록도들을 참조하여 본원에서 설명된다. 흐름도 예시들 및/또는 블록도들의 각각의 블록, 및 흐름도 예시들 및/또는 블록도들의 블록들의 조합들은 컴퓨터 판독가능 프로그램 명령어들에 의해 구현될 수 있음이 이해될 것이다.
다음에 설명된 예시적인 실시예들은, 누락된 대명사들을 검출하고 복원하는 시스템, 방법, 및 프로그램 제품을 제공한다. 본 실시예에 따르면, 이러한 검출 및 분류는, 수신된 입력 단어들의 맥락 상의 분석, 및 누락된 대명사들의 검출, 복원, 및 해소와 연관된 확률들의 계산을 통해 제공될 수 있다.
이제 도 1을 참조하면, 누락된 대명사들의 개선된 검출, 복원, 및 해소를 위한 영형 대명사 복원 시스템(100)(이하에서, "시스템")을 예시하는 네트워킹된 컴퓨터 환경의 기능 블록도가 도시된다. 도 1은 일 구현의 예시를 제공할 뿐이며, 상이한 실시예들이 구현될 수 있는 환경들에 대한 어떠한 제한들도 암시하지 않는다는 것이 인식되어야 한다. 도시된 환경들에 대한 다수의 수정들이 설계 및 구현 요건들에 기반하여 이루어질 수 있다.
시스템(100)은, 컴퓨터(102) 및 서버 컴퓨터(114)를 포함할 수 있다. 컴퓨터(102)는, 통신 네트워크(110)(이하에서, "네트워크")를 통해 서버 컴퓨터(114)와 통신할 수 있다. 컴퓨터(102)는, 프로세서(104), 및 데이터 저장 디바이스(106)에 저장되고, 사용자와 인터페이싱하고 서버 컴퓨터(114)와 통신하는 것이 가능해지는 소프트웨어 프로그램(108)을 포함할 수 있다. 도 6을 참조하여 아래에서 논의될 바와 같이, 컴퓨터(102)는 내부 구성요소들(800A)와 외부 구성요소들(900A)을 각각 포함할 수 있고, 서버 컴퓨터(114)는 내부 구성요소들(800B)와 외부 구성요소들(900B)을 각각 포함할 수 있다. 컴퓨터(102)는, 예컨대, 모바일 디바이스, 전화, 개인 휴대 정보 단말기, 넷북, 랩톱 컴퓨터, 태블릿 컴퓨터, 데스크톱 컴퓨터, 또는 프로그램을 실행하고 네트워크에 액세스하고 데이터베이스에 액세스하는 것이 가능한 임의의 유형의 컴퓨팅 디바이스들일 수 있다.
서버 컴퓨터(114)는 또한, 도 4 및 도 5와 관련하여 아래에서 논의되는 바와 같이, 서비스로서의 소프트웨어(Software as a Service)(SaaS), 서비스로서의 플랫폼(Platform as a Service)(PaaS), 또는 서비스로서의 기반구조(Infrastructure as a Service)(laaS)와 같은 클라우드 컴퓨팅 서비스 모델에서 동작할 수 있다. 서버 컴퓨터(114)는 또한, 사설 클라우드, 커뮤니티 클라우드, 공용 클라우드, 또는 하이브리드 클라우드와 같은 클라우드 컴퓨팅 배치 모델에 위치될 수 있다.
누락된 대명사들을 검출, 복원, 및 해소하는 데 사용될 수 있는 서버 컴퓨터(114)는, 데이터베이스(112)와 상호작용할 수 있는 영형 대명사 복원 프로그램(116)(이하에서, "프로그램")을 실행하는 것이 가능해진다. 영형 대명사 복원 프로그램 방법은 도 3과 관련하여 아래에서 더 상세히 설명된다. 일 실시예에서, 컴퓨터(102)는 사용자 인터페이스를 포함하는 입력 디바이스로서 동작할 수 있는 한편, 프로그램(116)은 서버 컴퓨터(114) 상에서 주로 실행될 수 있다. 대안적인 실시예에서, 프로그램(116)은 하나 이상의 컴퓨터(102) 상에서 주로 실행될 수 있는 한편, 서버 컴퓨터(114)는 프로그램(116)에 의해 사용되는 데이터의 처리 및 저장하는 데 사용될 수 있다. 프로그램(116)은 독립형 프로그램일 수 있거나 더 큰 영형 대명사 복원 프로그램에 통합될 수 있다는 것이 유의되어야 한다.
그러나, 프로그램(116)에 대한 처리는, 일부 예시들에서, 컴퓨터들(102)과 서버 컴퓨터들(114) 간에 임의의 비율로 공유될 수 있다는 것이 유의되어야 한다. 다른 실시예에서, 프로그램(116)은, 하나 초과의 컴퓨터, 서버 컴퓨터, 또는 컴퓨터들과 서버 컴퓨터들의 일부 조합, 예컨대, 네트워크(110)를 통해 단일 서버 컴퓨터(114)와 통신하는 복수의 컴퓨터들(102) 상에서 동작할 수 있다. 다른 실시예에서, 예컨대, 프로그램(116)은, 네트워크(110)를 통해 복수의 클라이언트 컴퓨터들과 통신하는 복수의 서버 컴퓨터들(114) 상에서 동작할 수 있다. 대안적으로, 프로그램은, 네트워크를 통해 서버 및 복수의 클라이언트 컴퓨터들과 통신하는 네트워크 서버 상에서 동작할 수 있다.
네트워크(110)는, 유선 연결들, 무선 연결들, 광섬유 연결들, 또는 이들의 일부 조합을 포함할 수 있다. 일반적으로, 네트워크(110)는, 컴퓨터(102)와 서버 컴퓨터(114) 사이의 통신들을 지원할 연결들 및 프로토콜들의 임의의 조합일 수 있다. 네트워크(110)는, 예컨대, 근거리 네트워크(LAN), 광역 네트워크(WAN), 이를테면 인터넷, 원격통신 네트워크, 이를테면 공용 교환 전화 네트워크(PSTN), 무선 네트워크, 공용 교환 네트워크, 위성 네트워크, 셀룰러 네트워크(예컨대, 5세대(5G) 네트워크, 롱 텀 에볼루션(LTE) 네트워크, 3세대(3G) 네트워크, 코드 분할 다중 액세스(CDMA) 네트워크 등), 공용 육상 모바일 네트워크(PLMN), 대도시 영역 네트워크(MAN), 사설 네트워크, 애드혹 네트워크, 인트라넷, 광섬유 기반 네트워크 등, 그리고/또는 이들 또는 다른 유형들의 네트워크들의 조합과 같은 다양한 유형들의 네트워크들을 포함할 수 있다.
도 1에 도시된 디바이스들 및 네트워크들의 수 및 배열은 예로서 제공된다. 실제로, 부가적인 디바이스들 및/또는 네트워크들, 더 적은 디바이스들 및/또는 네트워크들, 상이한 디바이스들 및/또는 네트워크들, 또는 도 1에 도시된 것들과 상이하게 배열된 디바이스들 및/또는 네트워크들이 존재할 수 있다. 또한, 도 1에 도시된 2개 이상의 디바이스가 단일 디바이스 내에서 구현될 수 있거나, 도 1에 도시된 단일 디바이스가 다수의 분산된 디바이스들로서 구현될 수 있다. 부가적으로 또는 대안적으로, 시스템(100)의 디바이스 세트(예컨대, 하나 이상의 디바이스)는 시스템(100)의 다른 디바이스 세트에 의해 수행되는 것으로서 설명된 하나 이상의 기능을 수행할 수 있다.
도 2를 참조하면, 영형 대명사 복원 프로그램(116)의 블록도가 도시된다. 도 2는, 도 1에 도시된 예시적인 실시예들의 도움으로 설명될 수 있다. 하나 이상의 실시예에 따르면, 영형 대명사 복원 프로그램(116)은, 컴퓨터(102)(도 1) 상에 또는 서버 컴퓨터(114)(도 1) 상에 위치될 수 있다. 그에 따라서, 영형 대명사 복원 프로그램(116)은, 다른 것들 중에서도, 트랜스포머들을 통한 양방향 인코더 표현(BERT) 인코더(202) 및 영형 대명사(Zero Pronoun)(ZP) 기능 모듈(204)을 포함할 수 있다. BERT 인코더(202)는 하나 이상의 입력 단어(206A-206N)를 수신할 수 있고, [CLS] 부류 토큰을 입력 단어들(206A-206N)에 첨부할 수 있다. BERT 인코더(202)는, 입력 단어들(206A-206N) 각각에 대응할 수 있는 맥락 상의 표현들(208A-208N)을 출력할 수 있다. BERT 인코더(202)는 또한, [CLS] 토큰에 대한 맥락 상의 표현에 대응할 수 있는 맥락 상의 표현(208')을 출력할 수 있다. ZP 기능 모듈(204)은 하나 이상의 기능을 수행하기 위한 입력으로서 맥락 상의 표현들(208' 및 208A-208N)을 수신할 수 있다.
영형 대명사 복원의 작업은, 입력 텍스트에 대한 임의의 누락된 대명사들을 복원하는 것일 수 있다. 대명사들이 열거가능하므로, 영형 대명사 복원 프로그램(116)은 이러한 작업을 각각의 단어 공간에 대한 분류 문제로 취급(cast)할 수 있다. ZP 기능 모듈(204)은, BERT 인코더(202)에 의해 출력된 맥락 상의 표현들(208A-208N)을 사용하여 영형 대명사 복원 기능(frec)을 수행하도록 구성될 수 있다. 입력 단어(206(i-1))와 입력 단어(206i) 사이의 공간에서 대명사를 복원할 확률(reci)은 일 수 있고, 여기서, Wrec 및 brec는 선형 분류기에 대한 파라미터들일 수 있고, h는 맥락 상의 표현들(208' 및 208A-208N)에 대응할 수 있다.
영형 대명사 복원 프로그램(116)은 각각의 누락된 대명사와 연관된 범위를 예측함으로써 영형 대명사 해소 기능(fres)을 수행할 수 있다. 일 실시예에 따르면, 영형 대명사 복원이 먼저 수행될 수 있고, 정보는 영형 대명사 해소에서 활용될 수 있다. 대안적인 실시예에 따르면, 비-영형 대명사 위치들(즉, 입력 단어를 갖는 위치)에 대해 "(0,0)"의 범위가 배정될 수 있다. 이는 상충들을 최소화할 수 있는데, 그 이유는, 위치 "0"이 [CLS] 토큰에 대응할 수 있으며, 이에 따라, 어떠한 실제 범위들도 "(0,0)"일 수 없기 때문이다. 영형 대명사 복원 프로그램(116)은, 입력 단어(206(i-1))와 입력 단어(206i) 사이의 각각의 단어 공간에 대한 영형 대명사 해소 작업을 기계 판독-이해 문제로서 취급할 수 있으며, 해소 범위는 타깃 응답에 대응할 수 있다. 시작 및 종료 위치들은, 각각의 영형 대명사 해소 범위의 시작 및 종료 위치들을 예측하기 위한 모든 단어 상태들 및 자기-주의(self-attention) 모듈들의 연접(concatenation)에 기반하여 각각의 범위에 대해 별개로 결정될 수 있다. 그에 따라, ZP 기능 모듈(204)은 영형 대명사 해소 기능(fres)을 수행하도록 구성될 수 있다. 전체 범위를 예측할 확률(resi)은 일 수 있고, 여기서, H는 맥락 상의 표현들(208' 및 208A-208N)의 연접일 수 있고, SelfAttnst 및 SelfAttned는 각각 시작 및 종료 위치들에 대한 자기-주의 모듈들일 수 있다.
이종 훈련의 강건성을 개선하기 위해, 영형 대명사 검출은 영형 대명사 검출 및 영형 대명사 복원을 위한 하위 작업뿐만 아니라 부가적인 훈련 값 둘 모두로서 활용될 수 있다. 영형 대명사 검출은 각각의 단어 공간이 영형 대명사를 갖는지 여부를 결정하는 이진 작업일 수 있기 때문에, 영형 대명사 복원은 다수의 유형들의 데이터세트들에 걸쳐 이용가능할 수 있다. 보조 작업으로서, 영형 대명사 복원 프로그램(116)은, 개선된 훈련을 위해, 누락된 대명사들을 검출할 수 있다. 문장이 누락된 대명사를 가질 수 있는지 여부를 결정하는 것이 이진 분류일 수 있으므로, ZP 기능 모듈(204)은 영형 대명사 검출 기능(fdet)를 수행하도록 구성될 수 있다. 누락된 대명사를 검출할 확률은 일 수 있으며, 여기서, Wdet 및 bdet는 모델 파라미터일 수 있고, h는 맥락 상의 표현들(208' 및 208A-208N)에 대응할 수 있다.
ZP 기능 모듈(204)은, 더 많은 지도(supervision) 값들을 활용하기 위해, 영형 대명사 복원 및 영형 대명사 해소 작업들 둘 모두의 조합되고 셔플링된 데이터를 사용하여 훈련될 수 있다. 예컨대, 각각의 데이터 인스턴스는 영형 대명사 복원 또는 영형 대명사 해소의 주석만을 포함할 수 있다. 그에 따라, 일 예에 대한 손실 값은 손실 = 로서 정의될 수 있으며, 여기서, α, β, 및 는 각각의 작업에 대한 계수 및 표시자로서의 역할을 할 수 있다. α 및 β에 대해, 값은, 대응하는 지도 값이 존재하는 경우 "1"일 수 있고; 그렇지 않으면, 값은 "0"일 수 있다. 모든 인스턴스들에 대해 영형 대명사 검출과 연관된 지도 값이 존재할 수 있기 때문에, 의 값은 손실 함수의 왜곡을 피하기 위해 낮은 값으로 설정될 수 있다.
이제 도 3을 참조하면, 누락된 대명사들을 복원하는 프로그램에 의해 수행되는 단계들을 예시하는 동작 흐름도(300)가 도시된다. 도 3은, 도 1 및 도 2의 도움으로 설명될 수 있다. 이전에 설명된 바와 같이, 영형 대명사 복원 프로그램(116)(도 1)은 누락된 대명사들을 빠르고 효과적으로 검출하고 복원할 수 있다.
302에서, 컴퓨터에 의해, 하나 이상의 입력 단어에 대응하는 데이터가 수신된다. 입력 단어들은, 예컨대, 실질적으로 임의의 언어의 문장일 수 있다. 문장은, 다른 것들 중에서도, 누락된 주격 대명사를 가질 수 있다. 동작 시, 영형 대명사 복원 프로그램(116)(도 1)은, 컴퓨터(102)(도 1) 또는 서버 컴퓨터(114)(도 1) 상에 저장될 수 있다. 일 실시예에 따르면, 영형 대명사 복원 프로그램(116)은, 서버 컴퓨터(114) 상의 데이터베이스(112)(도 1)로부터 입력 단어들(206A-206N)(도 2)을 검색할 수 있다. 대안적인 실시예에 따르면, 입력 단어들(206A-206N)은 컴퓨터(102) 상의 데이터 저장 디바이스(106)(도 1)에 저장될 수 있고, 영형 대명사 복원 프로그램(116)은 통신 네트워크(110)(도 1)를 통해 컴퓨터(102)로부터 입력 단어들(206A-206N)을 수신할 수 있다.
304에서, 컴퓨터에 의해, 수신된 입력 단어 데이터에 대한 맥락 상의 표현들이 결정된다. 맥락 상의 표현들은 트랜스포머들을 통한 양방향 인코더 표현(BERT) 모델에 의해 결정될 수 있다. 맥락 상의 표현들은, 하나 이상의 입력 단어가 그들의 대응하는 문장의 맥락에서 어떻게 사용되는지를 결정하기 위해 사용될 수 있다. 동작 시, BERT 인코더(202)(도 2)는 입력 단어들(206A-206N)을 입력으로서 수신할 수 있고, 입력 단어들(206A-206N)에 대응할 수 있는 맥락 상의 표현들(208A-208N)(도 2)을 출력할 수 있다. BERT 인코더(202)는 [CLS] 부류 토큰을 입력 단어들(206A-206N)의 시작에 첨부할 수 있고, [CLS] 토큰에 대응하는 맥락 상의 표현(208')을 출력할 수 있다.
306에서, 컴퓨터에 의해, 맥락 상의 표현들과 연관된 확률 값에 기반하여 누락된 대명사가 식별된다. 대명사들이 열거가능하고 제한된 수의 가능한 대명사들 및 대응하는 유형들이 존재하기 때문에, 누락된 대명사들의 복원은 각각의 단어 공간에 대한 분류 문제로 취급될 수 있다. 그에 따라, 컴퓨터는, 맥락에 기반하여, 어느 대명사가 문장으로부터 누락되었는지를 결정하는 것이 가능할 수 있다. 동작 시, ZP 기능 모듈(204)(도 2)은 맥락 상의 표현들(208' 및 208A-208N)(도 2)에 대해 영형 대명사 복원 기능(frec)을 수행할 수 있다. ZP 기능 모듈(204)은, 확률()에 기반하여, 입력 단어들(206A-206N)(도 2)을 포함하는 문장으로부터 어느 대명사가 누락되었는지를 결정할 수 있다.
308에서, 컴퓨터에 의해, 수신된 입력 단어들 중 하나 이상과 연관된 범위가 결정된다. 범위는, 입력 단어들 중, 누락된 대명사가 참조하는 하나 이상의 입력 단어에 대응할 수 있다. 누락된 주격 대명사에 대응하는 술어를 어느 단어들이 구성하는지를 결정함으로써, 복원된 주격 대명사의 결정이 개선될 수 있다. 동작 시, ZP 기능 모듈(204)(도 2)은, 누락된 대명사가 참조하는 술어의 범위를 예측하기 위해, 맥락 상의 표현들(208' 및 208A-208N)(도 2)에 대해 영형 대명사 해소 기능(fres)을 수행할 수 있다. ZP 기능 모듈(204)은 확률()에 기반하여 범위를 결정할 수 있다.
도 3은 일 구현의 예시를 제공할 뿐이며, 상이한 실시예들이 구현될 수 있는 방식에 대한 어떠한 제한들도 암시하지 않는다는 것이 인식될 수 있다. 도시된 환경들에 대한 다수의 수정들이 설계 및 구현 요건들에 기반하여 이루어질 수 있다.
앞서서, 본 개시내용은 클라우드 컴퓨팅에 대한 상세한 설명을 포함하지만, 본원에 언급된 교시들의 구현은 클라우드 컴퓨팅 환경에 제한되지 않는다는 것이 이해된다. 오히려, 일부 실시예들은 현재 알려져 있거나 나중에 개발될 임의의 다른 유형의 컴퓨팅 환경과 함께 구현되는 것이 가능하다.
클라우드 컴퓨팅은, 최소한의 관리 노력 또는 서비스 제공자와의 상호작용으로 신속하게 프로비저닝 및 해제될 수 있는 구성가능한 컴퓨팅 리소스들(예컨대, 네트워크들, 네트워크 대역폭, 서버들, 처리, 메모리, 저장, 애플리케이션들, 가상 기계들, 및 서비스들)의 공유 풀에 대한 편리한 주문형(on-demand) 네트워크 액세스를 가능하게 하기 위한 서비스 전달 모델이다. 이러한 클라우드 모델은 적어도 5가지의 특성, 적어도 3개의 서비스 모델, 및 적어도 4개의 배포 모델을 포함할 수 있다.
특성들은 다음과 같다:
주문형 셀프-서비스: 클라우드 소비자는, 서비스의 제공자와 인간의 상호작용을 요구함이 없이 필요에 따라 자동으로 컴퓨팅 능력들, 이를테면, 서버 시간 및 네트워크 저장을 일방적으로 프로비저닝할 수 있다.
광범위한 네트워크 액세스: 능력들은 네트워크를 통해 이용가능하고, 이종 씬(thin) 또는 씩(thick) 클라이언트 플랫폼들(예컨대, 모바일 폰들, 랩톱들, 및 PDA들)의 사용을 장려하는 표준 메커니즘들을 통해 액세스된다.
리소스 풀링: 제공자의 컴퓨팅 리소스들은, 다수-세입자형(multi-tenant) 모델을 사용하여 다수의 소비자들을 서빙하도록 풀링되며, 상이한 물리적 및 가상 리소스들은 요구에 따라 동적으로 배정 및 재배정된다. 소비자는 일반적으로 제공된 리소스들의 정확한 위치에 대한 제어 또는 지식을 갖지 않지만, 더 높은 수준의 추상화(예컨대, 국가, 주, 또는 데이터센터)에서 위치를 특정하는 것이 가능할 수 있다는 점에서 위치 독립성의 의미가 있다.
신속한 탄력성: 능력들은, 신속하고 탄력적으로 프로비저닝되어, 일부 경우들에서는 자동으로, 빠르게 확장되고, 신속하게 해제되어 빠르게 축소될 수 있다. 소비자에게, 프로비저닝에 이용가능한 능력들은 종종, 무제한인 것으로 그리고 언제든지 임의의 양으로 구매될 수 있는 것으로 보인다.
측정된 서비스: 클라우드 시스템들은 서비스의 유형(예컨대, 저장, 처리, 대역폭, 및 활성 사용자 계정들)에 적절한 일부 추상화 수준에서 계량 능력을 활용함으로써 리소스 사용을 자동으로 제어하고 최적화한다. 리소스 사용이 모니터링되고, 제어되고, 보고될 수 있어서, 활용되는 서비스의 제공자와 소비자 둘 모두에게 투명성이 제공된다.
서비스 모델들은 다음과 같다:
서비스로서의 소프트웨어(SaaS): 소비자에게 제공되는 능력은 클라우드 기반구조 상에서 실행되는 제공자의 애플리케이션들을 사용하는 것이다. 애플리케이션들은 씬 클라이언트 인터페이스, 이를테면 웹 브라우저(예컨대, 웹 기반 이메일)를 통해 다양한 클라이언트 디바이스들로부터 액세스가능하다. 소비자는, 제한된 사용자-특정 애플리케이션 구성 설정들을 가능한 예외로 두고, 네트워크, 서버들, 운영 체제들, 저장소, 또는 심지어는 개별 애플리케이션 능력들을 포함하는 기저 클라우드 기반구조를 관리하거나 제어하지 않는다.
서비스로서의 플랫폼(PaaS): 소비자에게 제공되는 능력은, 제공자에 의해 지원되는 프로그래밍 언어들 및 도구들을 사용하여 생성된, 소비자에 의해 생성되거나 취득된 애플리케이션을 클라우드 기반구조에 배포하는 것이다. 소비자는, 네트워크들, 서버들, 운영 체제들, 또는 저장소를 포함하는 기저 클라우드 기반구조를 관리하거나 제어하지 않지만, 배포된 애플리케이션들, 및 가능하게는 애플리케이션 호스팅 환경 구성들을 제어할 수 있다.
서비스로서의 기반구조(laaS): 소비자에게 제공되는 능력은, 처리, 저장, 네트워크들, 및 다른 기본 컴퓨팅 리소스들을 프로비저닝하는 것이며, 여기서, 소비자는 운영 체제들 및 애플리케이션들을 포함할 수 있는 임의적 소프트웨어를 배포하고 실행할 수 있다. 소비자는 기저 클라우드 기반구조를 관리하거나 제어하지 않지만, 운영 체제들, 저장소, 배포된 애플리케이션들을 제어할 수 있고, 가능하게는, 선택 네트워킹 구성요소들(예컨대, 호스트 방화벽들)을 제한적으로 제어할 수 있다.
배포 모델들은 다음과 같다:
사설 클라우드: 클라우드 기반구조가 한 조직을 위해서만 운영된다. 그것은, 조직 또는 제3자에 의해 관리될 수 있으며, 온-프레미스(on-premise)들 또는 오프-프레미스(off-premise)들로 존재할 수 있다.
커뮤니티 클라우드: 클라우드 기반구조가 여러 조직들에 의해 공유되고, 관심사(예컨대, 미션, 보안 요건들, 정책, 및 규정 준수 고려사항들)를 공유하는 특정 커뮤니티를 지원한다. 그것은, 조직들 또는 제3자에 의해 관리될 수 있으며, 온-프레미스들 또는 오프-프레미스들로 존재할 수 있다.
공용 클라우드: 클라우드 기반구조가 일반 대중 또는 대규모 산업 그룹에 대해 이용가능하게 이루어지며, 클라우드 서비스들을 판매하는 조직에 의해 소유된다.
하이브리드 클라우드: 클라우드 기반구조가, 고유한 엔티티들로 남아 있지만 데이터 및 애플리케이션 이식성을 가능하게 하는 표준화된 또는 독점적인 기술(예컨대, 클라우드들 사이의 부하 균형을 위한 클라우드 버스팅)에 의해 함께 결속되는 2개 이상의 클라우드(사설, 커뮤니티, 또는 공용)의 구성이다.
클라우드 컴퓨팅 환경은, 무상태성(statelessness), 낮은 결합성(low coupling), 모듈성(modularity), 및 의미론적 상호운용성(semantic interoperability)에 초점을 두고 지향되는 서비스이다. 클라우드 컴퓨팅의 핵심에는 상호연결된 노드들의 네트워크를 포함하는 기반구조가 있다.
도 4를 참조하면, 예시적인 클라우드 컴퓨팅 환경(400)이 도시된다. 도시된 바와 같이, 클라우드 컴퓨팅 환경(400)은, 예컨대, 개인 휴대 정보 단말기(PDA) 또는 셀룰러 전화(54A), 데스크톱 컴퓨터(54B), 랩톱 컴퓨터(54C), 및/또는 자동차 컴퓨터 시스템(54N)과 같은, 클라우드 소비자들에 의해 사용되는 로컬 컴퓨팅 디바이스들이 그와 통신할 수 있는 하나 이상의 클라우드 컴퓨팅 노드(10)를 포함한다. 클라우드 컴퓨팅 노드들(10)은 서로 통신할 수 있다. 이들은, 위에서 설명된 바와 같은 사설, 커뮤니티, 공용, 또는 하이브리드 클라우드들, 또는 이들의 조합과 같은 하나 이상의 네트워크에서 물리적으로 또는 가상으로 그룹화(도시되지 않음)될 수 있다. 이는, 클라우드 컴퓨팅 환경(400)이, 클라우드 소비자가 로컬 컴퓨팅 디바이스 상에 리소스들을 유지할 필요가 없는 서비스들로서 기반구조, 플랫폼들, 및/또는 소프트웨어를 제공할 수 있게 한다. 도 4에 도시된 컴퓨팅 디바이스들(54A-N)의 유형들은 단지 예시적인 것으로 의도되고, 클라우드 컴퓨팅 노드들(10) 및 클라우드 컴퓨팅 환경(400)은 임의의 유형의 네트워크 및/또는 네트워크 어드레싱가능 연결(예컨대, 웹 브라우저를 사용함)을 통해 임의의 유형의 컴퓨터화된 디바이스와 통신할 수 있다는 것이 이해된다.
도 5를 참조하면, 클라우드 컴퓨팅 환경(400)(도 4)에 의해 제공되는 기능적 추상화 계층들의 세트(500)가 도시된다. 앞서서, 도 5에 도시된 구성요소들, 계층들, 및 기능들은 단지 예시적인 것으로 의도되고, 본 개시내용의 실시예들은 이에 제한되지 않는다는 것이 이해되어야 한다. 도시된 바와 같이, 다음의 계층들 및 대응하는 기능들이 제공된다:
하드웨어 및 소프트웨어 계층(60)은 하드웨어 및 소프트웨어 구성요소들을 포함한다. 하드웨어 구성요소들의 예들은: 메인프레임들(61); 감소된 명령어 세트 컴퓨터(RISC) 아키텍처 기반 서버들(62); 서버들(63); 블레이드 서버들(64); 저장 디바이스들(65); 및 네트워크들 및 네트워킹 구성요소들(66)을 포함한다. 일부 실시예들에서, 소프트웨어 구성요소들은, 네트워크 애플리케이션 서버 소프트웨어(67) 및 데이터베이스 소프트웨어(68)를 포함한다.
가상화 계층(70)은, 다음의 가상 엔티티들의 예들, 즉, 가상 서버들(71); 가상 저장소(72); 가상 사설 네트워크들을 포함하는 가상 네트워크들(73); 가상 애플리케이션들 및 운영 체제들(74); 및 가상 클라이언트들(75)이 그로부터 제공될 수 있는 추상화 계층을 제공한다.
일 예에서, 관리 계층(80)은 아래에 설명된 기능들을 제공할 수 있다. 리소스 프로비저닝(81)은, 클라우드 컴퓨팅 환경 내에서 작업들을 수행하는 데 활용되는 컴퓨팅 리소스들 및 다른 리소스들의 동적 조달을 제공한다. 계량 및 가격 책정(82)은, 리소스들이 클라우드 컴퓨팅 환경 내에서 활용됨에 따른 비용 추적, 및 이러한 리소스들의 소비에 대한 청구서 발부 또는 송장 발부를 제공한다. 일 예에서, 이러한 리소스들은 애플리케이션 소프트웨어 허가들을 포함할 수 있다. 보안은, 클라우드 소비자들 및 작업들에 대한 신원 확인뿐만 아니라 데이터 및 다른 리소스들에 대한 보호를 제공한다. 사용자 포털(83)은, 소비자들 및 시스템 관리자들에게 클라우드 컴퓨팅 환경에 대한 액세스를 제공한다. 서비스 수준 관리(84)는, 요구되는 서비스 수준들이 충족되도록 클라우드 컴퓨팅 리소스 할당 및 관리를 제공한다. 서비스 수준 계약(SLA) 계획 및 이행(85)은, SLA에 따라 향후의 요구가 예상되는 클라우드 컴퓨팅 리소스의 사전 준비(pre-arrangement) 및 조달을 제공한다.
작업부하 계층(90)은, 클라우드 컴퓨팅 환경이 활용될 수 있는 기능성의 예들을 제공한다. 이러한 계층으로부터 제공될 수 있는 작업부하들 및 기능들의 예들은: 맵핑 및 내비게이션(91); 소프트웨어 개발 및 수명주기 관리(92); 가상 교실 교육 전달(93); 데이터 분석 처리(94); 트랜잭션 처리(95); 및 영형 대명사 복원(96)을 포함한다. 영형 대명사 복원(96)은, 영형 대명사들의 사용을 허용할 수 있는 언어들로 작성된 문장들에 대한 누락된 대명사들을 검출하고 복원할 수 있다.
도 6은 예시적인 실시예에 따른, 도 1에 도시된 컴퓨터들의 내부 및 외부 구성요소들의 블록도(600)이다. 도 6은 일 구현의 예시를 제공할 뿐이며, 상이한 실시예들이 구현될 수 있는 환경들에 대한 어떠한 제한들도 암시하지 않는다는 것이 인식되어야 한다. 도시된 환경들에 대한 다수의 수정들이 설계 및 구현 요건들에 기반하여 이루어질 수 있다.
컴퓨터(102)(도 1) 및 서버 컴퓨터(114)(도 1)는 도 4에 예시된 내부 구성요소들(800A,B) 및 외부 구성요소들(900A,B)의 개개의 세트들을 포함할 수 있다. 내부 구성요소들(800)의 세트들 각각은, 하나 이상의 버스(826), 하나 이상의 운영 체제(828), 및 하나 이상의 컴퓨터 판독가능 유형적 저장 디바이스(830) 상의 하나 이상의 프로세서(820), 하나 이상의 컴퓨터 판독가능 RAM(822), 및 하나 이상의 컴퓨터 판독가능 ROM(824)을 포함한다.
프로세서(820)는, 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합으로 구현된다. 프로세서(820)는, 중앙 처리 유닛(CPU), 그래픽 처리 유닛(GPU), 가속 처리 유닛(APU), 마이크로프로세서, 마이크로제어기, 디지털 신호 프로세서(DSP), 필드 프로그래밍가능 게이트 어레이(FPGA), 주문형 집적 회로(ASIC), 또는 다른 유형의 처리 구성요소이다. 일부 구현들에서, 프로세서(820)는, 기능을 수행하도록 프로그래밍되는 것이 가능한 하나 이상의 프로세서를 포함한다. 버스(826)는, 내부 구성요소들(800A,B) 간의 통신을 허용하는 구성요소를 포함한다.
서버 컴퓨터(114)(도 1) 상의 하나 이상의 운영 체제(828), 소프트웨어 프로그램(108)(도 1), 및 영형 대명사 복원 프로그램(116)(도 1)은, 개개의 RAM들(822)(전형적으로, 캐시 메모리를 포함함) 중 하나 이상을 통해 개개의 프로세서들(820) 중 하나 이상에 의한 실행을 위해 개개의 컴퓨터 판독가능 유형적 저장 디바이스들(830) 중 하나 이상 상에 저장된다. 도 6에 예시된 실시예에서, 컴퓨터 판독가능 유형적 저장 디바이스들(830) 각각은 내부 하드 드라이브의 자기 디스크 저장 디바이스이다. 대안적으로, 컴퓨터 판독가능 유형적 저장 디바이스들(830) 각각은, 반도체 저장 디바이스, 이를테면, ROM(824), EPROM, 플래시 메모리, 광학 디스크, 광자기 디스크, 솔리드 스테이트 디스크, 콤팩트 디스크(CD), 디지털 다기능 디스크(DVD), 플로피 디스크, 카트리지, 자기 테이프, 및/또는 컴퓨터 프로그램 및 디지털 정보를 저장할 수 있는 다른 유형의 비-일시적인 컴퓨터 판독가능 유형적 저장 디바이스이다.
내부 구성요소들(800A,B)의 각각의 세트는 또한, 하나 이상의 휴대용 컴퓨터 판독가능 유형적 저장 디바이스(936), 이를테면, CD-ROM, DVD, 메모리 스틱, 자기 테이프, 자기 디스크, 광학 디스크, 또는 반도체 저장 디바이스로부터의 판독 및 그에 대한 기입을 위한 R/W 드라이브 또는 인터페이스(832)를 포함한다. 소프트웨어 프로그램, 이를테면 소프트웨어 프로그램(108)(도 1) 및 영형 대명사 복원 프로그램(116)(도 1)은, 개개의 휴대용 컴퓨터 판독가능 유형적 저장 디바이스들(936) 중 하나 이상 상에 저장되고, 개개의 R/W 드라이브 또는 인터페이스(832)를 통해 판독되고, 개개의 하드 드라이브(830)로 로딩될 수 있다.
내부 구성요소들(800A,B)의 각각의 세트는 또한, 네트워크 어댑터들 또는 인터페이스들(836), 이를테면, TCP/IP 어댑터 카드들; 무선 Wi-Fi 인터페이스 카드들; 또는 3G, 4G, 또는 5G 무선 인터페이스 카드들, 또는 다른 유선 또는 무선 통신 링크들을 포함한다. 서버 컴퓨터(114)(도 1) 상의 소프트웨어 프로그램(108)(도 1) 및 영형 대명사 복원 프로그램(116)(도 1)은, 네트워크(예컨대, 인터넷, 근거리 네트워크, 또는 다른 광역 네트워크) 및 개개의 네트워크 어댑터들 또는 인터페이스들(836)을 통해 외부 컴퓨터로부터 컴퓨터(102)(도 1) 및 서버 컴퓨터(114)에 다운로드될 수 있다. 네트워크 어댑터들 또는 인터페이스들(836)로부터, 서버 컴퓨터(114) 상의 소프트웨어 프로그램(108) 및 영형 대명사 복원 프로그램(116)이 개개의 하드 드라이브(830)에 로딩된다. 네트워크는, 구리 와이어들, 광섬유들, 무선 송신, 라우터들, 방화벽들, 스위치들, 게이트웨이 컴퓨터들, 및/또는 에지 서버들을 포함할 수 있다.
외부 구성요소들(900A,B)의 세트들 각각은, 컴퓨터 디스플레이 모니터(920), 키보드(930), 및 컴퓨터 마우스(934)를 포함할 수 있다. 외부 구성요소들(900A,B)은 또한, 터치 스크린들, 가상 키보드들, 터치 패드들, 포인팅 디바이스들, 및 다른 인간 인터페이스 디바이스들을 포함할 수 있다. 내부 구성요소들(800A,B)의 세트들 각각은 또한, 컴퓨터 디스플레이 모니터(920), 키보드(930), 및 컴퓨터 마우스(934)에 인터페이싱하기 위한 디바이스 드라이버들(840)을 포함한다. 디바이스 드라이버들(840), R/W 드라이브 또는 인터페이스(832), 및 네트워크 어댑터 또는 인터페이스(836)는 하드웨어 및 소프트웨어(저장 디바이스(830) 및/또는 ROM(824)에 저장됨)를 포함한다.
일부 실시예들은, 임의의 가능한 기술적 세부 통합 수준에서 시스템, 방법, 및/또는 컴퓨터 판독가능 매체와 관련될 수 있다. 컴퓨터 판독가능 매체는, 프로세서로 하여금 동작들을 수행하게 하기 위한 컴퓨터 판독가능 프로그램 명령어들을 갖는 컴퓨터 판독가능 비-일시적 저장 매체(또는 매체들)를 포함할 수 있다.
컴퓨터 판독가능 저장 매체는, 명령어 실행 디바이스에 의한 사용을 위한 명령어를 보유하고 저장할 수 있는 유형적 디바이스일 수 있다. 컴퓨터 판독가능 저장 매체는, 예컨대, 전자 저장 디바이스, 자기 저장 디바이스, 광학 저장 디바이스, 전자기 저장 디바이스, 반도체 저장 디바이스, 또는 전술한 것들의 임의의 적합한 조합일 수 있지만, 이에 제한되지 않는다. 컴퓨터 판독가능 저장 매체의 더 구체적인 예들에 대한 비-포괄적 목록은 다음의 것들: 휴대형 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 소거가능한 프로그래밍가능 판독 전용 메모리(EPROM 또는 플래시 메모리), 정적 랜덤 액세스 메모리(SRAM), 휴대용 콤팩트 디스크 판독 전용 메모리(CD-ROM), 디지털 다기능 디스크(DVD), 메모리 스틱, 플로피 디스크, 기계적으로 인코딩된 디바이스, 이를테면, 펀치-카드들 또는 명령어들이 기록된 홈 내의 융기 구조, 및 전술한 것들의 임의의 적합한 조합을 포함한다. 본원에서 사용되는 바와 같이, 컴퓨터 판독가능 저장 매체는, 무선 파들 또는 다른 자유 전파 전자기 파들, 도파관 또는 다른 송신 매체를 통해 전파되는 전자기 파들(예컨대, 광섬유 케이블을 통과하는 광 펄스들), 또는 와이어를 통해 송신되는 전기 신호들과 같은 일시적인 신호 그 자체인 것으로 해석되어서는 안 된다.
본원에서 설명되는 컴퓨터 판독가능 프로그램 명령어들은, 네트워크, 예컨대, 인터넷, 근거리 네트워크, 광역 네트워크, 및/또는 무선 네트워크를 통해 컴퓨터 판독가능 저장 매체로부터 개개의 컴퓨팅/처리 디바이스들에 또는 외부 컴퓨터 또는 외부 저장 디바이스에 다운로드될 수 있다. 네트워크는, 구리 송신 케이블들, 광 송신 섬유들, 무선 송신, 라우터들, 방화벽들, 스위치들, 게이트웨이 컴퓨터들, 및/또는 에지 서버들을 포함할 수 있다. 각각의 컴퓨팅/처리 디바이스의 네트워크 어댑터 카드 또는 네트워크 인터페이스는, 네트워크로부터 컴퓨터 판독가능 프로그램 명령어를 수신하고 개개의 컴퓨팅/처리 디바이스 내의 컴퓨터 판독가능 저장 매체에 저장하기 위해 컴퓨터 판독가능 프로그램 명령어들을 전달한다.
동작들을 수행하기 위한 컴퓨터 판독가능 프로그램 코드/명령어들은, 어셈블러 명령어들, 명령어 세트 아키텍처(ISA) 명령어들, 기계 명령어들, 기계 종속 명령어들, 마이크로코드, 펌웨어 명령어들, 상태 설정 데이터, 집적 회로를 위한 구성 데이터, 또는 Smalltalk, C++ 등과 같은 객체 지향 프로그래밍 언어를 포함하는 하나 이상의 프로그래밍 언어와, "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어들과 같은 절차적 프로그래밍 언어들의 임의의 조합으로 작성된 소스 코드 또는 객체 코드일 수 있다. 컴퓨터 판독가능 프로그램 명령어들은, 전체적으로 사용자의 컴퓨터 상에서, 부분적으로 사용자의 컴퓨터 상에서, 독립형 소프트웨어 패키지로서, 부분적으로는 사용자의 컴퓨터 상에서 그리고 부분적으로는 원격 컴퓨터 상에서, 또는 전체적으로 원격 컴퓨터 또는 서버 상에서 실행될 수 있다. 후자의 시나리오에서, 원격 컴퓨터는, 근거리 네트워크(LAN) 또는 광역 네트워크(WAN)를 포함하는 임의의 유형의 네트워크를 통해 사용자의 컴퓨터에 연결될 수 있거나, 또는 외부 컴퓨터에 대해 (예컨대, 인터넷 서비스 제공자를 사용하여 인터넷을 통해) 연결이 이루어질 수 있다. 일부 실시예들에서, 예컨대, 프로그래밍가능 논리 회로, 필드 프로그래밍가능 게이트 어레이(FPGA)들, 또는 프로그래밍가능 논리 어레이들(PLA)을 포함하는 전자 회로는, 양상들 또는 동작들을 수행하기 위해, 컴퓨터 판독가능 프로그램 명령어들의 상태 정보를 활용하여 전자 회로를 개인화함으로써 컴퓨터 판독가능 프로그램 명령어들을 실행할 수 있다.
이러한 컴퓨터 판독가능 프로그램 명령어들은, 기계를 생성하기 위한 범용 컴퓨터, 특수 목적 컴퓨터, 또는 다른 프로그래밍가능 데이터 처리 장치의 프로세서에 제공될 수 있어서, 컴퓨터 또는 다른 프로그래밍가능 데이터 처리 장치의 프로세서를 통해 실행되는 명령어들은, 흐름도 및/또는 블록도의 블록 또는 블록들에서 특정되는 기능들/동작들을 구현하기 위한 수단을 생성한다. 이러한 컴퓨터 판독가능 프로그램 명령어들은 또한, 컴퓨터, 프로그래밍가능 데이터 처리 장치, 및/또는 다른 디바이스들이 특정 방식으로 기능하도록 지시할 수 있는 컴퓨터 판독가능 저장 매체에 저장될 수 있어서, 명령어들이 저장된 컴퓨터 판독가능 저장 매체는, 흐름도 및/또는 블록도의 블록 또는 블록들에서 특정되는 기능/동작의 양상들을 구현하는 명령어들을 포함하는 제조 물품을 포함한다.
컴퓨터 판독가능 프로그램 명령어들은 또한, 컴퓨터, 다른 프로그래밍가능 데이터 처리 장치, 또는 다른 디바이스 상으로 로딩되어, 컴퓨터에 의해 구현되는 프로세스를 생성하도록 일련의 동작 단계들이 컴퓨터, 다른 프로그래밍가능 장치, 또는 다른 디바이스 상에서 수행되게 할 수 있어서, 컴퓨터, 다른 프로그래밍가능 장치, 또는 다른 디바이스 상에서 실행되는 명령어들은 흐름도 및/또는 블록도의 블록 또는 블록들에서 특정되는 기능들/동작들을 구현한다.
도면들의 흐름도 및 블록도들은, 다양한 실시예들에 따른 시스템들, 방법들, 및 컴퓨터 판독가능 매체의 가능한 구현들의 아키텍처, 기능성, 및 동작을 예시한다. 이와 관련하여, 흐름도 또는 블록도들의 각각의 블록은, 특정된 논리적 기능(들)을 구현하기 위한 하나 이상의 실행가능 명령어를 포함하는, 모듈, 세그먼트, 또는 명령어들의 일부분을 표현할 수 있다. 방법, 컴퓨터 시스템, 및 컴퓨터 판독가능 매체는 도면들에 도시된 것들에 비해 부가적인 블록들, 더 적은 블록들, 상이한 블록들, 또는 상이하게 배열된 블록들을 포함할 수 있다. 일부 대안적인 구현들에서, 블록들에서 언급된 기능들은 도면들에서 언급된 순서와 다르게 발생할 수 있다. 예컨대, 연속적으로 도시된 2개의 블록은 사실상, 동시에 또는 실질적으로 동시에 실행될 수 있거나, 블록들은 수반되는 기능성에 따라 때로는 역순으로 실행될 수 있다. 또한, 블록도들 및/또는 흐름도 예시의 각각의 블록, 및 블록도들 및/또는 흐름도 예시의 블록들의 조합들은, 특정된 기능들 또는 동작들을 수행하는 특수 목적 하드웨어 기반 시스템들에 의해 구현되거나 특수 목적 하드웨어와 컴퓨터 명령어들의 조합들로 실행될 수 있다는 것이 유의될 것이다.
본원에 설명된 시스템들 및/또는 방법들은 상이한 형태들의 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합들로 구현될 수 있다는 것이 명백할 것이다. 이러한 시스템들 및/또는 방법들을 구현하는 데 사용되는 실제의 특수화된 제어 하드웨어 또는 소프트웨어 코드는 구현들을 제한하는 것이 아니다. 그에 따라, 시스템들 및/또는 방법들의 동작 및 거동은 본원에서 특정 소프트웨어 코드를 참조함이 없이 설명되었는데, 소프트웨어 및 하드웨어는 본원에서의 설명에 기반하여 시스템들 및/또는 방법들을 구현하도록 설계될 수 있다는 것이 이해된다.
본원에서 사용된 어떠한 요소, 동작, 또는 명령어도 명시적으로 그러한 것으로 설명되지 않는 한 핵심적이거나 필수적인 것으로 해석되어서는 안 된다. 또한, 본원에서 사용되는 바와 같이, 단수형들은 하나 이상의 항목을 포함하도록 의도되며, "하나 이상"과 상효교환가능하게 사용될 수 있다. 또한, 본원에서 사용되는 바와 같이, "세트"라는 용어는 하나 이상의 항목(예컨대, 관련 항목들, 비-관련 항목들, 관련 및 비-관련 항목들의 조합 등)을 포함하도록 의도되고, "하나 이상"과 상호교환가능하게 사용될 수 있다. 단 하나의 항목이 의도되는 경우, "하나"라는 용어 또는 유사한 언어가 사용된다. 또한, 본원에서 사용되는 바와 같이, "갖다", "갖는다", "가짐" 등은 제한을 두지 않는 용어들인 것으로 의도된다. 추가로, "~에 기반하여"라는 어구는 명시적으로 달리 언급되지 않는 한 "~에 적어도 부분적으로 기반하여"를 의미하도록 의도된다.
다양한 양상들 및 실시예들의 설명들이 예시의 목적들을 위해 제시되었지만, 포괄적이거나 개시된 실시예들로 제한되도록 의도되지 않는다. 특징들의 조합들이 청구항들에서 언급되고/거나 본 명세서에서 개시된다 하더라도, 이러한 조합들은 가능한 구현들의 개시내용을 제한하도록 의도되지 않는다. 사실, 이러한 특징들 중 다수는 청구항들에서 구체적으로 언급되지 않은 그리고/또는 본 명세서에서 구체적으로 개시되지 않은 방식들로 조합될 수 있다. 아래에 열거된 각각의 종속항은 하나의 청구항에만 직접 의존할 수 있지만, 가능한 구현들의 개시내용은 청구항 세트의 모든 각각의 다른 청구항과 조합된 각각의 종속항을 포함한다. 설명된 실시예들의 범위를 벗어나지 않으면서 많은 수정들 및 변형들이 관련 기술분야의 통상의 기술자들에게 명백할 것이다. 본원에서 사용된 용어는, 실시예들의 원리들, 시장에서 발견된 기술들에 대한 실제 적용 또는 기술적 개선을 가장 잘 설명하거나, 관련 기술분야의 다른 통상의 기술자들이 본원에 개시된 실시예들을 이해할 수 있게 하기 위해 선택되었다.

Claims (20)

  1. 누락된 대명사를 복원하는 방법으로서,
    컴퓨터에 의해, 하나 이상의 입력 단어에 대응하는 데이터를 수신하는 단계;
    상기 컴퓨터에 의해, 수신된 입력 단어 데이터에 대한 맥락 상의 표현들(contextual representations)을 결정하는 단계;
    상기 컴퓨터에 의해, 상기 맥락 상의 표현들과 연관된 확률 값에 기반하여 상기 누락된 대명사를 식별하는 단계; 및
    상기 컴퓨터에 의해, 상기 입력 단어 중 어느 입력 단어를 상기 누락된 대명사가 참조하는지에 대응하는, 상기 수신된 입력 단어들 중 하나 이상과 연관된 범위(span)를 결정하는 단계를 포함하고,
    상기 맥락 상의 표현들은 트랜스포머들을 통한 양방향 인코더 표현(Bidirectional Encoder Representation from Transformers)(BERT) 인코더에 의해 결정되고,
    상기 확률 값은 에 의해 결정되고, i-1은 제1 입력 단어에 대응되고, i는 제2 입력 단어에 대응되고, h는 상기 맥락 상의 표현들에 대응되고, Wrec와 brec는 선형 분류기에 대한 파라미터들에 대응하는,
    방법.
  2. 제1항에 있어서,
    상기 컴퓨터에 의해, 상기 누락된 대명사가 누락되었다는 것을 검출하는 단계를 더 포함하는, 방법.
  3. 제2항에 있어서,
    상기 누락된 대명사는 상기 맥락 상의 표현들과 연관된 제2 확률 값에 기반한 이진 분류를 사용하여 검출되는, 방법.
  4. 제2항에 있어서,
    상기 누락된 대명사를 검출하는 것, 상기 누락된 대명사를 식별하는 것, 및 상기 범위를 결정하는 것에 기반하여 손실 값을 계산하는 단계를 더 포함하는, 방법.
  5. 제1항에 있어서,
    상기 컴퓨터에 의해, 상기 수신된 입력 단어 데이터에 부류 토큰(class token)을 첨부하는 단계를 더 포함하며, 첨부된 부류 토큰은 상기 수신된 입력 단어들과 연관된 시작 위치에 대응하는, 방법.
  6. 제5항에 있어서,
    상기 첨부된 부류 토큰에 영의 범위가 배정되는, 방법.
  7. 제1항에 있어서,
    상기 컴퓨터에 의해, 상기 수신된 입력 단어들에 대응하는 데이터가 누락된 대명사를 포함한다는 것을 결정하는 단계; 및
    상기 컴퓨터에 의해, 상기 누락된 대명사와 연관된 유형을 결정하는 단계
    를 더 포함하는, 방법.
  8. 삭제
  9. 제1항에 있어서,
    상기 범위는 상기 하나 이상의 수신된 입력 단어의 연접(concatenation), 및 상기 범위와 연관된 시작 위치 및 종료 위치와 연관된 자기-주의(self-attention) 결정에 기반하여 결정되는, 방법.
  10. 제1항에 있어서,
    상기 맥락 상의 표현들과 연관된 확률 값에 기반하여 상기 누락된 대명사를 식별하는 단계는, 상기 확률 값에 기반하여, 상기 누락된 대명사가 상기 수신된 입력 단어들 중 2개 사이에서 발생할 것임을 식별하는 단계를 포함하는, 방법.
  11. 누락된 대명사를 복원하기 위한 컴퓨터 시스템으로서,
    컴퓨터 프로그램 코드를 저장하도록 구성되는 하나 이상의 컴퓨터 판독가능 비-일시적 저장 매체; 및
    제1항 내지 제7항 및 제9항 내지 제10항 중 어느 한 항에 따른 방법을 수행하기 위해 상기 컴퓨터 프로그램 코드에 액세스하고 상기 컴퓨터 프로그램 코드에 의해 지시되는 바와 같이 동작하도록 구성되는 하나 이상의 컴퓨터 프로세서
    를 포함하는, 컴퓨터 시스템.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 누락된 대명사를 복원하기 위한 컴퓨터 프로그램이 저장된 비-일시적인 컴퓨터 판독가능 매체로서,
    상기 컴퓨터 프로그램은 하나 이상의 컴퓨터 프로세서로 하여금 제1항 내지 제7항 및 제9항 내지 제10항 중 어느 한 항에 따른 방법을 수행하게 하도록 구성되는, 비-일시적인 컴퓨터 판독가능 매체.
KR1020217036940A 2019-12-05 2020-09-04 영형 대명사 복원 및 해소 KR102654190B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/704,241 US11481548B2 (en) 2019-12-05 2019-12-05 Zero pronoun recovery and resolution
US16/704,241 2019-12-05
PCT/US2020/049308 WO2021112936A1 (en) 2019-12-05 2020-09-04 Zero pronoun recovery and resolution

Publications (2)

Publication Number Publication Date
KR20210144901A KR20210144901A (ko) 2021-11-30
KR102654190B1 true KR102654190B1 (ko) 2024-04-04

Family

ID=76209241

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217036940A KR102654190B1 (ko) 2019-12-05 2020-09-04 영형 대명사 복원 및 해소

Country Status (5)

Country Link
US (2) US11481548B2 (ko)
EP (1) EP3948638A4 (ko)
KR (1) KR102654190B1 (ko)
CN (1) CN114175040A (ko)
WO (1) WO2021112936A1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070156393A1 (en) 2001-07-31 2007-07-05 Invention Machine Corporation Semantic processor for recognition of whole-part relations in natural language documents
US20080319735A1 (en) 2007-06-22 2008-12-25 International Business Machines Corporation Systems and methods for automatic semantic role labeling of high morphological text for natural language processing applications
US20130344194A1 (en) 2010-10-13 2013-12-26 C. Fordham von Reyn Composite flour and protein-energy foods containing the same

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8903707B2 (en) 2012-01-12 2014-12-02 International Business Machines Corporation Predicting pronouns of dropped pronoun style languages for natural language translation
US10878808B1 (en) * 2018-01-09 2020-12-29 Amazon Technologies, Inc. Speech processing dialog management
US10868785B2 (en) * 2019-04-29 2020-12-15 Microsoft Technology Licensing, Llc Purpose detection in communications using machine learning

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070156393A1 (en) 2001-07-31 2007-07-05 Invention Machine Corporation Semantic processor for recognition of whole-part relations in natural language documents
US20080319735A1 (en) 2007-06-22 2008-12-25 International Business Machines Corporation Systems and methods for automatic semantic role labeling of high morphological text for natural language processing applications
US20130344194A1 (en) 2010-10-13 2013-12-26 C. Fordham von Reyn Composite flour and protein-energy foods containing the same

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Longyue Wang 외 3명, One Model to Learn Both: Zero Pronoun Prediction and Translation, Proceedings of the 2019 Conference on EMNLP-IJCNLP), 2019.09., pp.921-930. 1부.*
Qingyu Yin 외 4명, Zero Pronoun Resolution with Attention-based Neural Network, Proceedings of the 27th International Conference on Computational Linguistics, 2018., pp.13-23. 1부.*

Also Published As

Publication number Publication date
US11481548B2 (en) 2022-10-25
CN114175040A (zh) 2022-03-11
WO2021112936A1 (en) 2021-06-10
US20220366136A1 (en) 2022-11-17
EP3948638A1 (en) 2022-02-09
KR20210144901A (ko) 2021-11-30
EP3948638A4 (en) 2022-05-18
US11822884B2 (en) 2023-11-21
US20210174018A1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
US11093216B2 (en) Automatic discovery of microservices from monolithic applications
US11269965B2 (en) Extractive query-focused multi-document summarization
US10169428B1 (en) Mining procedure dialogs from source content
US11243955B2 (en) Latent token representations for passage and answer scoring in question answering systems
US20180062953A1 (en) Identifying resources for purging in a cloud based on inter-dependency graph analysis
US20210012237A1 (en) De-identifying machine learning models trained on sensitive data
US12032916B2 (en) Structure self-aware model for discourse parsing on multi-party dialogues
US20200302350A1 (en) Natural language processing based business domain modeling
US11144313B2 (en) Merging changes from upstream code to a branch
US11586677B2 (en) Resolving user expression having dependent intents
US20240211689A1 (en) Extractive method for speaker identification in texts with self-training
US11726778B2 (en) Translating clusters of a monolith application to microservices
US10380257B2 (en) Generating answers from concept-based representation of a topic oriented pipeline
WO2019180515A1 (en) Query recognition resiliency determination in virtual agent systems
US12008352B2 (en) Transformation of a loop within computer code to minimize iterations
KR102654190B1 (ko) 영형 대명사 복원 및 해소
US20220284193A1 (en) Robust dialogue utterance rewriting as sequence tagging
US20220200935A1 (en) Generating a chatbot utilizing a data source

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