[P] g2pC: A Context-aware Grapheme-to-Phoneme Conversion module for Chinese
There are several open source libraries of Chinese grapheme-to-phoneme conversion such as python-pinyin or xpinyin. However, none of them seem to disambiguate Chinese polyphonic words like “行” (“xíng” (go, walk) vs. “háng” (line)) or “了” (“le” (completed action marker) vs. “liǎo” (finish, achieve)). Instead, they pick up the most frequent pronunciation. Although that may be a simple and economic strategy, machine learning techniques can be of help here. We use CRF to determine the pronunciation of polyphonic words. In addition to the target word itself and its part-of-speech, which are tagged by pkuseg, its neighboring words are also featurized.