명세 · 용어
검색·문법·측정 용어
kfind 문서와 벤치마크에 쓰이는 검색 구조, 한국어 문법, 품질 지표와 성능 단위를 정의합니다.
검색 입력
- 표제어lemma
- 활용이나 조사가 붙지 않은 사전의 기본형입니다. kfind는 표제어를 검색 가능한 표면형 집합으로 컴파일합니다.
예시 걷다의 표면형에는 걷고, 걸어, 걸었다가 있습니다. - 품사POS · part of speech
- 명사, 동사, 형용사처럼 단어의 문법적 역할과 결합 규칙을 나타내는 분류입니다.
예시 먹다는 동사, 맛있다는 형용사, 음식은 명사입니다. - 검색 질의query
- 표제어, 선택적 품사 태그, 구 구조와 옵션을 묶어 kfind에 전달하는 검색 표현입니다.
예시 n:사용자 v:검증하다는 명사와 동사를 순서대로 찾는 검색 질의입니다. - 형태 검색 단위atom
- 한 표제어와 선택적 품사 태그로 이루어진 검색 질의의 최소 단위입니다.
예시 n:사용자와 v:검증하다는 각각 하나의 atom입니다. - 구 검색phrase
- 둘 이상의 atom을 순서와 최대 간격 조건으로 결합한 검색 질의입니다.
예시 n:사용자 v:검증하다는 사용자와 검증하다의 활용형을 정해진 순서로 찾습니다. - 활용inflection
- 품사를 바꾸지 않고 조사나 어미를 결합하거나 어간을 교체해 표면형을 만드는 과정입니다.
예시 걷다 → 걷고, 걸어, 걸었다 - 파생derivation
- 접사를 결합해 새 표제어나 다른 품사의 단어를 만드는 과정입니다.
예시 검증 → 검증하다, 문화 → 문화적
한국어 문법
- 조사J* · particle
- 체언 뒤에 붙어 문장 안의 관계나 의미를 나타내는 문법 요소입니다. 주격, 목적격, 보조사 등이 있습니다.
예시 사람이의 이/JKS, 책을의 을/JKO, 나도에서 도/JX - 어미E* · ending
- 용언의 어간 뒤에 붙어 시제, 양태, 문장 종결, 다른 절과의 연결을 나타내는 문법 요소입니다.
예시 먹었다 = 먹/VV + 었/EP + 다/EF - 선어말어미EP · prefinal ending
- 어간과 종결·연결·전성 어미 사이에 놓여 높임, 시제, 추측 같은 문법 의미를 더하는 어미입니다. 둘 이상 이어질 수 있습니다.
예시 먹었겠지만 = 먹/VV + 었/EP + 겠/EP + 지만/EC - 종결어미EF · final ending
- 문장을 끝내면서 서술, 질문, 명령 같은 문장 유형을 나타내는 어미입니다.
예시 먹습니다의 습니다/EF, 먹니의 니/EF - 연결어미EC · connective ending
- 용언과 뒤 절을 연결해 나열, 원인, 대조, 조건 같은 관계를 나타내는 어미입니다.
예시 먹고의 고/EC, 먹지만의 지만/EC, 먹으면의 으면/EC - 관형사형 전성어미ETM · adnominal ending
- 용언이 뒤의 체언을 꾸미도록 관형어 기능을 만드는 어미입니다.
예시 먹는 사람의 는/ETM, 먹을 음식의 을/ETM - 명사형 전성어미ETN · nominal ending
- 용언이 문장에서 명사처럼 쓰이도록 명사형을 만드는 어미입니다.
예시 먹기의 기/ETN, 믿음의 음/ETN - 이형태allomorph
- 같은 문법 기능을 가지지만 앞말의 음운 조건에 따라 다른 형태로 나타나는 요소입니다.
예시 받침 뒤의 은·이·을과 모음 뒤의 는·가·를 - 불규칙 활용irregular conjugation
- 어미가 결합할 때 어간이나 어미가 일반 규칙과 다른 모양으로 바뀌는 활용입니다.
예시 걷다 → 걸어(ㄷ 불규칙), 돕다 → 도와(ㅂ 불규칙)
형태소 레이블
- 일반 명사NNG
- 사람, 사물, 개념의 일반적인 이름을 나타내는 체언입니다.
예시 학교/NNG - 고유 명사NNP
- 특정 인물, 장소, 기관과 같은 고유한 대상을 가리키는 체언입니다.
예시 서울/NNP - 의존 명사NNB
- 앞말의 수식이 있어야 자연스럽게 쓰이는 명사입니다.
예시 할 수의 수/NNB - 단위성 의존 명사NNBC
- 수량 표현 뒤에서 단위나 횟수를 나타내는 의존 명사입니다.
예시 세 명의 명/NNBC - 대명사NP
- 사람이나 사물의 이름을 대신하는 체언입니다.
예시 나/NP - 수사NR
- 수량이나 순서를 나타내는 체언입니다.
예시 셋/NR - 동사VV
- 동작이나 변화를 나타내며 어미와 결합해 활용하는 용언입니다.
예시 먹/VV - 형용사VA
- 상태나 성질을 나타내며 어미와 결합해 활용하는 용언입니다.
예시 맑/VA - 보조 용언VX
- 앞 용언 뒤에서 양태나 진행, 결과 같은 의미를 더하는 보조 동사·형용사입니다.
예시 먹어 보았다의 보/VX - 긍정 지정사VCP
- 체언을 서술어로 만드는 긍정 지정사 이다의 형태입니다.
예시 학생이었다의 이/VCP - 부정 지정사VCN
- 체언을 부정하는 지정사 아니다의 형태입니다.
예시 학생이 아니다의 아니/VCN - 주격 조사JKS
- 체언이 문장의 주어임을 나타내는 격조사입니다.
예시 사람이의 이/JKS - 보격 조사JKC
- 되다·아니다 앞의 체언이 보어임을 나타내는 격조사입니다.
예시 학생이 되다의 이/JKC - 관형격 조사JKG
- 앞 체언이 뒤 체언을 꾸미는 관계임을 나타내는 격조사입니다.
예시 우리의 집의 의/JKG - 목적격 조사JKO
- 체언이 서술어의 목적어임을 나타내는 격조사입니다.
예시 책을의 을/JKO - 부사격 조사JKB
- 장소, 방향, 수단, 대상 같은 부사적 관계를 나타내는 격조사입니다.
예시 학교에서의 에서/JKB - 호격 조사JKV
- 부르는 대상을 나타내는 격조사입니다.
예시 철수야의 야/JKV - 인용격 조사JKQ
- 앞말이 인용된 내용임을 나타내는 격조사입니다.
예시 좋다고의 고/JKQ - 보조사JX
- 주제, 대조, 한정, 추가 같은 의미를 더하는 조사입니다.
예시 나도에서 도/JX - 접속 조사JC
- 둘 이상의 체언을 같은 자격으로 이어 주는 조사입니다.
예시 사과와 배의 와/JC - 선어말어미EP
- 어간과 어말어미 사이에서 높임, 시제, 추측 같은 의미를 더하는 어미입니다.
예시 먹었다의 었/EP - 종결어미EF
- 문장을 끝내고 서술, 질문, 명령 같은 문장 유형을 나타내는 어미입니다.
예시 먹었다의 다/EF - 연결어미EC
- 용언을 뒤 절이나 용언에 연결하는 어미입니다.
예시 먹고의 고/EC - 명사형 전성어미ETN
- 용언이 문장에서 명사처럼 쓰이도록 만드는 전성어미입니다.
예시 먹기의 기/ETN - 관형사형 전성어미ETM
- 용언이 뒤 체언을 꾸미도록 만드는 전성어미입니다.
예시 먹는 사람의 는/ETM - 체언 접두사XPN
- 체언이나 어근 앞에 붙어 새 체언을 만드는 접두사입니다.
예시 풋사과의 풋/XPN - 명사 파생 접미사XSN
- 어근이나 단어 뒤에 붙어 명사를 만드는 파생 접미사입니다.
예시 문화적의 적/XSN - 동사 파생 접미사XSV
- 명사나 어근 뒤에 붙어 동사를 만드는 파생 접미사입니다.
예시 공부하다의 하/XSV - 형용사 파생 접미사XSA
- 명사나 어근 뒤에 붙어 형용사를 만드는 파생 접미사입니다.
예시 자연스럽다의 스럽/XSA - 어근XR
- 파생 접사가 붙어 단어를 만드는 중심 의미 요소입니다.
예시 아름답다의 아름/XR
컴파일과 실행
- 검색 계획query plan
- 검색 질의를 원문에서 실행할 수 있도록 후보 프로그램, anchor와 검증 조건을 묶은 컴파일 결과입니다.
- 후보 프로그램CandidateProgram
- 고정 anchor, core 투영, suffix 소비 상태, 판정 제약과 생성 근거를 보존하는 실행 단위입니다.
- 고정 검색 문자열anchor
- 원문에서 형태 후보의 위치를 빠르게 찾기 위해 먼저 검색하는 고정 byte 문자열입니다.
- 경계 정책boundary
- 후보가 독립된 token이어야 하는지, 형태 구조로 확인된 부분이어야 하는지, 부분 문자열도 허용하는지 정하는 조건입니다.
- 생성 근거provenance
- 일치가 어떤 품사 분석과 활용·파생 규칙에서 만들어졌는지 나타내는 설명 정보입니다.
데이터와 리소스
- 형태 사전lexicon
- 표제어의 품사, 활용 유형과 형태 정보를 검색 질의 컴파일에 제공하는 리소스입니다.
- 구성 요소 리소스component resource
- 후보 token의 세부 품사와 정렬된 형태소 span을 제공해 국소 구조 판정에 사용하는 리소스입니다.
품질과 성능
- 참양성TP · true positive
- 정답인 항목을 검색 결과로 반환한 수입니다.
- 참음성TN · true negative
- 정답이 아닌 항목을 검색 결과에서 제외한 수입니다.
- 거짓양성FP · false positive
- 정답이 아닌 항목을 검색 결과로 반환한 수입니다.
- 거짓음성FN · false negative
- 정답인 항목을 검색 결과에서 누락한 수입니다.
- 정밀도Precision = TP / (TP + FP)
- 검색 결과 중 실제 정답의 비율입니다. 결과를 얼마나 정확하게 골랐는지 나타냅니다. 분모가 0이면 이 문서의 벤치마크에서는 0으로 기록합니다.
예시 TP 8, FP 2이면 정밀도는 8 / 10 = 0.8입니다. - 재현율Recall = TP / (TP + FN)
- 찾아야 할 정답 중 실제로 반환한 비율입니다. 정답을 얼마나 빠짐없이 찾았는지 나타냅니다. 분모가 0이면 이 문서의 벤치마크에서는 0으로 기록합니다.
예시 TP 8, FN 2이면 재현율은 8 / 10 = 0.8입니다. - F1 점수F1 · F1 score · 2PR / (P + R)
- 정밀도와 재현율의 조화 평균입니다. 한쪽이 낮으면 함께 낮아지므로 두 지표의 균형을 확인하는 데 사용합니다. 두 값의 합이 0이면 0으로 기록합니다.
예시 정밀도 0.8, 재현율 0.8이면 F1은 0.8입니다. - 원시 지표raw metric
- fixture가 선언한 모든 기대값을 제품 계약과 관계없이 그대로 TP, TN, FP, FN에 반영한 품질 지표입니다.
예시 FN 4에는 제품 목표 밖 사례도 포함될 수 있습니다. - 계약 조정 지표contract-adjusted metric · TPᶜ/TNᶜ/FPᶜ/FNᶜ
- 사람이 검토해 제품 계약 안으로 판정한 사례만 TPᶜ, TNᶜ, FPᶜ, FNᶜ에 반영한 품질 지표입니다. 검토되지 않은 fixture에서는 원시 지표와 같은 confusion matrix를 사용하며 reviewed 수는 0입니다.
예시 raw FN 4, FNᶜ 0이면 네 누락은 관측되었지만 모두 제품 목표 밖이며 계약 안의 누락은 없습니다. - 지연 시간latency · p50/p95
- 한 작업을 끝내는 데 걸린 시간입니다. p50은 중앙값, p95는 관측값의 95%가 그 이하인 값을 뜻합니다.
- 처리량throughput · cases/s · MiB/s
- 단위 시간에 처리한 작업량입니다. fixture 품질 경로는 cases/s, corpus 검색은 MiB/s처럼 workload에 맞는 단위를 사용합니다.