Topic on User talk:TJones (WMF)/Notes/Nori Analyzer Analysis

Speaker Review -> Tokenization and Compounds -> 10 random sentences

9
Bmansurov (WMF) (talkcontribs)

I've checked the tokenization of 10 random sentences. The results look good.

input 김대중 대통령은 2003년까지 학급당 학생수를 35명 이하로 감축한다는내용의 '7.20 교육여건 개선계획' 을 발표했다.
tokens [김대중] — [대통령] — [2003] — [년] — [학급] — [학생] — [수] — [35] — [명] — [이하] — [감축] — [내용] — [7] — [20] — [교육] — [여건] — [개선] — [계획] — [발표]
my tokens [김대중 • 김 • 대중] (person's name which consists of the last name and the first name) — [대통령] — [2003] — [년] — [학급] — [학생] — [수] — [35] — [명] — [이하] — [감축] — [내용] — [7] — [20] — [교육] — [여건] — [개선] — [계획] — [발표]
input 모든 모델은 MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, 향상된 인텔 스피드스텝 기술(EIST), EM64T(Extended Memory 64 Technology), XD 비트, 가상화 기술, 스마트 캐시, 인텔 터보 부스트 지원
tokens [모델] — [mmx] — [sse] — [sse] — [2] — [sse] — [3] — [ssse] — [3] — [sse] — [4] — [1] — [sse] — [4] — [2] — [향상] — [인텔] — [스피드스텝 • 스피드 • 스텝] — [기술] — [eist] — [em] — [64] — [t] — [extended] — [memory] — [64] — [technology] — [xd] — [비트] — [가상] — [기술] — [스마트] — [캐시] — [인텔] — [터보] — [부스트] — [지원]
my tokens [모든] (missing word) — [모델] — [mmx] — [sse] — [sse] — [2] — [sse] — [3] — [ssse] — [3] — [sse] — [4] — [1] — [sse] — [4] — [2] — [향상] — [인텔] — [스피드스텝 • 스피드 • 스텝] — [기술] — [eist] — [em] — [64] — [t] — [extended] — [memory] — [64] — [technology] — [xd] — [비트] — [가상화] (missing ending; with the ending the word means "virtualization", without it something different) — [기술] — [스마트] — [캐시] — [인텔] — [터보] — [부스트] — [지원]
input 다 자라면 몸길이는 61 cm, 몸무게는 1.4~2.7 kg 정도가 된다.
tokens [자라] — [몸길이 • 몸 • 길이] — [61] — [cm] — [몸무게 • 몸 • 무게] — [1] — [4] — [2] — [7] — [kg] — [정도] — [된다 • 되]
my tokens [다] (missing word) — [자라] — [몸길이 • 몸 • 길이] — [61] — [cm] — [몸무게 • 몸 • 무게] — [1] — [4] — [2] — [7] — [kg] — [정도] — [된다 • 되]
input 7월 14일에는 태항산에 있던 조선청년연합회 소속 병사들이 하북성에 도착하자, 당일 하북성 섭현에서 김두봉, 박효삼 등과 함께 조선의용군을 발족시키고 총사령관에 취임했다.
tokens [7] — [월] — [14] — [일] — [태항] — [산] — [있] — [조선] — [청년] — [연합회 • 연합 • 회] — [소속] — [병사] — [하북성 • 하북 • 성] — [도착] — [당일] — [하북성 • 하북 • 성] — [섭] — [현] — [김두봉] — [박] — [효] — [삼] — [등] — [조선] — [용군] — [발족] — [총사령관 • 총 • 사령 • 관] — [취임]
my tokens [7] — [월] — [14] — [일] — [태항] — [산] — [있] — [조선] — [청년] — [연합회 • 연합 • 회] — [소속] — [병사] — [하북성 • 하북 • 성] — [도착] — [당일] — [하북성 • 하북 • 성] — [섭현] (should be one word) — [김두봉 • 김 • 두봉] (person's last and first name) — [박효삼 • 박 • 효삼] (person's name) — [등] — [함께] (missing word) — [조선] — [용군] — [발족] — [시키] (missing word) — [총사령관 • 총 • 사령 • 관] — [취임]
input 연합감리교회의 조직은 미국 이외에도 캐나다와 유럽, 아프리카와 필리핀의 교회들을 포함한다.
tokens [연합] — [감리] — [교회] — [조직] — [미국] — [이외] — [캐나다] — [유럽] — [아프리카] — [필리핀] — [교회] — [포함]
my tokens same as above
input 2006년 중화인민공화국에서는 단백질의 함량을 속여서, 미국으로 수출할 가축 사료의 원료인 밀글루텐 등 조단백 함량이 높은 사료 원료의 단백질양을 과장하여 부풀리는 데 이용하였다.
tokens [2006] — [년] — [중화] — [인민공화국 • 인민 • 공화국] — [단백질 • 단백 • 질] — [함량] — [속여서 • 속이] — [미국] — [수출] — [가축] — [사료] — [원료] — [인 • 이] — [밀] — [글루텐] — [등] — [조단] — [백] — [함량] — [높] — [사료] — [원료] — [단백질 • 단백 • 질] — [양] — [과장] — [부풀리] — [데] — [이용]
my tokens [2006] — [년] — [중화] — [인민공화국 • 인민 • 공화국] — [단백질 • 단백 • 질] — [함량] — [속이] (first form is just 속이+어서) — [미국] — [수출] — [가축] — [사료] — [원료] — (removed [인 • 이] as it's a noun maker and doesn't have a meaning by itself) — [밀] — [글루텐] — [등] — [조단] — [백] — [함량] — [높] — [사료] — [원료] — [단백질 • 단백 • 질] — [양] — [과장] — [부풀] (removed ending) — [데] — [이용]
input 일본 요리는 쇼군 치하 동안에 엘리트주의를 없애려 했던 중세 시대가 출현하며 변화하였다.
tokens [일본] — [요리] — [쇼군] — [치하] — [동안] — [엘리트주의 • 엘리트 • 주의] — [없애] — [했 • 하] — [중세] — [시대] — [출현] — [변화]
my tokens same as above
input 『산릉도감의궤』 등 문헌에 의하면 세종 영릉(英陵), 명종 강릉(康陵), 인조 장릉(長陵), 효종 영릉(寧陵)의 정자각이 팔작지붕이었으나, 후대에 모두 맞배지붕으로 교체되어 현재는 숭릉의 정자각만 팔작지붕으로 남아 있다.
tokens [산릉도감 • 산릉 • 도감] — [궤] — [등] — [문헌] — [의하] — [세종] — [영릉] — [영릉] — [명종] — [강릉] — [강릉] — [인조] — [장릉] — [장릉] — [효종] — [영릉] — [寧] — [릉] — [정자각 • 정자 • 각] — [팔작지붕 • 팔작 • 지붕] — [이] — [후대] — [맞배지붕 • 맞배 • 지붕] — [교체] — [현재] — [숭릉] — [정자각 • 정자 • 각] — [팔작지붕 • 팔작 • 지붕] — [남] — [있]
my tokens [산릉도감 • 산릉 • 도감] — [궤] — [등] — [문헌] — [의하] — [세종] — [영릉] — [영릉] — [명종] — [강릉] — [강릉] — [인조] — [장릉] — [장릉] — [효종] — [영릉] — [영릉](hanja should be correctly detected) — [정자각 • 정자 • 각] — [팔작지붕 • 팔작 • 지붕] — (removed [이]) — [후대] — [모두] (was missing) — [맞배지붕 • 맞배 • 지붕] — [교체] — [현재] — [숭릉] — [정자각 • 정자 • 각] — [팔작지붕 • 팔작 • 지붕] — [남] — [있]
input 1934년 파울 폰 힌덴부르크 대통령이 사망한 후 히틀러는 수상과 대통령직을 겸무해서 국방국 최고 지휘권을 손에 넣게 되었다.
tokens [1934] — [년] — [파울] — [폰] — [힌덴부르크] — [대통령] — [사망] — [후] — [히틀러] — [수상] — [대통령] — [직] — [겸무] — [국방] — [국] — [최고] — [지휘] — [손] — [넣] — [되]
my tokens [1934] — [년] — [파울] — [폰] — [힌덴부르크] — [대통령] — [사망] — [후] — [히틀러] — [수상] — [대통령] — [직] — [겸무] — [국방] — [국] — [최고] — [지휘권 • 지휘 • 권] (compound word) — [손] — [넣] — [되]
input 부산지방법원와 서울형사지방법원 등에서 부장판사를 하다가 부산지방법원, 제주지방법원, 춘천지방법원, 광주고등법원에서 법원장을 역임하였으며 이후 공직에서 물러나 변호사 활동을 했다.
tokens [부산] — [지방] — [법원] — [서울] — [형사] — [지방] — [법원] — [등] — [부장] — [판사] — [하] — [부산] — [지방] — [법원] — [제주] — [지방] — [법원] — [춘천] — [지방] — [법원] — [광주] — [고등] — [법원] — [법원장 • 법원 • 장] — [역임] — [이후] — [공직] — [물러나 • 물러나] — [변호사 • 변호 • 사] — [활동] — [했 • 하]
my tokens [부산] — [지방] — [법원] — [서울] — [형사] — [지방] — [법원] — [등] — [부장] — [판사] — [하] — [부산] — [지방] — [법원] — [제주] — [지방] — [법원] — [춘천] — [지방] — [법원] — [광주] — [고등] — [법원] — [법원장 • 법원 • 장] — [역임] — [이후] — [공직] — [물러나 ] (removed duplicate) — [변호사 • 변호 • 사] — [활동] — [했 • 하]
Revi C. (talkcontribs)

Input: 모든 모델은 MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, 향상된 인텔 스피드스텝 기술(EIST), EM64T(Extended Memory 64 Technology), XD 비트, 가상화 기술, 스마트 캐시, 인텔 터보 부스트 지원

Mine: 모든/모델/MMX/SSE/SSE2/SSE3/SSSE3/SSE4.1/SSE4.2/향상/인텔/스피드/스텝/기술/EIST/EM64T/Extended/Memory/64/Technology/XD/비트/가상화/기술/스마트/캐시/인텔/터보/부스트/지원

Diff: I have 모든.

Input: 2006년 중화인민공화국에서는 단백질의 함량을 속여서, 미국으로 수출할 가축 사료의 원료인 밀글루텐 등 조단백 함량이 높은 사료 원료의 단백질양을 과장하여 부풀리는 데 이용하였다.

Mine: 2006/년/중화/인민/공화국/단백질/함량/함량/속여서(속이)/미국/수출/가축/사료/원류/밀/글루텐/조단백/함량/높은/사료/원료/단백질/양/과장/부풀리는(부풀리)/이용

Diff: I did not split 조단백.

Input: 『산릉도감의궤』 등 문헌에 의하면 세종 영릉(英陵), 명종 강릉(康陵), 인조 장릉(長陵), 효종 영릉(寧陵)의 정자각이 팔작지붕이었으나, 후대에 모두 맞배지붕으로 교체되어 현재는 숭릉의 정자각만 팔작지붕으로 남아 있다.

Mine: 산릉/도감/의궤/문헌/의하/세종/영릉/英陵(translates to 영릉)/명종/강릉/康陵(translates to 강릉)/인조/장릉/長陵(translates to 장릉)/효종/영릉/寧陵(translates to 영릉)/정자각/팔작지붕(can be split to 팔작/지붕)/이/후대/모두/맞배지붕(can be split to 맞배/지붕)/교체/현재/숭릉/정자각/팔작지붕/남아(남).

Diff: 의궤 (ko:의궤) is its own word. Should not omit 의 here.

Input: 1934년 파울 폰 힌덴부르크 대통령이 사망한 후 히틀러는 수상과 대통령직을 겸무해서 국방국 최고 지휘권을 손에 넣게 되었다.

Mine: 1934/년/파울/폰/힌덴부르크/대통령/사망/후/히틀러/수상/대통령/직/겸무/국방/국/최고/지휘/권/손/넣/되

Diff: 권 means right. Should not be omitted.

Otherwise LGTM.

Revi C. (talkcontribs)

Seems most of my stuff is also covered below but 조단백 (I don't know how it was created (as I am not good at Biology or Chemical stuff), but it's IMO obviously not 조단/백. Maybe 조/단백)? and 의궤 still stands.

TJones (WMF) (talkcontribs)

Re: 조단백—it looks like 백 was interpreted as a number (Wiktionary says 100) and 조단 was just kind of left over as a "general noun". Is it a rare or very technical term? It gets only 7 hits on Korean Wikipedia at the moment. It's not surprising if some rare scientific terms are processed oddly. Fortunately, splitting it up incorrectly won't keep it from being found (it may just increase irrelevant results—but scoring should bring the good ones, including exact matches, to the top).

Re: 의궤—yeah, that's an error. It's reading 의 as an "ending particle" which then gets filtered, and 궤 as a "general noun". (I'm starting to think "general noun" means "some leftover characters.) There's something about the phrase "산릉도감의궤" that is causing it, because 의궤 by itself comes out as one word.

Revi C. (talkcontribs)

I'm not a biology expert, but it does sound like a technical term. 단백 is the protein, so I guess 조 is something to be omitted or it just makes separate word.

Garam (talkcontribs)
TJones (WMF) (talkcontribs)

Thanks a lot Baha!

I forgot to mention that some words or endings may be intentionally missing from the tokenization. Nori also removes words/characters/jamo that it determines are in the categories verbal endings, interjections, ending particles, general adverbs, conjunctive adverbs, determiners, prefixes, adjective suffixes, noun suffixes, verb suffixes, and various kinds of punctuation.

I can re-do the tokenization without the part-of-speech filtering, if you think that would help.

For now, I'll just look into the specific ones that you mentioned are missing.

  • 김대중 대통령은 2003년까지 학급당 학생수를 35명 이하로 감축한다는내용의 '7.20 교육여건 개선계획' 을 발표했다.
    • I'm not terribly surprised it didn't split the name 김대중 correctly, though if it was going to know about any Korean surname, it seems like it would know 김. It did recognize it as a proper noun, though. Are there any other names that are split up like you propose?
  • 모든 모델은 MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, 향상된 인텔 스피드스텝 기술(EIST), EM64T(Extended Memory 64 Technology), XD 비트, 가상화 기술, 스마트 캐시, 인텔 터보 부스트 지원.
    • 모든 is filtered as a determiner; based on the English Wiktionary entry, that seems reasonable.
    • 가상화: it is pulling off 화 as a noun suffix.
  • 다 자라면 몸길이는 61 cm, 몸무게는 1.4~2.7 kg 정도가 된다.
    • 다 is filtered as a general adverb.
  • 7월 14일에는 태항산에 있던 조선청년연합회 소속 병사들이 하북성에 도착하자, 당일 하북성 섭현에서 김두봉, 박효삼 등과 함께 조선의용군을 발족시키고 총사령관에 취임했다.
    • 섭현 is split as two "general nouns", so that's an error.
    • 박효삼 is split with 박 as a proper noun, 효 as a general noun, and 삼 as a numeral, which Wiktionary agrees with. Recognizing ambiguous names is hard, but this is an error. However, it shouldn't prevent search matches, but it will allow potential false matches.
    • 함께 is filtered as a "general adverb".
    • 시키 is filtered as a verb suffix
  • 2006년 중화인민공화국에서는 단백질의 함량을 속여서, 미국으로 수출할 가축 사료의 원료인 밀글루텐 등 조단백 함량이 높은 사료 원료의 단백질양을 과장하여 부풀리는 데 이용하였다.
    • 속여서 seems to be treated as a compound and is actually tokenized as [속여서 • 속이 • 어서], but 어서 is dropped. As long as 속이 is the correct stemmed form and is present, it's okay. Though I've noticed this happening elsewhere, and I think it may be a bug. If it was just [속이 • 어서], then 어서 would be dropped as a verbal ending and we'd get the desired result.
    • 인 and 이 are tagged as "positve designators"; we could filter those if this comes up a lot.
    • 부풀리, looks like a stemming error, as it is just tagged as a verb.
  • 『산릉도감의궤』 등 문헌에 의하면 세종 영릉(英陵), 명종 강릉(康陵), 인조 장릉(長陵), 효종 영릉(寧陵)의 정자각이 팔작지붕이었으나, 후대에 모두 맞배지붕으로 교체되어 현재는 숭릉의 정자각만 팔작지붕으로 남아 있다.
    • 寧陵/영릉 — looks like it detected 陵 as Hanja, but not both characters together. Weird.
    • 팔작지붕/이 — another "positive designator".
    • 모두 — another victim of the adverb filter.
  • 1934년 파울 폰 힌덴부르크 대통령이 사망한 후 히틀러는 수상과 대통령직을 겸무해서 국방국 최고 지휘권을 손에 넣게 되었다.
    • 지휘권 — looks like 권 was parsed as a noun suffix, and then filtered.
  • 부산지방법원와 서울형사지방법원 등에서 부장판사를 하다가 부산지방법원, 제주지방법원, 춘천지방법원, 광주고등법원에서 법원장을 역임하였으며 이후 공직에서 물러나 변호사 활동을 했다.
    • 물러나 somehow gets parsed as 물러나:"물러나/Verb+아/Verbal endings" • 물러나:Verb • 아:Verbal ending (the verbal ending gets dropped). It's weird, but okay in terms of search that it gets duplicated.


Thanks again for all the detail!

Sounds like I might need to ask upstream about verbs getting treated as compounds if that is a more widespread problem, and we might want to consider filtering the "positive designator" part of speech, but I'd have to look at other instances to make sure they are mostly as useless as these.

Does filtering out the adverbs make sense, by the way?

Bmansurov (WMF) (talkcontribs)

> I can re-do the tokenization without the part-of-speech filtering, if you think that would help.

Given your explanation above, I don't think we should re-do the tokenization.

> I'm not terribly surprised it didn't split the name 김대중 correctly, though if it was going to know about any Korean surname, it seems like it would know 김. It did recognize it as a proper noun, though. Are there any other names that are split up like you propose?

I think, in general, Korean names are written like 김대중, but sometimes person's title may follow the last name. For exmaple, 김 대통령 (President Kim). Sometimes the first name appears by itself (in colloqual speech, usually). That's why any name maybe split like above in my view.

> 시키 is filtered as a verb suffix

My bad, you're correct.

> 부풀리, looks like a stemming error, as it is just tagged as a verb.

I may have made a mistake here. I thought we should take the stem from 부풀다 (become swollen) and not from 부풀리다 (make swollen).

> Does filtering out the adverbs make sense, by the way?

Yes, it does.

TJones (WMF) (talkcontribs)

Okay, so everything is looking pretty good! A tolerable number of minor mistakes, and no absurd mistakes, so far.

I wish I had a better answer on the names and titles. I'll keep an eye out for problems related to that.

Reply to "Speaker Review -> Tokenization and Compounds -> 10 random sentences"