오래된 숫자 키패드 전화기, 스마트폰, 노트북, 글자가 없는 나무 타일이 줄지어 놓인 책상을 그린 그림

예측 입력은 이미 입력한 내용을 바탕으로 다음에 올 가능성이 가장 높은 글자, 단어 또는 문구를 추정하고 가장 적절한 후보를 제안하는 방식으로 작동합니다. 이러한 추정은 언어 모델을 기반으로 합니다. 초기 휴대전화에서는 단어별 사용 빈도순으로 정렬된 사전이 모델 역할을 했습니다. 그다음에는 어떤 단어 뒤에 어떤 단어가 오는지에 대한 통계가 사용되었습니다. 오늘날에는 대개 문장 전체를 읽고 기기 자체에서 실행되는 신경망입니다.

하지만 Windows의 AI 자동 완성 안내서 에서는 PC에서 문구 제안을 받는 방법을 설명합니다. 이 글에서는 한 세대씩 살펴보며 그 작동 원리를 설명합니다.

1세대: 모호성을 해소하는 사전

T9는 하드웨어 문제를 해결했습니다. 전화 키패드에는 키가 12개 있고 대부분의 키에는 문자 세 개나 네 개가 배정되어 있습니다. Tegic Communications는 1995년에 “키 수를 줄인 모호성 해소 컴퓨터” 에 대한 특허를 출원했고, 1998년에 승인받았습니다. 각 키 입력에는 여러 해석이 가능합니다. 소프트웨어는 전체 입력 순서와 일치하는 사전 단어를 검색해 가능성이 가장 높은 단어를 먼저 표시합니다.

4-6-6-3을 누르면 다음 단어가 가능합니다. good, home 와 gone입니다. T9는 키 입력만으로 어떤 단어를 뜻하는지 알 수 없습니다. 가장 자주 쓰이는 단어를 먼저 제시하고, 다른 단어를 차례로 선택할 수 있게 합니다. 여기에는 언어를 이해하는 기능이 없습니다. 순위를 매긴 사전 검색일 뿐입니다.

2세대: 단어 뒤에 어떤 단어가 오는지 세기

휴대전화 키보드 위에 표시되는 제안 막대에는 입력을 시작하기 전에 다음 단어를 예측한다는 두 번째 아이디어가 더해졌습니다. 이를 위한 전통적인 방법은 n-그램 모델입니다. 대량의 텍스트에서 각 단어 뒤에 앞의 한두 단어를 이어 어떤 단어가 얼마나 자주 오는지 세고, 가장 자주 이어지는 단어를 제안합니다.

SwiftKey는 초기 키보드에 n-그램 기술을 사용했습니다. 2015년에 신경망 버전을 출시했을 때, TechCrunch는 기존 방식의 한계에 대한 회사 자체의 설명입니다. 기존 방식은 단어의 근본적인 의미를 이해할 수 없었습니다. n-그램 모델은 “see you” 뒤에 “soon”이 자주 온다는 것을 압니다. “soon”과 “shortly”가 거의 같은 뜻이라는 사실은 알지 못하며, 앞의 단어도 몇 개만 볼 수 있습니다.

3세대: 유사성을 학습하는 신경망

신경망 언어 모델은 단어를 공간상의 점으로 표현하며, 비슷한 단어일수록 가까이 놓입니다. 따라서 한 번도 세어 본 적 없는 단어 조합 뒤에도 적절한 추측을 할 수 있습니다. 2015년 10월에 출시된 SwiftKey Neural Alpha는 이런 방식으로 만들어진 첫 키보드였습니다.

Google은 2018년 논문에서 Gboard의 다음 단계를 설명했습니다. “모바일 키보드 예측을 위한 연합 학습”입니다. 다음 단어 예측 모델은 서버가 아니라 휴대전화에서 학습하는 순환 신경망이었습니다. 기기는 로컬 입력 데이터를 사용해 모델을 개선한 뒤 텍스트가 아닌 모델 업데이트를 전송했습니다. 한 Google 시스템 논문에는 이 모델의 크기가 약 140만 개의 파라미터라고 나와 있습니다. 오늘날 기준으로는 매우 작은 크기입니다. Google은 2023년에 Gboard의 다음 단어 예측 신경망 모델 모두에 차등 개인정보 보호 보장이 적용된다고 발표했습니다.

4세대: 트랜스포머와 전체 문구

2017년 논문에서 소개된 트랜스포머 아키텍처 “Attention Is All You Need”는 최근 몇 개 단어만 보는 것이 아니라 문맥 내의 앞선 모든 단어에 가중치를 부여합니다. 덕분에 문구 수준의 제안이 실용적으로 가능해집니다. 모델이 문장 전체의 주제와 어조를 고려할 수 있기 때문입니다.

Apple은 iOS 17에서 iPhone 입력 기능에 이 방식을 도입했습니다. Apple의 2023년 발표에서는 “단어 예측을 위한 최첨단 기기 내 머신러닝 언어 모델인 트랜스포머 언어 모델”을 기반으로 한 자동 수정 기능을 설명했습니다. 또한 스페이스 바를 한 번 눌러 단어나 문장을 완성하는 인라인 예측 기능도 추가했습니다.

대규모 언어 모델도 같은 방식으로 작동하지만 규모가 훨씬 큽니다. 다음 토큰, 즉 단어나 단어의 일부를 예측하고, 이를 덧붙인 다음 다시 예측합니다. 문구 제안은 이 반복 과정을 몇 차례 진행한 뒤 일찍 멈추고, 수락하거나 무시할 수 있는 회색 ‘고스트 텍스트’로 표시한 것입니다. 이 고스트 텍스트 안내서에서 에서는 Windows에서 이것이 어떻게 보이는지 다룹니다.

세대무엇을 살펴보나요무엇을 제안하나요전형적인 실패 사례
사전 기반 모호성 해소(T9)한 단어를 입력할 때 누른 키일치하는 단어 중 가장 자주 쓰이는 단어같은 키 입력에 해당하는 잘못된 단어
n-그램 통계마지막 한두 단어다음에 올 법한 단어주제를 고려하지 않는 일반적인 제안
순환 신경망압축된 형태의 지금까지 문장의미에 맞는 다음 단어긴 문장에서 맥락을 놓침
트랜스포머 언어 모델화면에 표시된 전체 문맥단어, 문구 또는 문장의 나머지 부분의도하지 않은 유창한 문구

키를 누른 순간부터 제안이 나올 때까지

모델이 무엇이든 처리 과정은 같습니다.

  1. 키보드나 앱이 문맥을 읽습니다. 커서 앞의 텍스트를 모으고, 때로는 현재 사용 중인 앱도 확인합니다.
  2. 모델이 다음에 올 수 있는 단어나 문구에 확률을 부여합니다.
  3. 소프트웨어가 신뢰도가 낮은 추측과 비밀번호 입력란처럼 제안이 적절하지 않은 곳의 제안을 걸러냅니다.
  4. 가장 적절한 한두세 개의 제안을 표시합니다. 휴대전화에서는 단어가 줄지어 표시되고, 문구 도구에서는 고스트 텍스트가 인라인으로 표시됩니다.
  5. 그런 다음 많은 시스템은 사용자가 자주 받아들이고 입력하는 단어와 문구에 맞춰 조정합니다.

필터링 단계는 생각보다 중요합니다. 항상 무언가를 표시하는 도구는 사용자가 제안을 무시하도록 만듭니다. 확신이 없을 때 조용히 있는 도구는 제안을 내놓을 때 사용자가 주의를 기울이게 합니다.

예측이 자주 틀리는 이유

예측은 어디까지나 확률에 불과합니다. 모델은 정중한 답변의 형태를 추측할 수 있지만, 곧 약속할 날짜나 말하려는 사람의 이름은 알 수 없습니다. 새 메시지의 첫 단어들은 아직 문맥이 거의 없기 때문에 예측하기 가장 어렵습니다. 문장이 길어지면 제안이 나아집니다.

잘못된 추측을 감당할 만하게 만드는 것은 제안이 제공되는 방식입니다. 수락하려면 키 하나만 누르면 되고 무시하는 데에는 아무 동작도 필요 없다면, 잘못된 추측은 아무런 비용도 들지 않습니다. 그냥 계속 입력하면 됩니다.

Windows PC에서 예측 입력이 작동하는 방식

Windows에는 물리 키보드용 단어 수준 텍스트 제안 기능이 있습니다. Microsoft의 설정 안내서 입력하는 동안 철자를 바탕으로 단어를 예측한다고 설명합니다. Word의 텍스트 예측은 여기서 더 나아가 단어나 구를 제안합니다. Microsoft는 이를 다음 항목 중 하나로 소개합니다 사용자 콘텐츠를 분석하는 Office 연결 환경, 일부 상황에서만 기본적인 오프라인 기능을 제공합니다.

Typeahead는 사용자의 PC에서 소형 언어 모델을 실행하고, 오프라인일 때도 Word, Outlook, Chrome, WhatsApp 같은 Windows 앱에서 문장의 나머지 부분을 제안합니다. Tab 키나 오른쪽 화살표 키를 눌러 제안을 적용할 수 있습니다. 이 작업에 클라우드급 모델이 필요하지 않은 이유는 소형 온디바이스 모델이면 충분한 이유 이 작업에 클라우드급 모델이 필요하지 않은 이유를 설명합니다.

자주 묻는 질문

예측 입력은 AI의 한 형태인가요?
현대의 예측 입력은 대개 그렇습니다. 휴대전화 키보드와 문구 도구는 신경망 언어 모델을 사용합니다. T9 같은 오래된 시스템은 학습 모델이 아니라 단어 빈도순으로 순위를 매긴 사전 검색 방식이었습니다.
예측 입력은 제가 입력한 내용을 학습하나요?
많은 시스템이 그렇습니다. 자주 사용하는 단어와 문구에 맞춰 조정됩니다. 학습이 기기에서 이루어지는지 서버에서 이루어지는지는 제품에 따라 다르므로 개인정보 보호 정보를 확인하세요.
Windows는 왜 한 단어만 제안하나요?
물리 키보드용 Windows 텍스트 제안은 입력 중인 철자를 바탕으로 단어를 예측합니다. 문구 수준의 제안에는 문장 전체를 읽는 언어 모델이 필요하며, Word 텍스트 예측과 Typeahead 같은 타사 도구가 이를 제공합니다.
메시지의 첫 번째 제안은 왜 대체로 부정확한가요?
아직 문맥이 거의 없기 때문입니다. 언어 모델은 커서 앞에 있는 단어를 바탕으로 예측하므로 문장이 길어질수록 제안이 나아집니다.

Typeahead는 로컬 모델을 사용해 Windows 데스크톱 앱에서 구 단위 예측을 제공합니다. 7일 동안 직접 작성하는 글에 사용해 보세요.

Typeahead 다운로드