나는 CYK algorithm에 대해 읽고 있었으며 이해할 수없는 의사 코드의 일부가 있습니다. 전체 의사 코드는 다음과 같습니다 let the input be a string S consisting of n characters: a1 ... an.
let the grammar contain r nonterminal symbols R1 ... Rr.
T
저는 자연어 파싱에 관심이 있고 음성 인식기의 Brill Part를 작성했으며 문법 규칙에 기반한 POS Tagger와 결합하여 향상시키고 싶습니다. 누구든지 영어에 대한 오픈 소스 ruleset 파일을 알고 있습니까? 특히 CYK (Cocke-Younger-Kasami) 알고리즘과 관련된 모든 것에 특히 관심이 있습니다. 특히 C#. 감사.
내가 만드는 방법에 대해서는 줄의 맨 뒤에있는 단어를 받아 들여서 왼쪽에 발견 된 단어를 추가하려고합니다. (행의 시작 부분에서 공백 문자까지) 배열로 복사하십시오. def ruleElements(factor):
# Creates list of RHS and LHS rule elements
results = []
# If RHS
나는 이것들이 같은 개념이라고 생각한다. https://courses.engr.illinois.edu/cs498jh/Slides/Lecture10.pdf Probabilistic CYK 알고리즘이 viterbi 알고리즘을 사용하여 구문 분석되었는데, 내 개념이 맞습니까?
Chomsky 일반 형식의 주어진 컨텍스트에서 문자열을 파생시킬 수 있는지 확인해야합니다. C++을 사용하고 있습니다. CYK 알고리즘을 다루는 Wikipedia 기사에는 매우 좋은 pseudocode이 있지만 아주 잘 이해할 수는 없습니다. 누가 CYK 알고리즘에 대한 또 다른 의사 코드를 제공하여 나를 도와 주거나, 위키 기사에서 설명 할 수 있을까요?
위키 피 디아와 많은 powerpoints/pdfs에서 CYK algorithm에 대해 읽었습니다. 위키 백과에서 제가 말하고자하는 바가 100 %가 아닌 부분이 있습니다. 너희들 나를 위해 그것을 무너 뜨릴 수 있니? P 중 [1, N, X는 (X는 S 루피 모든 인덱스 인 세트들상에서 반복된다)을 S 부재이다 참일 경우 정말 혼란 let the inpu
C/C++에서 CYK algorithm을 구현하고 싶습니다. 그러나 다양한 웹 사이트 의사 코드에서 사용할 수 있으므로이를 효율적으로 구현하는 방법에 대한 대답이 없습니다. 나는지도와 세트 같은 stl 구조체를 사용하는 버전을 작성했지만 매우 느립니다. 바이너리 연산만을 사용하여 구현을 개선하려고 생각했지만 세트로 테이블을 저장하는 방법을 모르겠습니다. 비