0
Sekka誕生秘話 (better SKK開発への挑戦)         Kiyoka Nishiyama26,Dec,2010 入力メソッド飲み会2010
入力メソッド Sekkaのデモ● SKKのような入力方式を採用● 現在はEmacs専用     クリックして YouTubeで石火(Sekka)の動画を見る
アーキテクチャRESTとKey-Value-Storeが特徴
Sekkaの開発動機(表の動機)Sumibiに不満あり ●  ミスタイプ時の分かりにくさ ●  ローマ字の認知的負荷が高い 「kanjihenkan」とか ●  Sumibiは長文向きだが自分は長文で入力しないSKKの再認識 ●  自分の日本語...
Sekkaの開発動機(裏の動機)Nendoの実力評価 ●  NendoというLisp処理系を開発していた ●  実はNendoがメインプロジェクト ●  処理系の実用性を確認するために何か書く必要があったGemsで生産性が上がるか RubyのG...
Sekkaの使用コンポーネント   Nendo 90%が特徴?
特徴1 SKKライク送り仮名なしの単語は大文字で開始 「Kanji」 → 「漢字」 「Mo-do」→ 「モード」 ※ カタカナもこの部類送り仮名の開始位置を大文字で指定 「kanJi」→ 「感じ」ひらがなは全て小文字 「kanji」→ 「かんじ...
特徴2 曖昧検索曖昧検索  ●   Jaro-Winkler編集距離で辞書検索  ●   ローマ字表記揺れやミスタイプも救済詳細  ●    辞書のキーはローマ字  ●    ローマ字同士の編集距離で閾値を超えたものだけを採用  ●    辞書...
特徴3 モードレスCtrl-Jでいきなり確定 カーソル直前のローマ字をCtrl-Jで直接変換する  ↓ Ctrl-Jを押す(第一候補で確定)  ↓ Ctrl-Jを押す(候補選択に入る)
特徴4 リアルタイムフィードバックタイプするごとに第一候補を画面表示
特徴5 マルチユーザ対応ユーザ語彙はユーザ毎に管理される ●  ユーザ語彙はサーバ側にアップロードされる ●  ユーザ語彙も曖昧検索の対象となる ●  EmacsクライアントはOSのアカウント名を使用する     EmacsLispで (use...
Sekkaの今後搭載予定機能 ●  ユーザ語彙の登録UI  未知語は、Google CGI API for Japanese Input で獲得する予定 ●  Vim対応 ●  ibus対応 ●  数字入り語彙の変換 「100ko」→ 「100...
質疑応答クリックして YouTubeで石火(Sekka)の動画を見る
おまけ SKK vs 最先端IME 論争SekkaはG社の逆張りでいく。G社と同じ方向で戦っても負けは見えているので...SKK陣営の意見 ●   人間を超える人工知能マダー?   待ってられないから、オレこれ使っとくわ。 ●   小脳がSKK...
おまけ 日本語入力のしやすさとは?デバイスで有効なアプローチは変わるだろう ●   携帯電話のテンキー ●   PC ●   iPad編集対象によって変わるだろう ●   Tweet ●   論文 ●   テクニカルライティング ●   ソース...
おしまいです。ありがとうございました。
Upcoming SlideShare
Loading in...5
×

IM飲み会2010 Sekka開発秘話

2,350

Published on

IM飲み会2010でのプレゼン資料。

0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,350
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
8
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "IM飲み会2010 Sekka開発秘話"

  1. 1. Sekka誕生秘話 (better SKK開発への挑戦) Kiyoka Nishiyama26,Dec,2010 入力メソッド飲み会2010
  2. 2. 入力メソッド Sekkaのデモ● SKKのような入力方式を採用● 現在はEmacs専用 クリックして YouTubeで石火(Sekka)の動画を見る
  3. 3. アーキテクチャRESTとKey-Value-Storeが特徴
  4. 4. Sekkaの開発動機(表の動機)Sumibiに不満あり ● ミスタイプ時の分かりにくさ ● ローマ字の認知的負荷が高い 「kanjihenkan」とか ● Sumibiは長文向きだが自分は長文で入力しないSKKの再認識 ● 自分の日本語入力の癖がSKK向き。単文節で確定。 ● 文節区切り間違いナシ ● 送り仮名の送り方間違いナシもっと良いSKKは作れる ● SKKはモードが多すぎる(英数、ひらがな、漢字) ● できればモードという概念を無くしたい ● ローマ字の認知的負荷を解消する手を考えれば可能では?  →リアルタイムのフィードバック、曖昧辞書検索
  5. 5. Sekkaの開発動機(裏の動機)Nendoの実力評価 ● NendoというLisp処理系を開発していた ● 実はNendoがメインプロジェクト ● 処理系の実用性を確認するために何か書く必要があったGemsで生産性が上がるか RubyのGemsを使うことでGaucheよりも早く作れるか ●不足機能のチェック 現状のNendoで、簡単なアプリケーションが作れるか ● → 実験台としてSekkaが良さそうだ。   軽い気持ちで開発スタート
  6. 6. Sekkaの使用コンポーネント Nendo 90%が特徴?
  7. 7. 特徴1 SKKライク送り仮名なしの単語は大文字で開始 「Kanji」 → 「漢字」 「Mo-do」→ 「モード」 ※ カタカナもこの部類送り仮名の開始位置を大文字で指定 「kanJi」→ 「感じ」ひらがなは全て小文字 「kanji」→ 「かんじ」 ●
  8. 8. 特徴2 曖昧検索曖昧検索 ● Jaro-Winkler編集距離で辞書検索 ● ローマ字表記揺れやミスタイプも救済詳細 ● 辞書のキーはローマ字 ● ローマ字同士の編集距離で閾値を超えたものだけを採用 ● 辞書にローマ字表記揺れの全組み合わせを展開済み ● AZIKのローマ字表記も全て辞書に持っている例:「かんじ」の表記揺れパターン (("ka") ("nn" "n" "q") ("ji" "zi")) ;; 通常ローマ字のパターン (("kz" "kn") ("ji" "zi"))) ;; AZIK拡張ローマ字のパターン 上記の組み合わせを全て展開した文字列リストをDBに持っている。 ("kanji" "kannji" "kannzi" "kanzi" "kaqji" "kaqzi" "knji" "knzi" "kzji" "kzzi") 上記の例ではパターン数は10個になる。
  9. 9. 特徴3 モードレスCtrl-Jでいきなり確定 カーソル直前のローマ字をCtrl-Jで直接変換する ↓ Ctrl-Jを押す(第一候補で確定) ↓ Ctrl-Jを押す(候補選択に入る)
  10. 10. 特徴4 リアルタイムフィードバックタイプするごとに第一候補を画面表示
  11. 11. 特徴5 マルチユーザ対応ユーザ語彙はユーザ毎に管理される ● ユーザ語彙はサーバ側にアップロードされる ● ユーザ語彙も曖昧検索の対象となる ● EmacsクライアントはOSのアカウント名を使用する EmacsLispで (user-login-name) で取得できる。
  12. 12. Sekkaの今後搭載予定機能 ● ユーザ語彙の登録UI 未知語は、Google CGI API for Japanese Input で獲得する予定 ● Vim対応 ● ibus対応 ● 数字入り語彙の変換 「100ko」→ 「100個」 ● 公開サーバ対応。xAuthでログインなど ● MongoDB対応コミュニティ開発 ● ユーザーが増えて、手伝ってくれる人が増えればいいな ● Vim対応してくれる人がいたらいいな
  13. 13. 質疑応答クリックして YouTubeで石火(Sekka)の動画を見る
  14. 14. おまけ SKK vs 最先端IME 論争SekkaはG社の逆張りでいく。G社と同じ方向で戦っても負けは見えているので...SKK陣営の意見 ● 人間を超える人工知能マダー? 待ってられないから、オレこれ使っとくわ。 ● 小脳がSKKに最適化されているのでこれでいい。最先端IME陣営の意見 ● SKKは自分にはムリ。 ● SKK使うなんて原始的だ。 ● 工学的な態度からすると、SKKを使って日本語を入力するのは 理に適っている。(小町さん) ● 自然言語処理の研究者が SKKを使うのは欺瞞だと思う。(小町さん)
  15. 15. おまけ 日本語入力のしやすさとは?デバイスで有効なアプローチは変わるだろう ● 携帯電話のテンキー ● PC ● iPad編集対象によって変わるだろう ● Tweet ● 論文 ● テクニカルライティング ● ソースコードのコメント ● しゃべり言葉(プライベートのメール) ● ビジネスメールSekkaは何向き? ● ソースコードのコメント ● 英文と和文混在ドキュメント ● しゃべり言葉(大阪弁とかでも問題ない)
  16. 16. おしまいです。ありがとうございました。
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×