유한 상태 변환기
Finite-state transducer![]() |
유한상태변환기(FST)는 튜링기계용 용어인 입력테이프와 출력테이프를 따르는 2개의 메모리테이프를 가진 유한상태 기계이다.이것은 하나의 테이프가 있는 일반적인 유한 상태 오토마톤과 대조됩니다.FST는 2개의 [1]심볼 세트 간에 매핑되는 Finite-State Automaton(FSA; 유한 상태 오토마톤)의 일종입니다.FST는 FSA보다 일반적입니다.FSA는 수신된 문자열 세트를 정의함으로써 정식 언어를 정의하고 FST는 문자열 세트 간의 관계를 정의합니다.
FST는 입력 테이프에서 문자열 세트를 읽고 출력 테이프에서 일련의 관계를 생성합니다.FST 는, 세트내의 문자열간의 변환기 또는 릴레이터로서 생각할 수 있습니다.
형태학적 해석에서는 예를 들어 FST에 문자열을 입력하고 FST는 형태소 문자열을 출력합니다.
개요
외부 비디오 | |
---|---|
![]() |
테이프 내용을 입력으로 보면 오토마톤은 문자열을 인식한다고 할 수 있습니다.즉, 자동화는 {0,1} 집합에 문자열을 매핑하는 함수를 계산합니다.또는 자동화가 문자열을 생성한다고 할 수 있습니다.즉, 테이프를 출력 테이프로 볼 수 있습니다.이 관점에서 자동화는 문자열 집합인 형식 언어를 생성합니다.오토마타의 두 가지 관점은 동일하다: 오토마톤이 계산하는 함수는 정확히 그것이 생성하는 문자열 집합의 지시 함수이다.유한 오토마타에 의해 생성된 언어의 클래스는 정규 언어의 클래스로 알려져 있습니다.
트랜스듀서의 2개의 테이프는 일반적으로 입력테이프와 출력테이프로 간주됩니다.이러한 관점에서 트랜스듀서는 입력테이프의 문자열을 받아들여 출력테이프에 다른 문자열을 생성함으로써 입력테이프의 내용을 출력테이프로 변환(즉 번역)한다고 한다.비결정적으로 그렇게 할 수 있으며 각 입력 문자열에 대해 여러 출력을 생성할 수 있습니다.변환기는 또한 주어진 입력 문자열에 대해 출력을 생성하지 않을 수 있으며, 이 경우 입력을 거부한다고 한다.일반적으로 변환기는 2개의 형식 언어 간의 관계를 계산한다.
각 문자열간 유한 상태 변환기는 입력 알파벳 δ와 출력 알파벳 δ를 관련짓는다.유한 상태 변환기로 구현될 수 있는 δ*×δ* 위의 관계 R을 유리 관계라고 한다.부분 함수인 유리 관계, 즉 δ*부터 최대 1개의 δ*까지의 모든 입력 문자열을 관련짓는 유리 함수라고 합니다.
유한 상태 변환기는 종종 자연 언어 처리 연구와 응용 분야에서 음운 및 형태학적 분석에 사용됩니다.이 분야의 선구자들은 로널드 카플란, 라우리 카트툰, 마틴 케이, 키모 코스케니에미 [2][non-primary source needed]등이다.변환기를 사용하는 일반적인 방법은 이른바 "캐스케이드(cascade)"입니다. 이 캐스케이드에서는 합성 연산자의 반복적인 적용에 의해 다양한 연산을 위한 변환기가 단일 변환기로 결합됩니다(아래 정의).
형식 구조
형식적으로 유한 변환기 T는 다음과 같은 6 태플(Q, δ, δ, I, F, δ)이다.
- Q는 유한 집합, 즉 상태 집합이다.
- δ는 입력 알파벳이라고 불리는 유한 집합입니다.
- δ는 출력 알파벳이라고 불리는 유한 집합입니다.
- I는 초기 상태 집합인 Q의 하위 집합입니다.
- F는 최종 상태 집합인 Q의 하위 집합이다.
- × ({ {) × ({} ) × ( \ \ delta \ times ) \ ( \ \ cup \ { \ { \ \ } ) \ times ( \ \ cup \ { \ { \ \ } ) string) \ \ \ \ \ \ \ \ \ \ \ ) string ) string) string) ) 。
(Q, ))는 라벨이 붙은 유향 그래프로서 T의 트랜지션 그래프라고 불립니다.정점 집합은 Q입니다.,( r ) { style 는 , 정점 q에서 정점 r로 이어지는 라벨이 붙은 에지가 있음을 의미합니다.또한 a는 해당 에지의 입력 라벨이고 b는 해당 에지의 출력 라벨이라고 합니다.
참고: 유한 변환기의 정의는 문자 변환기(Roche 및 Schabes 1997)라고도 합니다. 대체 정의는 가능하지만, 모두 변환기로 변환될 수 있습니다.
확장 전이 관계 ^{*})를 다음과 같이 최소 세트로 정의합니다.
- \displayeq ;
- ," , ", " ," q )" " " " (q , \ , \ ) \ \ { * }" ( Q에 대해 "\ Q" 입니다
- ,x , ,r ) \ style ( , x , , ) \ \ display { * ( (( ,, , )\\ style ( , , , s )\ \ ( r ,, , s ) )
확장된 전이 관계는 기본적으로 가장자리 레이블을 고려하기 위해 증가된 전이 그래프의 반사적 전이 폐쇄입니다.「」의 요소 \delta^{*})는 패스로 알려져 있습니다.경로의 에지 레이블은 구성 전환의 에지 레이블을 순서대로 연결하여 가져옵니다.
트랜스듀서 T의 동작은 다음과 같이 정의되는 유리관계 [T입니다 \ i \ f f f f f ( ,, ,입력라벨이 x이고 출력라벨이 y인 초기상태에서 최종상태로의 경로가 존재하는 경우 x " x 를 y 로변환합니다.
가중 오토마타
유한 상태 변환기는 가중치를 부여할 수 있으며, 여기서 각 전환에는 입력 및 출력 라벨 외에 가중치로 라벨이 지정됩니다.가중치 K에 대한 가중치 유한 상태 변환기(WFST)는 가중치되지 않은 것과 유사하게 8-태플 T=(Q, δ, δ, I, F, E, δ, δ, δ)로 정의할 수 있다. 여기서, 다음과 같다.
- Q, δ, δ, I, F는 위와 같이 정의된다.
- Q× ( { { )× ( { { } )× × K × \ E \ \ times ( \ \ cup \ { \ \ } ) \ times ( \ \ cup \ { \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ times \ times \ times \ times ) ) ε \ 。
- K는 초기 상태를 가중치에 매핑합니다.
- : → { \ : F \ K}는 최종 상태를 가중치에 매핑합니다.
WFST에서 특정 동작을 명확하게 정의하기 위해서는 가중치 세트를 요구하여 [3]세미링을 구성하는 것이 편리합니다.실제로 사용되는 두 가지 일반적인 반설정은 로그 반설과 열대 반설이다. 비결정론적 자동설정은 부울 [4]반설정에 가중치가 있는 것으로 간주될 수 있다.
확률적 FST
확률론적 FST(확률론적 FST 또는 통계적 FST라고도 함)는 아마도 가중 [citation needed]FST의 한 형태이다.
유한 상태 변환기의 동작
유한 오토마타에 정의된 다음 연산은 유한 변환기에도 적용됩니다.
- Union. 변환기 T와 S가 주어지면 T {\S }가 하며 x[ S { x [ T \ S 는 x[ T] \ x [ [T Y [ y 입니다.
- 연결. T와 S에 따라 T S T S가 존재합니다. [ S y [ T \ x {、 2, , y2 { } { 。 x1}1}} [ {
- 클린 클로징.트랜스듀서 T가 주어지면 다음과 [5]같은 특성을 가진 T {\ T가 존재할 수 있습니다.
- [ ] { \ [ T^ { * } \ ;
(k1)
-
- [ \[ { * ] } x [ ] \ x []일경우 x [ ]] \[ { * } } ;
(k2)
-
- ( (k2)에 의해 지시되지 않는 한 x [ T 및 x [ x [ { * ]y는 유지되지 않습니다.
- 구성.알파벳 δ와 δ의 변환기 T와 알파벳 δ와 δ의 변환기 S가 주어졌을 때 δ와 δ의 TS(\ T S는 [T ]이다.x [ y y[ S \ [ S 이 연산은 가중치 [6]대소문자로 확장됩니다.
- 이 정의는 수학에서 관계 구성에 사용되는 것과 동일한 표기법을 사용합니다., (x, \ style yS、 Y style (xS 등2개의 관계 T와 S(, z) T S( Tcirc
- 오토마톤에 투영.투사기능은 1\ \_ {} 2\ \ _ {2} 2 tape2 \ display style \ pi _ {}로 출력테이프를 유지합니다. 번째 투영 § _은 다음과 같이 정의됩니다.
- 변환기 T가 주어지면, 유한 1 _}가 존재하기 때문에 x [y .\x [ T ]가 하는 문자열 y 가 존재하는 경우에만, T(\ _{1} T)가 x 를 받아들인다.
- 두 번째 § \2})도 마찬가지로 정의되어 있습니다.
- 결정.변환기 T가 주어진 경우, 우리는 고유한 초기 상태를 가지며 어떤 상태를 남기는 두 개의 전환이 동일한 입력 라벨을 공유하지 않도록 동등한 변환기를 구축하고 싶다.파워셋 구조는 변환기 또는 가중 변환기로 확장할 수 있지만 때때로 정지하지 못한다. 실제로 일부 비결정론적 변환기는 동등한 결정론적 [7]변환기를 허용하지 않는다.결정 가능한 변환기의 특성화는 이를 [9]테스트하기 위해 효율적인 알고리즘과 함께 제안되었다[8]. 변환기의 구조에 대한 일반 특성뿐만 아니라 가중 사례에 사용된 세미링에 의존한다(쌍둥이 특성).
- 가중치 케이스에 [10]대한 가중치 밀어내기.
- 가중치 [11]부여 케이스의 최소화.
- 엡실론 천이 제거
유한 상태 변환기의 추가 특성
- 변환기 T의 관계[T]가 비어 있는지 아닌지는 판정할 수 있다.
- 특정 문자열 x에 대해 x[T]y가 되는 문자열 y가 존재하는지 여부를 판단할 수 있습니다.
- 두 개의 변환기가 [12]동일한지 아닌지는 판단할 수 없다.단, 변환기 T의 관계[T]가 (부분) 함수인 특수한 경우에는 등가성이 결정 가능하다.
- L ( display { )× ( { ){ L = ( \ \ \ { \ \ ) \ ( \ \ \ { \ scapilon \ )의 유한 상태 변환기는의 알파벳 위에 NDFA 입니다. [ ( { ϵ × [ { )\ L = [ ( ( \ \ cup \ { \ \ } ) \ \ Gamma ] \ cup [ \ \ times ( \ cup \ \ } ) } }}
적용들
FST는 컴파일러의 사전 분석 단계에서 의미 값을 검색된 [13]토큰과 관련짓기 위해 사용됩니다.
언어학에서 음운학적 규칙과 소리 변화를 모델링하기 위해 사용되는 a → b / c _ d 형식의 문맥에 민감한 재작성 규칙은 애플리케이션이 반복적이지 않을 경우, 즉 규칙이 동일한 하위 문자열을 두 [14]번 재작성하는 것이 허용되지 않을 경우, 계산상 유한 상태 변환기와 동일하다.
가중 FST는 기계번역을 포함한 자연어 처리 및 [15][16]기계학습에서 응용 프로그램을 발견했습니다.Part-of-Speech 태깅 구현은 OpenGrm[17] 라이브러리의 한 구성 요소로 찾을 수 있습니다.
「 」를 참조해 주세요.
메모들
- ^ Jurafsky, Daniel (2009). Speech and Language Processing. Pearson. ISBN 9789332518414.
- ^ 코스켄니에미 1983
- ^ Berstel, Jean; Reutenauer, Christophe (2011). Noncommutative rational series with applications. Encyclopedia of Mathematics and Its Applications. Vol. 137. Cambridge: Cambridge University Press. p. 16. ISBN 978-0-521-19022-0. Zbl 1250.68007.
- ^ Lothaire, M. (2005). Applied combinatorics on words. Encyclopedia of Mathematics and Its Applications. Vol. 105. A collective work by Jean Berstel, Dominique Perrin, Maxime Crochemore, Eric Laporte, Mehryar Mohri, Nadia Pisanti, Marie-France Sagot, Gesine Reinert, Sophie Schbath, Michael Waterman, Philippe Jacquet, Wojciech Szpankowski, Dominique Poulalhon, Gilles Schaeffer, Roman Kolpakov, Gregory Koucherov, Jean-Paul Allouche and Valérie Berthé. Cambridge: Cambridge University Press. p. 211. ISBN 0-521-84802-4. Zbl 1133.68067.
- ^ Boigelot, Bernard; Legay, Axel; Wolper, Pierre (2003). "Iterating Transducers in the Large". Computer Aided Verification. Lecture Notes in Computer Science. Vol. 2725. Springer Berlin Heidelberg. pp. 223–235. doi:10.1007/978-3-540-45069-6_24. eISSN 1611-3349. ISBN 978-3-540-40524-5. ISSN 0302-9743.
- ^ Mohri 2004, 3-5페이지
- ^ "Determinization of Transducers".
- ^ 모흐리 2004, 5~6페이지
- ^ 알라우젠 & 모흐리 2003
- ^ 모흐리 2004, 7~9페이지
- ^ Mohri 2004, 9-11페이지
- ^ 그리피스 1968
- ^ Charles N. Fischer; Ron K. Cytron; Richard J. LeBlanc, Jr. (2010). "Scanning - Theory and Practice". Crafting a Compiler. Addison-Wesley. ISBN 978-0-13-606705-4.
- ^ "Regular Models of Phonological Rule Systems" (PDF). Archived from the original (PDF) on October 11, 2010. Retrieved August 25, 2012.
- ^ Kevin Knight and Jonathan May (2009). "Applications of Weighted Automata in Natural Language Processing". In Manfred Droste; Werner Kuich; Heiko Vogler (eds.). Handbook of Weighted Automata. Springer Science & Business Media. ISBN 978-3-642-01492-5.
{{cite book}}
: CS1 maint: 작성자 파라미터 사용(링크) - ^ "Learning with Weighted Transducers" (PDF). Retrieved April 29, 2017.
- ^ 오픈그램
레퍼런스
- Allauzen, Cyril; Mohri, Mehryar (2003). "Efficient Algorithms for Testing the Twins Property" (PDF). Journal of Automata, Languages and Combinatorics. 8 (2): 117–144.
- Koskenniemi, Kimmo (1983), Two-level morphology: A general computational model of word-form recognition and production (PDF), Department of General Linguistics, University of Helsinki
- Mohri, Mehryar (2004). "Weighted Finite-State Transducer Algorithms: An Overview" (PDF). Formal Languages and Applications. Studies in Fuzziness and Soft Computing. 148 (620): 551–564. doi:10.1007/978-3-540-39886-8_29. ISBN 978-3-642-53554-3.
- Griffiths, T. V. (1968). "The unsolvability of the Equivalence Problem for Λ-Free nondeterministic generalized machines". 15 (3). ACM: 409–413.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말)
외부 링크
- OpenFst, FST 작업을 위한 오픈 소스 라이브러리입니다.
- 유한 상태 형태학—제록스(XFST/LEXC)는 언어 애플리케이션을 위한 유한 상태 변환기의 구현에 대한 설명입니다.
- 헬싱키 오픈 소스 구현 및 Xerox fst 확장
- FOMA는 Xerox XFST/LEXC 구현의 대부분의 기능을 오픈 소스로 구현한 것입니다.
- 또 다른 오픈 소스 FST 툴킷인 Stuttgart Finite State Transducer Tools
- Java FST Framework는 OpenFst 텍스트 형식을 처리할 수 있는 오픈 소스 Java FST Framework입니다.
- Vcsn은 가중치 자동 데이터 및 합리적인 표현을 위한 오픈 소스 플랫폼(C++ 및 IPython) 플랫폼입니다.
추가 정보
- Jurafsky, Daniel; James H. Martin (2000). Speech and Language Processing. Prentice Hall. pp. 71–83. ISBN 0-13-095069-6.
- Kornai, Andras (1999). Extended Finite State Models of Language. Cambridge University Press. ISBN 0-521-63198-X.
- Roche, Emmanuel; Yves Schabes (1997). Finite-state language processing. MIT Press. pp. 1–65. ISBN 0-262-18182-7.
- Beesley, Kenneth R.; Lauri Karttunen (2003). Finite State Morphology. Center for the Study of Language and Information. ISBN 1-57586-434-7.
- Roark, Brian; Richard Sproat (2007). Computational Approaches to Morphology and Syntax. Oxford University Press. ISBN 978-0-19-927478-9.
- Berstel, Jean (1979). Transductions and Context-free Languages. Teubner Verlag.. PDF판 무료