KR20240033029A - 종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링 - Google Patents

종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링 Download PDF

Info

Publication number
KR20240033029A
KR20240033029A KR1020247004845A KR20247004845A KR20240033029A KR 20240033029 A KR20240033029 A KR 20240033029A KR 1020247004845 A KR1020247004845 A KR 1020247004845A KR 20247004845 A KR20247004845 A KR 20247004845A KR 20240033029 A KR20240033029 A KR 20240033029A
Authority
KR
South Korea
Prior art keywords
machine learning
learning model
training
output
data
Prior art date
Application number
KR1020247004845A
Other languages
English (en)
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 KR20240033029A publication Critical patent/KR20240033029A/ko

Links

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
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/0895Weakly supervised learning, e.g. semi-supervised or self-supervised learning
    • 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/045Combinations of networks
    • 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/045Combinations of networks
    • G06N3/0455Auto-encoder networks; Encoder-decoder networks
    • 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/0464Convolutional networks [CNN, ConvNet]
    • 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/0495Quantised networks; Sparse networks; Compressed networks
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent
    • 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
    • G06N3/096Transfer learning
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Image Analysis (AREA)

Abstract

대조 및 마스크 모델링 손실 항의 조합을 활용하는 개선된 종단간 자기-지도식 사전 트레이닝 프레임워크가 제공된다. 특히, 본 개시는 대조 학습과 마스크 모델링을 결합하는 프레임워크를 제공하는데, 여기서 전자는 입력 데이터(예를 들어, 연속 음성 신호와 같은 연속 신호)를 유한한 식별 토큰 세트로 분리하도록 모델을 트레이닝하고, 후자는 분리된 토큰을 소비하는 마스킹된 예측 작업을 해결하여 상황에 맞는 표현을 학습하도록 모델을 트레이닝한다. 반복적인 재클러스터링 및 재트레이닝 프로세스에 의존하는 특정 기존 마스크된 모델링 기반 사전 트레이닝 프레임워크 또는 두 개의 개별적으로 트레이닝된 모듈을 연결하는 기타 기존 프레임워크와 대조적으로, 제안된 프레임워크는 두 가지 자기-지도식 작업(대조 작업 및 마스크된 모델링)을 동시에 해결함으로써 모델을 종단간 방식으로 최적화할 수 있다.

Description

종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링
본 개시는 일반적으로 기계 학습에 관한 것이다. 보다 구체적으로, 본 개시는 대조 및 마스크(masked) 모델링 손실 항의 조합을 활용하는 개선된 종단간(end-to-end) 자기-지도식 사전 트레이닝 프레임워크에 관한 것이다.
주석이 없는 대규모 데이터를 활용하여 다양한 작업에 대한 기계 학습 모델의 성능을 향상시키는 기술 개발은 오랜 연구 과제였다. 여기에는 현재까지, 이러한 준지도식(semi-supervised) 작업을 처리하기 위해 라벨이 지정되지 않은 데이터를 활용하는 2가지 주요 접근 방식이 있다.
작업의 첫 번째 라인은 의사(pseudo) 라벨링으로도 알려진 셀프 트레이닝인데, 여기서 시스템은 초기에 이용 가능한 라벨링된 데이터를 사용하여 교사 모델을 트레이닝하는 것으로 시작한다. 다음으로, 교사 모델은 라벨이 지정되지 않은 데이터를 라벨링하는데 사용된다. 그런 다음 결합된 라벨링된 데이터와 의사 라벨링된 데이터는 학생 모델을 트레이닝하는데 사용된다. 의사 라벨링 프로세스는 교사 모델의 품질을 향상시키기 위해 여러 번 반복될 수 있다. 셀프 트레이닝은 다양한 작업과 영역에 대해 실질적으로 유용하고 광범위하게 연구된 기술이었다.
라벨이 지정되지 않은 데이터를 활용하는 두 번째 방향은 비지도식 사전 트레이닝 또는 자기-지도식(self-supervised) 사전 트레이닝이다. 비지도식 사전 트레이닝에서, 모델은 먼저 라벨이 지정되지 않은 데이터(따라서 "비지도식"이라고 함)만 사용하도록 설계된 프록시 작업을 완료하도록 트레이닝된다. 이러한 프록시 작업은 일반적으로 지도 데이터에 대해 트레이닝되기 전에 좋은 시작점에서 모델의 파라미터를 초기화할 수 있다고 여겨진다. 모델이 특정 다운스트림 작업에 대해 미세 조정될 때 모델이 잘 수행될 수 있도록 하는 프록시 작업을 개발하기 위해 최근 상당한 연구 노력이 이루어졌다. 여기에는 또한 셀프 트레이닝과 비지도식 사전 트레이닝으로 인한 이득이 특정 다운스트림 작업에 추가된다는 것을 보여주는 연구도 있었다.
본 발명의 실시예의 양태 및 장점은 다음 설명에서 부분적으로 설명되거나, 설명으로부터 학습될 수 있거나, 실시예의 실시를 통해 학습될 수 있다.
본 개시에 설명된 하나의 예는 종단간 자기-지도식 사전 트레이닝을 수행하기 위한 컴퓨터 구현 방법에 관한 것이다. 방법은 하나 이상의 컴퓨팅 디바이스를 포함하는 컴퓨팅 시스템에 의해, 일련의 입력 데이터를 획득하는 단계를 포함한다. 방법은 컴퓨팅 시스템에 의해, 기계 학습 모델의 제1 인코더부로 일련의 입력 데이터를 처리하여 복수의 인코딩된 특징을 생성하는 단계를 포함한다. 방법은 컴퓨팅 시스템에 의해, 복수의 인코딩된 특징을 양자화하여 복수의 타겟 양자화된 벡터 및 그 복수의 타겟 양자화된 벡터와 연관된 복수의 분리된 식별자를 생성하는 단계를 포함한다. 방법은 컴퓨팅 시스템에 의해, 복수의 인코딩된 특징 중 하나 이상을 마스킹하는 단계를 포함한다. 방법은 마스킹 후에, 컴퓨팅 시스템에 의해, 기계 학습 모델의 제2 인코더부로 복수의 인코딩된 특징을 처리하여 제1 컨텍스트 벡터 세트를 생성하는 단계를 포함한다. 방법은 컴퓨팅 시스템에 의해, 기계 학습 모델의 제3 인코더부로 제1 컨텍스트 벡터 세트를 처리하여 제2 컨텍스트 벡터 세트를 생성하는 단계를 포함한다. 방법은 컴퓨팅 시스템에 의해, 대조 손실 항 및 마스크 모델링 항을 포함하는 손실 함수를 평가하는 단계 - 대조 손실 항은 제1 컨텍스트 벡터 세트와 복수의 타겟 양자화된 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 그리고 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트와 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가함 - 를 포함한다. 방법은 컴퓨팅 시스템에 의해, 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 단계를 포함한다.
하나 이상의 마스킹된 위치 각각에 대해, 대조 사전 트레이닝 출력은 후보 벡터 세트로부터의 예측(predicted) 선택을 포함할 수 있고, 예측 선택은 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트 중 하나에 기초하여 생성된다. 후보 벡터 세트는 실제 목표 양자화(quantized) 벡터와 하나 이상의 선택요소(distractor) 벡터를 포함한다. 대조 손실 항은 예측 선택이 실제 목표 양자화 벡터에 해당하는지 여부를 평가한다.
하나 이상의 마스킹된 위치 각각에 대해, 마스크 모델링 사전 트레이닝 출력은 마스킹된 위치에 대응하는 컨텍스트 벡터의 제2 세트 중 하나에 기초하여 생성된 예측 식별자를 포함할 수 있고, 마스크 모델링 손실 항은 예측 식별자가 마스킹된 위치에 대응하는 복수의 분리된 식별자 중 실제 분리된 식별자에 해당하는지 여부를 평가할 수 있다.
기계 학습 모델의 제2 인코더부 및/또는 제3 인코더부는 하나 이상의 컨포머 블록을 포함할 수 있다. 유사하게, 인코더부는 하나 이상의 컨포머 블록을 포함할 수 있다.
컴퓨팅 시스템에 의해, 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 단계는 컴퓨팅 시스템에 의해, 마스크 모델링 손실 항에 기초하여 기계 학습 모델의 제3 인코더부, 제2 인코더부, 및 제1 인코더부의 하나 이상의 파라미터의 하나 이상의 값을 수정하는 단계; 및 컴퓨팅 시스템에 의해, 마스크 모델링 손실 항과 대조 손실 항의 조합에 기초하여 기계 학습 모델의 제2 인코더부과 제1 인코더부의 하나 이상의 파라미터의 하나 이상의 값을 수정하는 단계를 포함할 수 있다.
방법은 컴퓨팅 시스템에 의해, 손실 함수에 기초하여 양자화를 수행하는데 사용된 코드북을 수정하는 단계를 포함할 수 있다.
일련의 입력 데이터는 오디오 데이터 또는 그 오디오 데이터의 스펙트럼 표현을 포함할 수 있다. 예를 들어, 오디오 데이터는 음성 데이터를 포함할 수 있다. 예를 들어, 기계 학습 모델은 음성 인식 및/또는 음성 번역과 같은 음성 관련 작업을 수행하기 위한 모델일 수 있다. 일련의 입력 데이터는 추가로 또는 대안적으로 텍스트 데이터, 센서 데이터 및/또는 이미지 데이터를 포함할 수 있다.
본 개시에 설명된 또 다른 예는 컴퓨팅 시스템의 하나 이상의 프로세서에 의해 실행될 때 컴퓨팅 시스템으로 하여금 동작들을 수행하게 하는 명령을 집합적으로 저장하는 하나 이상의 비-일시적 컴퓨터 판독 가능 매체에 관한 것이다. 예를 들어, 동작들은 본 명세서에 설명된 방법 중 임의의 것을 수행하는 동작들을 포함할 수 있다. 예를 들어, 동작들은 작업별(task-specific) 트레이닝 입력을 획득하는 동작을 포함할 수 있다. 동작들은 기계 학습 모델로 작업별 트레이닝 입력을 처리하여 작업별 트레이닝 출력을 생성하는 동작을 포함하며, 여기서 기계 학습 모델의 적어도 인코더부는 대조 손실 항과 마스크 모델링 항을 포함하는 손실 함수를 사용하여 트레이닝되었으며, 상기 대조 손실 항은 제1 컨텍스트 벡터 세트 및 복수의 목표 양자화 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 상기 제1 컨텍스트 벡터 세트는 기계 학습 모델의 인코더부의 입력 또는 중간 출력을 마스킹한 후 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 목표 양자화 벡터는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성되며, 그리고 여기서 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트 및 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가하고, 상기 제2 컨텍스트 벡터 세트는 제1 컨텍스트 벡터 세트로부터 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 분리된 식별자는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성된다. 동작들은 작업별 트레이닝 출력에 기초하여 작업별 손실 함수를 평가하는 동작을 포함한다. 동작들은 작업별 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 동작을 포함한다.
본 개시의 또 다른 예시적인 양태는 컴퓨팅 시스템에 관한 것이다. 컴퓨팅 시스템은 하나 이상의 프로세서와 컴퓨팅 시스템의 하나 이상의 프로세서에 의해 실행될 때 컴퓨팅 시스템으로 하여금 동작들을 행하게 하는 명령을 집합적으로 저장하는 하나 이상의 비-일시적 컴퓨터 판독 가능 매체를 포함한다. 동작들은 본 명세서에 설명된 방법들 중 하나가 포함될 수 있다. 예를 들어, 동작들은 작업별 추론 입력을 획득하는 동작을 포함할 수 있다. 동작들은 기계 학습 모델로 작업별 추론 입력을 처리하여 작업별 추론 출력을 생성하는 동작을 포함할 수 있으며, 여기서 기계 학습 모델의 적어도 인코더부는 대조 손실 항과 마스크 모델링 항을 포함하는 손실 함수를 사용하여 트레이닝되었으며, 상기 대조 손실 항은 제1 컨텍스트 벡터 세트 및 복수의 목표 양자화 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 상기 제1 컨텍스트 벡터 세트는 기계 학습 모델의 인코더부의 입력 또는 중간 출력을 마스킹한 후 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 목표 양자화 벡터는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성되며, 그리고 여기서 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트 및 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가하고, 상기 제2 컨텍스트 벡터 세트는 제1 컨텍스트 벡터 세트로부터 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 분리된 식별자는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성된다. 동작들은 출력으로서 작업별 추론 출력을 제공하는 동작을 포함한다.
본 개시에 설명된 다른 예는 다양한 시스템, 장치, 비-일시적 컴퓨터 판독 가능 매체, 사용자 인터페이스 및 전자 디바이스에 관한 것이다.
본 발명의 다양한 실시예의 이들 및 기타 특징, 측면 및 장점은 다음의 설명 및 첨부된 청구범위를 참조하여 더 잘 이해될 것이다. 본 명세서에 포함되어 일부를 구성하는 첨부 도면은 본 발명의 예시적인 실시예를 예시하고, 설명과 함께 관련 원리를 설명하는 역할을 한다.
당업자를 대상으로 한 실시예의 상세한 논의는 첨부된 도면을 참조하여 명세서에 기재되어 있다.
도 1은 본 개시에 기술된 예에 따른 예시적인 사전 트레이닝 프레임워크의 블록도를 도시한다.
도 2는 본 개시에 기술된 예에 따른 예시적인 트레이닝 프레임워크의 블록도를 도시한다.
도 3은 본 개시에 기술된 예에 따른 예시적인 추론 프레임워크의 블록도를 도시한다.
도 4a는 본 개시에 기술된 예에 따른 예시적인 컴퓨팅 시스템의 블록도를 도시한다.
도 4b는 본 개시에 기술된 예에 따른 예시적인 컴퓨팅 디바이스의 블록도를 도시한다.
도 4c는 본 개시에 기술된 예에 따른 예시적인 컴퓨팅 디바이스의 블록도를 도시한다.
복수의 도면에 걸쳐 반복되는 참조 번호는 다양한 구현에서 동일한 특징을 식별하기 위한 것이다.
개요
일반적으로, 본 개시는 대조(Contrastive) 및 마스크(masked) 모델링 손실 항의 조합을 활용하는 개선된 종단간 자기-지도식 사전 트레이닝 프레임워크에 관한 것이다. 특히, 본 개시는 대조 학습과 마스크 모델링을 결합하는 프레임워크를 제공하는데, 여기서 전자는 입력 데이터(예를 들어, 연속 음성 신호와 같은 연속 신호)를 유한한 식별 토큰 세트로 분리(discretize)하도록 모델을 트레이닝하고, 후자는 분리된 토큰을 소비하는 마스킹된 예측 작업을 해결하여 상황에 맞는 표현을 학습하도록 모델을 트레이닝한다. 반복적인 재-클러스터링(재군집화) 및 재-트레이닝 프로세스에 의존하는 특정 기존 마스크 모델링-기반 사전 트레이닝 프레임워크 또는 별도로 트레이닝된 두 개의 모듈을 연결하는 다른 기존 프레임워크와 대조적으로, 제안된 프레임워크는 두 가지 자기-지도식 작업(대조 작업 및 마스크 모델링)을 동시에 해결함으로써 모델을 종단간 방식으로 최적화할 수 있다.
보다 구체적으로, 본 개시의 예시적 양태는 새로운 사전 트레이닝 프레임워크를 제안함으로써 비지도식 사전 트레이닝을 수행하는 능력을 향상시키는데 초점을 맞춘다. 제안된 프레임워크의 예시 구현에서는 대조 사전 트레이닝 작업을 사용하여 구별되고 분리된 음성 단위의 유한 세트 목록을 획득한 다음 이를 마스킹된 예측 작업의 대상으로 사용한다. 마스킹된 예측 작업에서는 모델이 대조 작업을 먼저 해결함으로써 학습할 토큰을 소비해야 하지만, 본 개시는 실제로 두 가지 목표가 동시에 최적화될 수 있음을 입증한다.
본 명세서에 설명된 사전 트레이닝 프레임워크는 다양한 작업, 도메인 및/또는 데이터 모달리티에 적용될 수 있다. 구체적인 예시 작업 중 하나는 자동 음성 인식이다. 다른 예시 작업은 음성 번역이다. 따라서, 입력 데이터에는 음성 데이터(예를 들어, 원시 형식으로 표시되거나 분광기를 사용하여 표시됨)와 같은 오디오 데이터가 포함될 수 있다. 다른 예에서, 입력 데이터에는 텍스트 데이터(예를 들어, 자연어 데이터), 센서 데이터, 이미지 데이터, 생물학적 또는 화학적 데이터, 및/또는 다른 형태의 데이터를 포함하는 다른 형태의 데이터가 포함될 수 있다. 일단 사전 트레이니오디면, 모델은 다양한 작업을 수행하도록 미세 조정될 수 있다.
본 개시의 시스템 및 방법은 다수의 기술적 효과 및 이점을 제공한다. 기술적 진보의 일 예로서, 본 개시는 종단간 자기-지도식 표현 학습을 위해 대조 손실 및 마스킹된 예측 손실을 동시에 직접 최적화하는 사전 트레이닝 프레임워크를 제공한다. 사전 트레이닝 프레임워크는 다양한 작업에서 최고의 성능을 발휘할 수 있다. 예를 들어, 프레임워크는 잘 벤치마킹된 LibriSpeech 작업에서 최첨단 성능을 제공하고 기존 최첨단 접근 방식에 비해 실제 인식 작업(음성 검색)에서 성능을 크게 향상시키는 것으로 나타났다. 따라서, 본 명세서에 설명된 사전 트레이닝 프레임워크는 다수의 다양한 작업에 대한 개선된 모델 성능을 가능하게 할 수 있으며, 이는 컴퓨팅 시스템 자체의 개선에 해당한다.
또 다른 예시적인 기술적 효과로서, 본 명세서에 설명된 개선된 사전 트레이닝 프레임워크는 다양한 다운스트림 작업에 대해 더 빠르고 쉽게 미세 조정될 수 있는 더 나은 사전 트레이닝 모델로 이어질 수 있다. 즉, 개선된 사전 트레이닝된 모델을 주어진 작업을 시작할 잠재적인 체크포인트로서 제공함으로써, 비슷한 성능을 달성하기 위해 수행해야 하는 미세 조정이 줄어든다. 이로 인해 프로세서 사용량, 메모리 사용량, 네트워크 대역폭 등과 같은 컴퓨팅 자원 보존에 해당하는 미세 조정 트레이닝을 수행해야 하는 횟수가 줄어들 수 있다. 마찬가지로, 개선된 사전 트레이닝 모델을 사용하면 제한된 양의 미세 조정 트레이닝 데이터만 사용할 수 있는 작업에 대해 모델을 미세 조정할 수 있다. 따라서 제안된 프레임워크를 통해 이전에는 불가능했던 다양한 도메인이나 작업에 기계 학습 기술을 적용할 수 있다.
이제 도면을 참조하여, 본 발명의 예시적인 실시예가 더 자세히 논의될 것이다.
사전 트레이닝 프레임워크의 예
도 1은 기계 학습 모델(14)을 사전 트레이닝하는데 사용될 수 있는 예시적인 사전 트레이닝 프레임워크의 블록도를 도시한다. 기계 학습 모델(14)은 제1 인코더부(16), 제2 인코더부(18) 및 제3 인코더부(20)을 포함할 수 있다. 도 1에 도시된 예시적인 아키텍처는 예시로만 제공된다. 모델(14)과 그의 일부(16, 18, 20)는 도 1에 도시된 것과 유사하거나 다른 다양한 아키텍처를 가질 수 있다.
사전 트레이닝 프로세스는 일련의 입력 데이터(22)에 대해 수행될 수 있다. 일 예로서, 입력 데이터(22)는 연속 신호로부터의 샘플일 수 있다. 예를 들어, 입력 데이터(22)는 오디오 데이터(예를 들어, 원시 오디오 데이터 또는 스펙트로그램을 사용하여 표현된 오디오 데이터)(예를 들어, 오디오 데이터는 음성 데이터일 수 있음), 텍스트 데이터, 이미지 데이터, 센서 데이터, 생물학적 또는 화학적 데이터 및/또는 이들의 조합일 수 있다. 입력 데이터(22)는 다수의 위치(예를 들어, 위치 1, 2, 3,...,j)를 갖는 시퀀스로 포맷될 수 있다.
기계 학습 모델(14)의 제1 인코더부(16)는 입력 데이터(22)를 처리하여 복수의 인코딩된 특징(24)을 생성할 수 있다. 일 예에서, 도 1에 도시된 바와 같이, 제1 인코더부(16)은 예를 들어 스트라이드(2, 2)를 갖는 두 개의 2D 컨볼루션 계층을 포함하는 컨벌루션 서브샘플링 블록일 수 있으며, 결과적으로 입력 시퀀스 길이가 4배 감소된다. 예를 들어, 입력으로서 로그-멜 스펙트로그램이 주어지면, 제1 인코더부(16)은 제2 인코더부(18)에 의해 입력으로서 취해질 잠재(latent) 표현을 추출할 수 있다.
양자화 기술(26)은 복수의 인코딩된 특징(24)에 대해 수행되어, 복수의 목표 양자화 벡터(28) 및 복수의 목표 양자화 벡터(28)와 연관된 복수의 분리된 식별자(30)를 생성할 수 있다.
일 예로서, 일부 구현에서, 양자화 기술(26)은 곱(product) 양자화를 수행하는 단계를 포함할 수 있다. 곱 양자화에는 다수의 코드북으로부터 양자화된 표현을 선택하는 단계 및 그들을 연결하는 단계가 포함될 수 있다. 각각 다수 항목(entry)을 갖는 다수의 코드북 또는 그룹이 주어지면, 양자화 기술(26)은 각 코드북으로부터 하나의 항목을 선택하는 단계, 결과 벡터를 연결하는 단계, 및 양자화된 벡터(28)를 획득하기 위해 선형 변환을 적용하는 단계를 포함할 수 있다. 일부 구현에서, Gumbel 소프트맥스를 사용하면 완전히 미분 가능한 방식으로 이산 코드북 항목을 선택할 수 있다. 일부 구현에서는 직선 추정기가 사용될 수 있으며 G hard Gumbel 소프트맥스 연산이 설정될 수 있다. 특징 인코더 출력은 다양한 코드북 항목에 해당하는 여러 로짓(logits)에 매핑될 수 있다. 역방향 패스에서는 Gumbel 소프트맥스 출력의 실제 기울기(gradient)가 사용될 수 있다.
도 1을 다시 참조하면, 복수의 인코딩된 특징(24) 중 하나 이상은 마스킹될 수 있다(32). 예를 들어, 마스킹(32)은 입력 데이터(22)와 연관된 다수의 위치 중 하나 이상에서 수행될 수 있으며, 마스킹(32)이 수행되는 위치는 이후 "마스킹된 위치"로 지칭될 수 있다. 일 예에서, 마스킹(32)은 특징값을 0과 동일하게 설정하는 것을 포함할 수 있다. 다른 예에서, 마스킹(32)은 일부 다른 값(예를 들어, 랜덤 노이즈 값)과 동일하도록 특징 값을 변경하는 것을 포함할 수 있다.
마스킹(32) 후에, 기계 학습 모델(14)의 제2 인코더부(18)는 복수의 인코딩된 특징(24)을 처리하여 제1 세트의 컨텍스트 벡터(34)를 생성할 수 있다. 일 예에서, 제2 인코더부(18)에는 컨포머 블록의 스택이 뒤따르는 선형 투영 계층이 포함될 수 있다. Gulati et al., Conformer: Convolution-augmented transformer for speech recognition, in Interspeech, 2020를 참조한다. 각 컨포머 블록에는 일련의 multi-headed self-attention(Vaswani et., Attention is all you need, NIPS, 2017), 깊이별 컨볼루션 및 피드포워드 계층이 포함될 수 있다.
도시된 프레임워크에서, 제2 인코더부(18)의 하나의 목표는 (마스킹된) 인코딩된 특징(24)을 유한의 대표 단위 세트로 분리하는 것이다. 이를 위해, 제2 인코더부(18)은 양자화 메커니즘(26)과 상호 운용될 수 있다. 구체적으로, 제1 인코더부(16)에 의해 출력된 인코딩된 특징들(24)은 한편으로 제1 컨텍스트 벡터 세트(34)를 생성하기 위해 마스킹 후에 컨포머 블록의 스택이 뒤따르는 선형 투영 계층으로 공급될 수 있다. 반면에, 인코딩된 특징(24)은 양자화된 벡터(28) 및 할당된 토큰 ID(30)를 생성하기 위해 마스킹 없이 양자화기(26)에 전달될 수 있다. 양자화된 벡터(28)는 대조 작업을 해결하기 위해 상기 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트(34)와 함께 사용될 수 있다. 할당된 토큰 ID(30)는 나중에 후속 마스킹된 예측 양태에서 예측 타겟으로서 사용될 수 있다.
특히, 도 1을 계속 참조하면, 기계 학습 모델(14)의 제3 인코더부(20)는 제1 컨텍스트 벡터 세트(34)를 처리하여 제2 컨텍스트 벡터 세트(36)를 생성할 수 있다. 일 예로, 도 1에 도시된 바와 같이, 제3 인코더부(20)는 컨포머 블록의 스택을 포함할 수 있으며, 여기서 각 블록은 제2 인코더부(18)의 것과 동일한 구성을 갖는다. 제3 인코더부(20)은 제1 컨텍스트 벡터 세트(34)를 직접 취하고 높은 레벨의 컨텍스트화된 표현을 추출할 수 있다.
사전 트레이닝 프로세스는 대조 손실 항(38) 및 마스크 모델링 항(40)을 모두를 포함하는 손실 함수를 평가하는 단계를 포함할 수 있다. 구체적으로, 대조 손실 항(38)은 제1 컨텍스트 벡터 세트(34) 및 복수의 목표 양자화 벡터(28)에 기초하여 생성된 대조 사전 트레이닝 출력을 평가할 수 있다.
특히, 일 예에서, 마스킹된 시간 단계(위치)(t)에 해당하는 컨텍스트 벡터(ct)에 대해, (보조 사전 트레이닝 예측 구성요소를 포함하는) 모델(14)은 K개의 선택요소(distractor) 세트()로부터 실제 양자화된 벡터(qt)를 식별하도록 요청된다. 예를 들어, 선택요소은 일반 입력 세트(예를 들어, 음성 입력에 대한 발언)의 다른 마스킹된 위치에서 균일하게 샘플링된 양자화된 벡터일 수 있다. 이 손실 부분은 Lw로 표시될 수 있다.
일 예에서, Lw는 다음과 같다.
여기서 는 컨텍스트 벡터와 양자화된 벡터 사이의 코사인 유사도이다.
위에 설명된 손실(Lw)은 코드의 균일한 사용을 장려하기 위해 코드북 다양성 손실(Ld)로 더욱 강화될 수 있다. 따라서, 최종 대조 손실의 한 가지 예는 다음과 같이 정의될 수 있다.
일 예에서, α = 0.1이다. 그러나, 다른 값이 사용될 수도 있다.
따라서, 일부 구현에서, 하나 이상의 마스킹된 위치 각각에 대해: 대조 사전 트레이닝 출력에는 후보 벡터 세트로부터의 예측(된) 선택이 포함될 수 있으며, 그 예측 선택은 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트(34) 중 하나에 기초하여 생성된다. 또한, 후보 벡터 세트는 실제 목표 양자화 벡터(28) 및 하나 이상의 선택요소 벡터를 포함할 수 있으며, 대조 손실 항(38)은 예측 선택이 실제 목표 양자화 벡터(28)에 대응하는지 여부를 평가할 수 있다.
대조 손실(38)은 양자화기(26)와 함께 제1 및 제2 인코더부(16, 18)를 트레이닝하는데 사용될 수 있으므로, 제1 및 제2 인코더부(16, 18)는 제3 인코더에 의해 입력으로 취해질 적절한 컨텍스트 벡터(34)를 생성하고, 양자화기(26)는 제3 인코더부(20)에 의해 타겟으로서 사용될 식별적이고 분리된 토큰을 생성한다.
특히, 마스크 모델링 손실 항(40)은 제2 컨텍스트 벡터 세트(36) 및 복수의 분리된 식별자(30)에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가할 수 있다.
특히, 일 예에서, 소프트맥스 계층은 제3 인코더부(20)의 상단에 첨부된다. 마지막 계층의 컨텍스트 벡터(36)가 마스킹된 위치에 해당하면, 소프트맥스 계층은 컨텍스트 벡터(36)를 입력으로 사용하여 양자화기(26)에 의해 이전에 할당된 자신의 해당 토큰 ID(30)를 예측하려고 시도한다. 이 마스킹된 예측 작업에 대한 예시적인 교차 엔트로피 손실은 Lm으로 표시될 수 있다.
따라서, 일부 구현에서, 하나 이상의 마스킹된 위치 각각에 대해: 마스크 모델링 사전 트레이닝 출력은 마스킹된 위치에 대응하는 제2 컨텍스트 벡터 세트(36) 중 하나에 기초하여 생성된 예측 식별자를 포함할 수 있다. 마스크 모델링 손실 항(40)은 예측 식별자가 마스킹된 위치에 대응하는 복수의 분리된 식별자(30) 중 실제 분리된 식별자에 대응되는지 여부를 평가할 수 있다.
기계 학습 모델(14)은 대조 손실 항(38)과 마스크 모델링 항(40) 모두를 포함하는 손실 함수에 기초하여 종단간(end-to-end) 트레이닝될 수 있다. 따라서, 모델(14)은 두 가지 자기-지도식 작업을 동시에 해결하도록 트레이닝될 수 있다. 최소화해야 할 최종 트레이닝 손실의 한 가지 예는 다음과 같다.
일부 예에서는 β와 γ가 모두 1로 설정될 수 있다. 그러나, 다른 값이 사용될 수도 있다.
미세 조정 접근 방식의 예
도 2는 기계 학습 모델(200)을 트레이닝하는데 사용될 수 있는 예시적인 미세 조정 트레이닝 접근 방식의 블록도를 도시한다. 모델(200)은 사전 트레이닝된 인코더 모델(14)(예를 들어, 도 1에 도시된 바와 같이 사전 트레이닝됨)을 포함할 수 있다. 예를 들어, 모델(14)은 도 1에 도시된 바와 같이 대조 손실(38)과 마스크 모델링 손실(40)을 모두 포함하는 손실 함수에 대해 사전 트레이닝된 인코더부(16, 18, 20)를 포함할 수 있다.
이제 도 2를 참조하면, 모델은 디코더부(202)를 포함할 수 있다. 도 2에 도시된 트레이닝 방식은 다양한 트레이닝 예제에 대해 작동할 수 있다. 도 2에 도시된 하나의 트레이닝 예제(204)는 작업별 트레이닝 입력(206) 및 실측값(210)(예를 들어, 라벨)을 포함한다.
트레이닝 예제(204)는 임의의 다른 작업, 도메인 및/또는 데이터 모달리티(양식)에 대한 특정 예제일 수 있다. 예시적인 데이터 모달리티에는 텍스트, 오디오, 이미지, 센서 데이터 및/또는 기타 형태의 데이터가 포함된다. 예시적인 작업에는 인식 작업, 번역 작업, 감지 작업, 합성 작업, 운율 분류, 감정 또는 정서 분류, 및/또는 위에 제공된 데이터 모달리티에 대해 수행될 수 있는 다양한 기타 작업이 포함될 수 있다. 두 가지 특정 예제 작업에는 자동 음성 인식과 음성 번역이 포함된다.
사전 트레이닝된 인코더(14)는 입력(206)을 처리하여 컨텍스트(상황별) 표현을 생성할 수 있다. 디코더는 컨텍스트 표현을 처리하여 작업별 트레이닝 출력(208)을 생성할 수 있다.
목적 함수(212)는 작업별 트레이닝 출력(208)을 실측값(210)과 비교할 수 있다. 모델(200)은 목적 함수(212)에 기초하여 (예를 들어, 디코더(202) 및/또는 사전 트레이닝된 인코더(14)를 통한 목적 함수의 역전파에 의해) 트레이닝될 수 있다.
추론 접근 방식의 예
도 3은 기계 학습 모델(200)을 트레이닝한 후에 사용될 수 있는 예시적인 추론 접근 방식의 블록도를 도시한다. 특히, 모델(200)은 (예를 들어, 도 1에 도시된 바와 같이 사전 트레이닝되고 도 2에 도시된 바와 같이 미세 조정된) 사전 트레이닝된 인코더 모델(14)과 (예를 들어, 도 2에 도시된 바와 같이 미세 조정된) 디코더부(202)를 포함할 수 있다.
이제 도 3을 참조하면, 도 3에 도시된 추론 방식은 여러 추론 입력에 대해 작동할 수 있다. 하나의 작업별 추론 입력(302)이 도 3에 도시되어 있다. 추론 입력(302)은 임의의 다른 작업, 도메인 및/또는 데이터 모달리티에 대한 특정 입력일 수 있다. 예시적인 데이터 모달리티에는 텍스트, 오디오, 이미지, 센서 데이터 및/또는 기타 형태의 데이터가 포함된다. 예시적인 작업에는 인식 작업, 번역 작업, 감지 작업, 합성 작업, 운율 분류, 감정 또는 정서 분류 및/또는 위에 제공된 데이터 모달리티에 대해 수행될 수 있는 다양한 기타 작업이 포함될 수 있다. 두 가지 특정 예제 작업에는 자동 음성 인식과 음성 번역이 포함된다.
사전 트레이닝된 인코더(14)는 추론 입력(302)을 처리하여 컨텍스트 표현을 생성할 수 있다. 디코더는 컨텍스트 표현을 처리하여 작업별 추론 출력(304)을 생성할 수 있다.
디바이스 및 시스템의 예
도 4a는 예시적인 컴퓨팅 시스템(100)의 블록도를 도시한다. 시스템(100)은 네트워크(180)를 통해 통신 가능하게 연결된 사용자 컴퓨팅 디바이스(102), 서버 컴퓨팅 시스템(130) 및 트레이닝 컴퓨팅 시스템(150)을 포함한다.
사용자 컴퓨팅 디바이스(102)는 예를 들어 개인용 컴퓨팅 디바이스(예를 들어, 랩탑 또는 데스크탑), 모바일 컴퓨팅 디바이스(예를 들어, 스마트폰 또는 태블릿), 게임 콘솔 또는 컨트롤러, 웨어러블 컴퓨팅 디바이스, 내장형 컴퓨팅 디바이스, 또는 임의의 기타 유형의 컴퓨팅 디바이스와 같은 임의의 유형의 컴퓨팅 디바이스일 수 있다.
사용자 컴퓨팅 디바이스(102)는 하나 이상의 프로세서(112) 및 메모리(114)를 포함한다. 하나 이상의 프로세서(112)는 임의의 적합한 처리 디바이스(예를 들어, 프로세서 코어, 마이크로프로세서, ASIC, FPGA, 컨트롤러, 마이크로컨트롤러 등)일 수 있으며, 하나의 프로세서 또는 작동 가능하게 연결된 복수의 프로세서일 수 있다. 메모리(114)는 RAM, ROM, EEPROM, EPROM, 플래시 메모리 디바이스, 자기 디스크 등과 같은 하나 이상의 비-일시적 컴퓨터 판독 가능 저장 매체 및 이들의 조합을 포함할 수 있다. 메모리(114)는 사용자 컴퓨팅 디바이스(102)로 하여금 동작들을 수행하게 하기 위해 프로세서(112)에 의해 실행되는 데이터(116) 및 명령들(118)을 저장할 수 있다.
일부 구현에서, 사용자 컴퓨팅 디바이스(102)는 하나 이상의 기계 학습 모델(120)을 저장하거나 포함할 수 있다. 예를 들어, 기계 학습 모델(120)은 신경망(예를 들어, 심층 신경망)과 같은 다양한 기계 학습 모델 또는 비선형 모델 및/또는 선형 모델을 포함하는 다른 유형의 기계 학습 모델이거나 이를 포함할 수 있다. 신경망에는 피드포워드 신경망, 순환 신경망(예를 들어, 장단기 기억 순환 신경망), 컨벌루션 신경망 또는 기타 형태의 신경망이 포함될 수 있다. 기계 학습 모델의 일부 예는 셀프-어텐션과 같은 어텐션 메커니즘을 활용할 수 있다. 예를 들어, 기계 학습 모델의 일부 예에는 다중 헤드 셀프-어텐션 모델(예를 들어, 트랜스포머 모델)이 포함될 수 있다. 예시적인 기계 학습 모델(120)은 도 1-3을 참조하여 논의된다.
일부 구현에서, 하나 이상의 기계 학습 모델(120)은 네트워크(180)를 통해 서버 컴퓨팅 시스템(130)으로부터 수신되고, 사용자 컴퓨팅 디바이스 메모리(114)에 저장된 후, 하나 이상의 프로세서(112)에 의해 사용되거나 구현될 수 있다. 일부 구현에서, 사용자 컴퓨팅 디바이스(102)는 (예를 들어, 입력의 다중 인스턴스에 걸쳐 병렬 예측을 수행하기 위해) 단일 기계 학습 모델(120)의 다중 병렬 인스턴스를 구현할 수 있다.
추가적으로 또는 대안적으로, 하나 이상의 머신 학습 모델(140)은 클라이언트-서버 관계에 따라 사용자 컴퓨팅 디바이스(102)와 통신하는 서버 컴퓨팅 시스템(130)에 포함되거나 저장되고 구현될 수 있다. 예를 들어, 기계 학습 모델(140)은 웹 서비스의 일부로서 서버 컴퓨팅 시스템(140)에 의해 구현될 수 있다. 따라서, 하나 이상의 모델(120)은 사용자 컴퓨팅 디바이스(102)에 저장되고 구현될 수 있고 및/또는 하나 이상의 모델(140)은 서버 컴퓨팅 시스템(130)에 저장되고 구현될 수 있다.
사용자 컴퓨팅 디바이스(102)는 또한 사용자 입력을 수신하는 하나 이상의 사용자 입력 구성 요소(component)(122)를 포함할 수 있다. 예를 들어, 사용자 입력 구성 요소(122)는 사용자 입력 객체(예를 들어, 손가락 또는 스타일러스)의 터치에 민감한 터치 감지 구성 요소(예를 들어, 터치 감지 디스플레이 스크린 또는 터치 패드)일 수 있다. 터치 감지 구성 요소는 가상 키보드를 구현하는 역할을 할 수 있다. 다른 예시적인 사용자 입력 구성 요소에는 마이크로폰, 기존 키보드 또는 사용자가 사용자 입력을 제공할 수 있는 기타 수단이 포함된다.
서버 컴퓨팅 시스템(130)은 하나 이상의 프로세서(132) 및 메모리(134)를 포함한다. 하나 이상의 프로세서(132)는 임의의 적합한 처리 디바이스(예를 들어, 프로세서 코어, 마이크로프로세서, ASIC, FPGA, 컨트롤러, 마이크로컨트롤러 등)일 수 있으며, 하나의 프로세서 또는 작동 가능하게 연결된 복수의 프로세서일 수 있다. 메모리(134)는 RAM, ROM, EEPROM, EPROM, 플래시 메모리 디바이스, 자기 디스크 등과 같은 하나 이상의 비-일시적 컴퓨터 판독 가능 저장 매체 및 이들의 조합을 포함할 수 있다. 메모리(134)는 서버 컴퓨팅 시스템(130)으로 하여금 동작들을 수행하게 하기 위해 프로세서(132)에 의해 실행되는 데이터(136) 및 명령들(138)을 저장할 수 있다.
일부 구현에서, 서버 컴퓨팅 시스템(130)은 하나 이상의 서버 컴퓨팅 디바이스를 포함하거나 이에 의해 구현된다. 서버 컴퓨팅 시스템(130)이 복수의 서버 컴퓨팅 디바이스를 포함하는 경우, 이러한 서버 컴퓨팅 디바이스는 순차 컴퓨팅 아키텍처, 병렬 컴퓨팅 아키텍처, 또는 이들의 일부 조합에 따라 동작할 수 있다.
전술한 바와 같이, 서버 컴퓨팅 시스템(130)은 하나 이상의 기계 학습 모델(140)을 저장하거나 포함할 수 있다. 예를 들어, 모델(140)은 다양한 기계 학습 모델이거나 이를 포함할 수 있다. 기계 학습 모델의 예로는 신경망 또는 기타 다계층 비선형 모델이 있다. 신경망의 예로는 피드포워드 신경망, 심층 신경망, 순환 신경망 및 컨볼루션 신경망이 있다. 기계 학습 모델의 일부 예는 셀프-어텐션과 같은 어텐션 메커니즘을 활용할 수 있다. 예를 들어, 기계 학습 모델의 일부 예시에는 다중 헤드 셀프-어텐션 모델(예를 들어, 트랜스포머 모델)이 포함될 수 있다. 예시적인 모델(140)은 도 1-3을 참조하여 논의된다.
사용자 컴퓨팅 디바이스(102) 및/또는 서버 컴퓨팅 시스템(130)은 네트워크(180)를 통해 통신 가능하게 연결된 트레이닝 컴퓨팅 시스템(150)과의 상호작용을 통해 모델(120 및/또는 140)을 트레이닝할 수 있다. 트레이닝 컴퓨팅 시스템(150)은 서버 컴퓨팅 시스템(130)과 별개일 수 있거나 서버 컴퓨팅 시스템(130)의 일부일 수 있다.
트레이닝 컴퓨팅 시스템(150)은 하나 이상의 프로세서(152)와 메모리(154)를 포함한다. 하나 이상의 프로세서(152)는 임의의 적합한 처리 디바이스(예를 들어, 프로세서 코어, 마이크로프로세서, ASIC, FPGA, 컨트롤러, 마이크로컨트롤러 등)일 수 있으며, 하나의 프로세서 또는 작동 가능하게 연결된 복수의 프로세서일 수 있다. 메모리(154)는 RAM, ROM, EEPROM, EPROM, 플래시 메모리 디바이스, 자기 디스크 등과 같은 하나 이상의 비-일시적 컴퓨터 판독 가능 저장 매체 및 이들의 조합을 포함할 수 있다. 메모리(154)는 트레이닝 컴퓨팅 시스템(150)으로 하여금 동작들을 수행하게 하기 위해 프로세서(152)에 의해 실행되는 데이터(156) 및 명령들(158)을 저장할 수 있다. 일부 구현에서, 트레이닝 컴퓨팅 시스템(150)은 하나 이상의 서버 컴퓨팅 디바이스를 포함하거나 이에 의해 구현된다.
트레이닝 컴퓨팅 시스템(150)은 예를 들어 오류의 역전파와 같은 다양한 트레이닝 또는 학습 기술을 사용하여 사용자 컴퓨팅 디바이스(102) 및/또는 서버 컴퓨팅 시스템(130)에 저장된 기계 학습 모델(120 및/또는 140)을 트레이닝하는 모델 트레이너(160)를 포함할 수 있다. 예를 들어, 손실 함수는 모델을 통해 역전파되어 (예를 들어, 손실 함수의 기울기에 기초하여) 모델의 하나 이상의 파라미터를 업데이트할 수 있다. 평균 제곱 오차, 우도 손실, 교차 엔트로피 손실, 힌지 손실 및/또는 다양한 기타 손실 함수와 같은 다양한 손실 함수가 사용될 수 있다. 기울기 하강법을 사용하면 여러 번의 트레이닝 반복을 통해 파라미터를 반복적으로 업데이트할 수 있다.
일부 구현에서, 오류의 역전파를 수행하는 것은 시간에 따른 잘린 (truncated) 역전파를 수행하는 것을 포함할 수 있다. 모델 트레이너(160)는 트레이닝되는 모델의 일반화 능력을 향상시키기 위해 다수의 일반화 기술(예를 들어, 가중치 감소, 드롭아웃 등)을 수행할 수 있다.
특히, 모델 트레이너(160)는 트레이닝 데이터(162) 세트에 기초하여 기계 학습 모델(120 및/또는 140)을 트레이닝할 수 있다. 일부 구현에서, 사용자가 동의를 제공한 경우, 트레이닝 예는 사용자 컴퓨팅 디바이스(102)에 의해 제공될 수 있다. 따라서, 이러한 구현에서, 사용자 컴퓨팅 디바이스(102)에 제공되는 모델(120)은 사용자 컴퓨팅 디바이스(102)로부터 수신된 사용자 특정 데이터에 대해 트레이닝 컴퓨팅 시스템(150)에 의해 트레이닝될 수 있다. 일부 경우, 이 프로세스는 모델 개인화로 지칭될 수 있다.
모델 트레이너(160)는 원하는 기능을 제공하기 위해 활용되는 컴퓨터 로직을 포함한다. 모델 트레이너(160)는 하드웨어, 펌웨어, 및/또는 범용 프로세서를 제어하는 소프트웨어로 구현될 수 있다. 예를 들어, 일부 구현에서, 모델 트레이너(160)는 저장 디바이스에 저장되고 메모리에 로드되어 하나 이상의 프로세서에 의해 실행되는 프로그램 파일을 포함한다. 다른 구현예에서, 모델 트레이너(160)는 RAM, 하드 디스크, 광학 또는 자기 매체와 같은 유형의 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 컴퓨터 실행 가능 명령 세트를 포함한다.
네트워크(180)는 근거리 통신망(예를 들어, 인트라넷), 광역 네트워크(예를 들어, 인터넷), 또는 이들의 일부 조합과 같은 임의의 유형의 통신 네트워크일 수 있으며 임의의 수의 유선 또는 무선 링크를 포함할 수 있다. 일반적으로, 네트워크(180)를 통한 통신은 다양한 통신 프로토콜(예를 들어, TCP/IP, HTTP, SMTP, FTP), 인코딩 또는 형식(예를 들어, HTML, XML) 및/또는 보호 체계(예를 들어, VPN, 보안 HTTP, SSL)를 사용하여 모든 유형의 유선 및/또는 무선 연결을 통해 수행될 수 있다.
본 명세서에 설명된 기계 학습 모델은 다양한 작업, 애플리케이션 및/또는 사용 사례에서 사용될 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 이미지 데이터일 수 있다. 기계 학습 모델(들)은 이미지 데이터를 처리하여 출력을 생성할 수 있다. 예로서, 기계 학습 모델(들)은 이미지 데이터를 처리하여 이미지 인식 출력(예를 들어, 이미지 데이터의 인식, 이미지 데이터의 잠재 임베딩, 이미지 데이터의 인코딩된 표현, 이미지 데이터의 해시 등)을 생성할 수 있다. 다른 예로, 기계 학습 모델(들)은 이미지 데이터를 처리하여 이미지 분할 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 이미지 데이터를 처리하여 이미지 분류 출력을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 이미지 데이터를 처리하여 이미지 데이터 수정 출력(예를 들어, 이미지 데이터의 변경 등)을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 이미지 데이터를 처리하여 인코딩된 이미지 데이터 출력(예를 들어, 이미지 데이터의 인코딩 및/또는 압축된 표현 등)을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 이미지 데이터를 처리하여 확대된 이미지 데이터 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 이미지 데이터를 처리하여 예측 출력을 생성할 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 텍스트 또는 자연어 데이터일 수 있다. 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 출력을 생성할 수 있다. 예로서, 기계 학습 모델(들)은 자연어 데이터를 처리하여 언어 인코딩 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 잠재 텍스트 임베딩 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 번역 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 분류 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 텍스트 분할 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 시맨틱(의미론적) 의도 출력을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 확대된 텍스트 또는 자연어 출력(예를 들어, 입력 텍스트 또는 자연어보다 품질이 높은 텍스트 또는 자연어 데이터 등)을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 텍스트 또는 자연어 데이터를 처리하여 예측 출력을 생성할 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 음성 데이터일 수 있다. 기계 학습 모델(들)은 음성 데이터를 처리하여 출력을 생성할 수 있다. 예로서, 기계 학습 모델(들)은 음성 데이터를 처리하여 음성 인식 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 음성 데이터를 처리하여 음성 번역 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 음성 데이터를 처리하여 잠재 임베딩 출력을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 음성 데이터를 처리하여 인코딩된 음성 출력(예를 들어, 음성 데이터의 인코딩된 및/또는 압축된 표현 등)을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 음성 데이터를 처리하여 확대된 음성 출력(예를 들어, 입력 음성 데이터보다 품질이 높은 음성 데이터 등)을 생성할 수 있다. 또 다른 예로서, 기계 학습 모델(들)은 음성 데이터를 처리하여 텍스트 표현 출력(예를 들어, 입력 음성 데이터의 텍스트 표현 등)을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 음성 데이터를 처리하여 예측 출력을 생성할 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 잠재 인코딩 데이터(예를 들어, 입력의 잠재 공간 표현 등)일 수 있다. 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 출력을 생성할 수 있다. 예로서, 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 인식 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 재구성 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 검색 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 재클러스터링 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 잠재 인코딩 데이터를 처리하여 예측 출력을 생성할 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 통계 데이터일 수 있다. 통계 데이터는 다른 데이터 소스로부터 계산 및/또는 계산된 데이터이거나 이를 나타내거나 포함할 수 있다. 기계 학습 모델(들)은 통계 데이터를 처리하여 출력을 생성할 수 있다. 예를 들어, 기계 학습 모델(들)은 통계 데이터를 처리하여 인식 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 통계 데이터를 처리하여 예측 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 통계 데이터를 처리하여 분류 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 통계 데이터를 처리하여 분할 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 통계 데이터를 처리하여 시각화 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 통계 데이터를 처리하여 진단 출력을 생성할 수 있다.
일부 구현에서, 본 개시의 기계 학습 모델(들)에 대한 입력은 센서 데이터일 수 있다. 기계 학습 모델(들)은 센서 데이터를 처리하여 출력을 생성할 수 있다. 예로서, 기계 학습 모델(들)은 센서 데이터를 처리하여 인식 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 센서 데이터를 처리하여 예측 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 센서 데이터를 처리하여 분류 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 센서 데이터를 처리하여 분할 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 센서 데이터를 처리하여 시각화 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델(들)은 센서 데이터를 처리하여 진단 출력을 생성할 수 있다. 또 다른 예로, 기계 학습 모델은 센서 데이터를 처리하여 감지 출력을 생성할 수 있다.
일부 경우에, 기계 학습 모델(들)은 신뢰할 수 있는 및/또는 효율적인 전송 또는 저장(및/또는 해당 디코딩)을 위해 입력 데이터를 인코딩하는 것을 포함하는 작업을 수행하도록 구성될 수 있다. 예를 들어, 작업은 오디오 압축 작업일 수 있다. 입력은 오디오 데이터를 포함할 수 있고 출력은 압축된 오디오 데이터를 포함할 수 있다. 다른 예에서, 입력에는 시각적 데이터(예를 들어, 하나 이상의 이미지 또는 비디오)가 포함되고, 출력에는 압축된 시각적 데이터가 포함되며, 작업은 시각적 데이터 압축 작업이다. 다른 예에서, 작업은 입력 데이터(예를 들어 입력 오디오 또는 시각적 데이터)에 대한 임베딩을 생성하는 것을 포함할 수 있다.
일부 경우, 입력에는 시각적 데이터가 포함되고 작업은 컴퓨터 비전 작업이다. 일부 경우, 입력에는 하나 이상의 이미지에 대한 픽셀 데이터가 포함되며 작업은 이미지 처리 작업이다. 예를 들어, 이미지 처리 작업은 이미지 분류일 수 있으며, 여기서 출력은 점수 세트이며, 각 점수는 서로 다른 객체 클래스에 해당하고 하나 이상의 이미지가 객체 클래스에 속하는 객체를 묘사할 가능성(우도)을 나타낸다. 이미지 처리 작업은 이미지 처리 출력이 하나 이상의 이미지에서 하나 이상의 영역을 식별하고 각 영역에 대해 해당 영역이 관심 객체를 묘사할 가능성을 식별하는 객체 감지일 수 있다. 다른 예로서, 이미지 처리 작업은 이미지 분할일 수 있으며, 여기서 이미지 처리 출력은 하나 이상의 이미지의 각 픽셀에 대해 사전 결정된 카테고리 세트의 각 카테고리에 대한 개별 가능성을 정의한다. 예를 들어, 범주 세트는 전경 및 배경일 수 있다. 또 다른 예로, 범주 세트는 객체 클래스일 수 있다. 다른 예로서, 이미지 처리 작업은 이미지 처리 출력이 하나 이상의 이미지의 각 픽셀에 대해, 개별 깊이 값을 정의하는 깊이 추정일 수 있다. 또 다른 예로, 이미지 처리 작업은 모션 추정일 수 있으며, 여기서 네트워크 입력은 다수의 이미지를 포함하고 이미지 처리 출력은 입력 이미지 중 하나의 각 픽셀에 대해, 네트워크 입력의 이미지 사이의 픽셀에 묘사된 장면의 모션을 정의한다.
일부 경우, 입력은 음성 발언을 나타내는 오디오 데이터를 포함하고 작업은 음성 인식 작업이다. 출력은 음성 발언에 매핑되는 텍스트 출력을 포함할 수 있다. 일부 경우, 작업은 입력 데이터 암호화 또는 암호 해독이 포함된다. 일부 경우, 작업은 분기 예측이나 메모리 어드레스 변환과 같은 마이크로프로세서 성능 작업을 포함한다.
도 4a는 본 개시를 구현하는데 사용될 수 있는 하나의 예시적인 컴퓨팅 시스템을 도시한다. 다른 컴퓨팅 시스템도 사용될 수 있다. 예를 들어, 일부 구현에서, 사용자 컴퓨팅 디바이스(102)는 모델 트레이너(160) 및 트레이닝 데이터세트(162)를 포함할 수 있다. 이러한 구현에서, 모델(120)은 사용자 컴퓨팅 디바이스(102)에서 로컬로 트레이닝되고 사용될 수 있다. 이러한 구현 중 일부에서, 사용자 컴퓨팅 디바이스(102)는 사용자 특정(고유) 데이터에 기초하여 모델(120)을 개인화하기 위해 모델 트레이너(160)를 구현할 수 있다.
도 4b는 본 개시에 설명된 동작을 수행하는 예시적인 컴퓨팅 디바이스(10)의 블록도를 도시한다. 컴퓨팅 디바이스(10)는 사용자 컴퓨팅 디바이스 또는 서버 컴퓨팅 디바이스일 수 있다.
컴퓨팅 디바이스(10)는 다수의 애플리케이션(예를 들어, 애플리케이션 1 내지 N)을 포함한다. 각 애플리케이션에는 자체 기계 학습 라이브러리와 기계 학습 모델이 포함되어 있다. 예를 들어 각 애플리케이션에는 기계 학습 모델이 포함될 수 있다. 예시적인 애플리케이션에는 문자 메시지 애플리케이션, 이메일 애플리케이션, 구술 애플리케이션, 가상 키보드 애플리케이션, 브라우저 애플리케이션 등이 포함된다.
도 4b에 도시된 바와 같이, 각각의 애플리케이션은 예를 들어 하나 이상의 센서, 컨텍스트 관리자, 디바이스 상태 구성 요소 및/또는 추가 구성 요소와 같은 컴퓨팅 디바이스의 다수의 다른 구성 요소와 통신할 수 있다. 일부 구현에서, 각 애플리케이션은 API(예를 들어, 공공 API)를 사용하여 각 디바이스 구성 요소와 통신할 수 있다. 일부 구현에서, 각 애플리케이션에 의해 사용되는 API는 해당 애플리케이션에 고유하다.
도 4c는 본 개시에 설명된 동작들을 수행하는 예시적인 컴퓨팅 디바이스(50)의 블록도를 도시한다. 컴퓨팅 디바이스(50)는 사용자 컴퓨팅 디바이스 또는 서버 컴퓨팅 디바이스일 수 있다.
컴퓨팅 디바이스(50)는 다수의 애플리케이션(예를 들어, 애플리케이션 1 내지 N)을 포함한다. 각 애플리케이션은 중앙 인텔리전스 계층과 통신한다. 예시적인 애플리케이션에는 문자 메시지 애플리케이션, 이메일 애플리케이션, 구술 애플리케이션, 가상 키보드 애플리케이션, 브라우저 애플리케이션 등이 포함된다. 일부 구현에서, 각 애플리케이션은 API(예를 들어, 모든 애플리케이션에 걸친 공통 API)를 사용하여 중앙 인텔리전스 계층(및 여기에 저장된 모델)과 통신할 수 있다.
중앙 인텔리전스 계층은 다수의 기계 학습 모델을 포함한다. 예를 들어, 도 4c에 도시된 바와 같이 각각의 기계 학습 모델이 각 애플리케이션에 대해 제공되고 중앙 인텔리전스 계층에 의해 관리될 수 있다. 다른 구현에서, 두 개 이상의 애플리케이션은 단일 기계 학습 모델을 공유할 수 있다. 예를 들어, 일부 구현에서, 중앙 인텔리전스 계층은 모든 애플리케이션에 대한 단일 모델을 제공할 수 있다. 일부 구현에서, 중앙 인텔리전스 계층은 컴퓨팅 디바이스(50)의 운영 체제 내에 포함되거나 이에 의해 구현된다.
중앙 인텔리전스 계층은 중앙 디바이스 데이터 계층과 통신할 수 있다. 중앙 디바이스 데이터 계층은 컴퓨팅 디바이스(50)에 대한 데이터의 중앙 집중형 저장소일 수 있다. 도 4c에 도시된 바와 같이, 중앙 디바이스 데이터 계층은 예를 들어 하나 이상의 센서, 컨텍스트 관리자, 디바이스 상태 구성 요소 및/또는 추가 구성 요소와 같은 컴퓨팅 디바이스의 다수의 다른 구성 요소와 통신할 수 있다. 일부 구현에서, 중앙 디바이스 데이터 계층은 API(예를 들어, 개인 API)를 사용하여 각 디바이스 구성 요소와 통신할 수 있다.
추가 개시
본 명세서에 논의된 기술은 서버, 데이터베이스, 소프트웨어 애플리케이션 및 기타 컴퓨터 기반 시스템뿐만 아니라 이러한 시스템으로/로부터 전송된 정보 및 취해진 동작을 참조한다. 컴퓨터 기반 시스템의 고유한 유연성으로 인해 구성 요소 간 작업 및 기능의 매우 다양한 구성, 조합, 분할이 가능하다. 예를 들어, 본 명세서에 논의된 프로세스는 단일 디바이스 또는 구성 요소 또는 조합하여 작동하는 다중 디바이스 또는 구성 요소를 사용하여 구현될 수 있다. 데이터베이스와 애플리케이션은 단일 시스템에서 구현되거나 다수의 시스템에 분산될 수 있다. 분산된 구성 요소는 순차적으로 또는 병렬로 동작할 수 있다.
본 주제가 다양한 특정 예에 대해 상세히 설명되었지만, 각각의 예는 설명의 방식으로 제공되는 것이지 본 개시를 제한하는 것이 아니다. 당업자는 전술한 내용을 이해하면 이러한 예에 대한 변경, 변형 및 등가물을 쉽게 생성할 수 있다. 따라서, 본 개시는 당업자에게 쉽게 명백한 바와 같이 본 주제에 대한 이러한 수정, 변경 및/또는 추가의 포함을 배제하지 않는다. 예를 들어, 하나의 예의 일부로서 예시되거나 설명된 특징은 또 다른 예와 함께 사용되어 또 다른 예를 생성할 수 있다. 따라서, 본 개시는 이러한 변경, 변형 및 등가물을 포괄하도록 의도된다.

Claims (24)

  1. 자기-지도식 사전 트레이닝을 수행하기 위한 컴퓨터 구현 방법으로서, 상기 방법은,
    하나 이상의 컴퓨팅 디바이스를 포함하는 컴퓨팅 시스템에 의해, 일련의 입력 데이터를 획득하는 단계와;
    컴퓨팅 시스템에 의해, 기계 학습 모델의 제1 인코더부로 일련의 입력 데이터를 처리하여 복수의 인코딩된 특징을 생성하는 단계와;
    컴퓨팅 시스템에 의해, 복수의 인코딩된 특징을 양자화하여 복수의 타겟 양자화된 벡터 및 그 복수의 타겟 양자화된 벡터와 연관된 복수의 분리된 식별자를 생성하는 단계와;
    컴퓨팅 시스템에 의해, 복수의 인코딩된 특징 중 하나 이상을 마스킹하는 단계와;
    마스킹 후에, 컴퓨팅 시스템에 의해, 기계 학습 모델의 제2 인코더부로 복수의 인코딩된 특징을 처리하여 제1 컨텍스트 벡터 세트를 생성하는 단계와;
    컴퓨팅 시스템에 의해, 기계 학습 모델의 제3 인코더부로 제1 컨텍스트 벡터 세트를 처리하여 제2 컨텍스트 벡터 세트를 생성하는 단계와;
    컴퓨팅 시스템에 의해, 대조 손실 항 및 마스크(masked) 모델링 항을 포함하는 손실 함수를 평가하는 단계 - 대조 손실 항은 제1 컨텍스트 벡터 세트와 복수의 타겟 양자화된 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 그리고 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트와 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가함 - 와; 그리고
    컴퓨팅 시스템에 의해, 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  2. 제1항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 대조 사전 트레이닝 출력은 후보 벡터 세트로부터의 예측(predicted) 선택을 포함하고, 그 예측 선택은 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트 중 하나에 기초하여 생성되며;
    상기 후보 벡터 세트는 실제 목표 양자화(quantized) 벡터와 하나 이상의 선택요소(distractor) 벡터를 포함하고; 그리고
    상기 대조 손실 항은 예측 선택이 실제 목표 양자화 벡터에 해당하는지 여부를 평가하는 것을 특징으로 하는 컴퓨터 구현 방법.
  3. 임의의 선행하는 항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 마스크 모델링 사전 트레이닝 출력은 마스킹된 위치에 대응하는 컨텍스트 벡터의 제2 세트 중 하나에 기초하여 생성된 예측 식별자를 포함하고; 그리고
    상기 마스크 모델링 손실 항은 예측 식별자가 마스킹된 위치에 대응하는 복수의 분리된 식별자 중 실제 분리된 식별자에 해당하는지 여부를 평가하는 것을 특징으로 하는 컴퓨터 구현 방법.
  4. 임의의 선행하는 항에 있어서,
    상기 기계 학습 모델의 제2 인코더부 및/또는 제3 인코더부는 하나 이상의 컨포머 블록을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  5. 임의의 선행하는 항에 있어서,
    상기 기계 학습 모델의 제3 인코더부은 하나 이상의 컨포머 블록을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  6. 임의의 선행하는 항에 있어서,
    상기 컴퓨팅 시스템에 의해, 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 단계는,
    컴퓨팅 시스템에 의해, 마스크 모델링 손실 항에 기초하여 기계 학습 모델의 제3 인코더부, 제2 인코더부, 및 제1 인코더부의 하나 이상의 파라미터의 하나 이상의 값을 수정하는 단계; 및
    컴퓨팅 시스템에 의해, 마스크 모델링 손실 항과 대조 손실 항의 조합에 기초하여 기계 학습 모델의 제2 인코더부과 제1 인코더부의 하나 이상의 파라미터의 하나 이상의 값을 수정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  7. 임의의 선행하는 항에 있어서,
    컴퓨팅 시스템에 의해, 손실 함수에 기초하여 양자화를 수행하는데 사용된 코드북을 수정하는 단계를 더 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  8. 임의의 선행하는 항에 있어서,
    상기 일련의 입력 데이터는 오디오 데이터 또는 그 오디오 데이터의 스펙트럼 표현을 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  9. 제8항에 있어서,
    상기 오디오 데이터는 음성 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  10. 임의의 선행하는 항에 있어서,
    상기 일련의 입력 데이터는 텍스트 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  11. 제1항 내지 제10항 중 어느 한 항에 있어서,
    상기 일련의 입력 데이터는 센서 데이터 또는 이미지 데이터를 포함하는 것을 특징으로 하는 컴퓨터 구현 방법.
  12. 컴퓨팅 시스템의 하나 이상의 프로세서에 의해 실행될 때 컴퓨팅 시스템으로 하여금 동작들을 수행하게 하는 명령을 집합적으로 저장하는 하나 이상의 비-일시적 컴퓨터 판독 가능 매체로서, 상기 동작들은,
    작업별(task-specific) 트레이닝 입력을 획득하는 동작과;
    기계 학습 모델로 작업별 트레이닝 입력을 처리하여 작업별 트레이닝 출력을 생성하는 동작 - 상기 기계 학습 모델의 적어도 인코더부는 대조 손실 항과 마스크 모델링 항을 포함하는 손실 함수를 사용하여 트레이닝되었으며, 상기 대조 손실 항은 제1 컨텍스트 벡터 세트 및 복수의 목표 양자화 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 상기 제1 컨텍스트 벡터 세트는 기계 학습 모델의 인코더부의 입력 또는 중간 출력을 마스킹한 후 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 목표 양자화 벡터는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성되며, 그리고 상기 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트 및 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가하고, 상기 제2 컨텍스트 벡터 세트는 제1 컨텍스트 벡터 세트로부터 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 분리된 식별자는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성됨 - 과;
    작업별 트레이닝 출력에 기초하여 작업별 손실 함수를 평가하는 동작과; 그리고
    작업별 손실 함수에 기초하여 기계 학습 모델을 트레이닝하는 동작을 포함하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  13. 제12항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 대조 사전 트레이닝 출력은 후보 벡터 세트로부터의 예측 선택을 포함하고, 그 예측 선택은 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트 중 하나에 기초하여 생성되며;
    상기 후보 벡터 세트는 실제 목표 양자화 벡터와 하나 이상의 선택요소 벡터를 포함하고; 그리고
    상기 대조 손실 항은 예측 선택이 실제 목표 양자화 벡터에 해당하는지 여부를 평가하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  14. 제12항 또는 제13항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 마스크 모델링 사전 트레이닝 출력은 마스킹된 위치에 대응하는 컨텍스트 벡터의 제2 세트 중 하나에 기초하여 생성된 예측 식별자를 포함하고; 그리고
    상기 마스크 모델링 손실 항은 예측 식별자가 마스킹된 위치에 대응하는 복수의 분리된 식별자 중 실제 분리된 식별자에 해당하는지 여부를 평가하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  15. 제12항, 제13항 또는 제14항에 있어서,
    상기 기계 학습 모델의 인코더부는 하나 이상의 컨포머 블록을 포함하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  16. 제12항 내지 제15항 중 어느 한 항에 있어서,
    상기 기계 학습 모델은 작업별 트레이닝 출력을 생성하기 위해 인코더부의 출력을 처리하도록 구성된 디코더부를 포함하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  17. 제12항 내지 제16항 중 어느 한 항에 있어서,
    상기 작업별 트레이닝 입력은 음성 데이터를 포함하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  18. 상기 작업별 트레이닝 출력은 음성 데이터의 번역 또는 음성 데이터에 대한 음성 인식을 포함하는 것을 특징으로 하는 이상의 비-일시적 컴퓨터 판독 가능 매체.
  19. 컴퓨팅 시스템으로서,
    하나 이상의 프로세서; 및
    컴퓨팅 시스템의 하나 이상의 프로세서에 의해 실행될 때 컴퓨팅 시스템으로 하여금 동작들을 수행하게 하는 명령을 집합적으로 저장하는 하나 이상의 비-일시적 컴퓨터 판독 가능 매체로서, 상기 동작들은,
    작업별 추론 입력을 획득하는 동작과;
    기계 학습 모델로 작업별 추론 입력을 처리하여 작업별 추론 출력을 생성하는 동작 - 상기 기계 학습 모델의 적어도 인코더부는 대조 손실 항과 마스크 모델링 항을 포함하는 손실 함수를 사용하여 트레이닝되었으며, 상기 대조 손실 항은 제1 컨텍스트 벡터 세트 및 복수의 목표 양자화 벡터에 기초하여 생성된 대조 사전 트레이닝 출력을 평가하고, 상기 제1 컨텍스트 벡터 세트는 기계 학습 모델의 인코더부의 입력 또는 중간 출력을 마스킹한 후 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 목표 양자화 벡터는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성되며, 그리고 상기 마스크 모델링 손실 항은 제2 컨텍스트 벡터 세트 및 복수의 분리된 식별자에 기초하여 생성된 마스크 모델링 사전 트레이닝 출력을 평가하고, 상기 제2 컨텍스트 벡터 세트는 제1 컨텍스트 벡터 세트로부터 기계 학습 모델의 인코더부에 의해 생성되고, 상기 복수의 분리된 식별자는 기계 학습 모델의 인코더부의 입력 또는 중간 출력의 양자화에 의해 생성됨 - 과; 그리고
    출력으로서 작업별 추론 출력을 제공하는 동작을 포함하는 것을 특징으로 하는 시스템.
  20. 제18항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 대조 사전 트레이닝 출력은 후보 벡터 세트로부터의 예측 선택을 포함하고, 그 예측 선택은 마스킹된 위치에 대응하는 제1 컨텍스트 벡터 세트 중 하나에 기초하여 생성되며;
    상기 후보 벡터 세트는 실제 목표 양자화 벡터와 하나 이상의 선택요소 벡터를 포함하고; 그리고
    상기 대조 손실 항은 예측 선택이 실제 목표 양자화 벡터에 해당하는지 여부를 평가하는 것을 특징으로 하는 시스템.
  21. 제18항 또는 제19항에 있어서,
    하나 이상의 마스킹된 위치 각각에 대해:
    상기 마스크 모델링 사전 트레이닝 출력은 마스킹된 위치에 대응하는 제2 컨텍스트 벡터 세트 중 하나에 기초하여 생성된 예측 식별자를 포함하고; 그리고
    상기 마스크 모델링 손실 항은 예측 식별자가 마스킹된 위치에 대응하는 복수의 분리된 식별자 중 실제 분리된 식별자에 해당하는지 여부를 평가하는 것을 특징으로 하는 시스템.
  22. 제18항 내지 제20항 중 어느 한 항에 있어서,
    상기 기계 학습 모델의 인코더부는 하나 이상의 컨포머 블록을 포함하는 것을 특징으로 하는 시스템.
  23. 제18항 내지 제21항 중 어느 한 항에 있어서,
    상기 기계 학습 모델은 작업별 추론 출력을 생성하기 위해 인코더부의 출력을 처리하도록 구성된 디코더부를 포함하는 것을 특징으로 하는 시스템.
  24. 제18항 내지 제22항 중 어느 한 항에 있어서,
    상기 작업별 추론 입력은 음성 데이터를 포함하고; 그리고
    상기 작업별 추론 출력은 음성 데이터의 번역 또는 음성 데이터에 대한 음성 인식을 포함하는 것을 특징으로 하는 시스템.
KR1020247004845A 2021-07-28 2022-07-28 종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링 KR20240033029A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163226504P 2021-07-28 2021-07-28
US63/226,504 2021-07-28
PCT/US2022/038699 WO2023009740A1 (en) 2021-07-28 2022-07-28 Contrastive learning and masked modeling for end-to-end self-supervised pre-training

Publications (1)

Publication Number Publication Date
KR20240033029A true KR20240033029A (ko) 2024-03-12

Family

ID=82943008

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020247004845A KR20240033029A (ko) 2021-07-28 2022-07-28 종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링

Country Status (6)

Country Link
US (1) US20240104352A1 (ko)
EP (1) EP4360004A1 (ko)
KR (1) KR20240033029A (ko)
CN (1) CN117980915A (ko)
GB (1) GB202402765D0 (ko)
WO (1) WO2023009740A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117079646B (zh) * 2023-10-13 2024-01-09 之江实验室 一种语音识别模型的训练方法、装置、设备及存储介质

Also Published As

Publication number Publication date
WO2023009740A1 (en) 2023-02-02
GB202402765D0 (en) 2024-04-10
EP4360004A1 (en) 2024-05-01
CN117980915A (zh) 2024-05-03
US20240104352A1 (en) 2024-03-28

Similar Documents

Publication Publication Date Title
US20210295858A1 (en) Synthesizing speech from text using neural networks
Arik et al. Deep voice 2: Multi-speaker neural text-to-speech
JP7204989B2 (ja) エンドツーエンド音声合成システムにおける表現度の制御
JP7419508B2 (ja) 言語タスクのための対照事前トレーニング
CN110326002B (zh) 使用在线注意的序列处理
US20230237993A1 (en) Systems and Methods for Training Dual-Mode Machine-Learned Speech Recognition Models
CA3233965A1 (en) Vector-quantized image modeling
Roger et al. Deep neural networks for automatic speech processing: a survey from large corpora to limited data
CN111382257A (zh) 一种生成对话下文的方法和系统
CN114467096A (zh) 增强基于注意力的神经网络以选择性地关注过去的输入
CN118043885A (zh) 用于半监督语音识别的对比孪生网络
Fahmy et al. A transfer learning end-to-end arabic text-to-speech (tts) deep architecture
Radha et al. Closed-set automatic speaker identification using multi-scale recurrent networks in non-native children
Kim et al. Cross-modal distillation with audio–text fusion for fine-grained emotion classification using BERT and Wav2vec 2.0
KR20240033029A (ko) 종단간 자기-지도식 사전 트레이닝을 위한 대조 학습 및 마스크 모델링
US20230401382A1 (en) Dynamic Language Models for Continuously Evolving Content
CN114282555A (zh) 翻译模型训练方法及装置、翻译方法及装置
CN117316140A (zh) 语音合成方法、装置、设备、存储介质及程序产品
CN111259673A (zh) 一种基于反馈序列多任务学习的法律判决预测方法及系统
US20240232637A9 (en) Method for Training Large Language Models to Perform Query Intent Classification
US20240135187A1 (en) Method for Training Large Language Models to Perform Query Intent Classification
US20220245432A1 (en) Machine-Learned Attention Models Featuring Echo-Attention Layers
Chang et al. R-Spin: Efficient Speaker and Noise-invariant Representation Learning with Acoustic Pieces
CN114822495B (zh) 声学模型训练方法、装置及语音合成方法
US11755883B2 (en) Systems and methods for machine-learned models having convolution and attention