sunpinyin and it's future

9
Sunpinyin and Its Future Mike(Dai) Qin [email protected] University of Toronto July 17, 2011

Upload: rhythm-sun

Post on 26-Dec-2014

1.059 views

Category:

Technology


2 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Sunpinyin and it's future

Sunpinyin and Its Future

Mike(Dai) [email protected]

University of Toronto

July 17, 2011

Page 2: Sunpinyin and it's future

Who Am I

• Just call me Mike.

• Used to be a student of Zhejiang University, Hangzhou. Nowadmitted by University of Toronto.

• Was born in Tianjin. (That’s why I’m here.)

• Has been using Linux since high school. A Fedora user now.

• Has been a sunpinyin committer since 2009 winter.

Page 3: Sunpinyin and it's future

Pinyin Input Method

• Show several candidates according to Pinyin that user inputs.

• Lots of commercial and free implementation.• Pinyin ABC• Microsoft Pinyin• Sougou Pinyin• QQ Pinyin

Page 4: Sunpinyin and it's future

Approach

• Dictionary based• A dictionary that contains all possible words.• Always look up from the dictionary upon user input.• Will adjust the order of candidates upon user commit.

• Pros: Easy to implement.

• Cons: Not intelligence enough when words are combined.

• Implementation:• Pinyin ABC (Commercial)• Fcitx (GPL)• ibus-pinyin (GPL)

Page 5: Sunpinyin and it's future

Approach

• N-Gram based• Have a database of conditional probability.• Will try to calculate the sentence with the larger probability.• Interpolate between user commit history and database.

• Pros: Intelligence!

• Cons: Where can I get the database?

• Implementation:• Sunpinyin (LGPL/CDDL)• Sougou Pinyin (Commercial)

Page 6: Sunpinyin and it's future

Sunpinyin and OpenGram Project

• Sunpinyin is a input method using N-Gram based method.

• Free as in freedom. LGPL license.

• It’s using tri-grams for build-in and bi-grams for user history.

• OpenGram project aims at creating a tri-gram database forSimplified Chinese.

• Free as in freedom. CC license.

Page 7: Sunpinyin and it's future

Current Progress - Sunpinyin

• Released 2.0.3, and we’re working on 2.1/2.5 release.

• Works on Linux, BSD and OSX platform, with nativeinterface.

• Ported to Ibus(ibus-sunpinyin), Scim(scim-sunpinyin). Alsohave a standalone version(xsunpinyin).

• Current Progress of next release.• Multiple Best Sentence. done• Partial Sentence. done• Plugin Support. WIP

• Needs maintainer!

Page 8: Sunpinyin and it's future

What Do I Need to Know Before JoiningSunpinyin?

• Passion.

• A little C++ knowledge. (Nobody in the team know C++completely. :) )

• That’s enough! and maybe plus• Ibus/Scim API, Xorg API or OSX API.• Python API. (Plugin Support)• Windows API. (Windows Port?)

Page 9: Sunpinyin and it's future

Q&A