여러 개의 어미들이 동시에 축약되는 경우: 세워져 = 세우/VV + 어/EC + 지/VX + 어/EC)
Closed this issue · 2 comments
lovit commented
현재의 리펙토링 코드는 아래의 경우처럼 여러 개의 어미들이 동시에 축약되는 경우 잘못된 분석을 수행한다.
세워져 (세우/VV + 어/EC + 지/VX + 어/EC) -> 세워져 (세지/Verb + 어/Eomi)
비슷한 경우는 아래와 같다.
밝혀져 = (밝히/VV, 어/EC, 지/VX, 어/EC)
뭡니까. = (무엇/NP, 이/VCP, ㅂ니까/EF, ./SF)
정해져 = (정하/VV, 아/EC, 지/VX, 어/EC)
짜여져 = (짜이/VV, 어/EC, 지/VX, 어/EC)
스쳐갔다. = (스치/VV, 어/EC, 가/VX, 았/EP, 다/EF, ./SF)
lovit commented
원인은 용언의 합성어의 경우, 뒷부분의 용언 지/VX
이후에 등장하는 형태소의 길이를 기준으로 L 과 R 의 경계를 측정하기 때문이다. 그러나 어/EC
는 축약 과정에서 생략된다. 그렇기 때문에 아래의 경우는 제대로 작동한다.
세워진 (세우/VV + 어/EC + 지/VX + ㄴ/EC) -> ["세워진 (세워지/Verb + ㄴ/Eomi)"]
lovit commented
해결법은 활용된 형태에서 boundary point 로 추정한 지점 (마지막 어간의 마지막 음절 부분)의 모음이 형태소의 모음과 같은지 확인함으로써 어/EC
가 축약되었는지 확인할 수 있다.