情報データベース論 • 担当: 中川裕志(なかがわ ひろし) • 情報基盤センター 図書館電子化部門 • 現在の専門:言語情報処理(コーパスから の用語抽出、2言語コーパスからの対訳辞 書抽出)、情報検索 • その他:日本語の意味論、マルチメディア 処理、など コードの歴史 • ASCII(American Standard Code for Information Interchange) ANSI • ISO 646 = 95文字のラテン文字 • アルファベット+数字+特殊文字 • 制御コード: LF, CR などの表示制御と ACK,DEL などの通信制御 、など ISO 646 (ASCII) 文字セット 0 1 2 3 4 5 6 7 8 9 A B C D E F 2 ! “ #$% & ‘ ( ) * + , 3 0 1 2 3 4 5 6 7 8 9 : ; . / < = > ? 4 @A B C D E F G H I J K L M N O 5 P Q R S T U V WX Y Z [ \ ] ^ _ 6 ` a b c d e f g h i m n o 7 p q r s t j k l u v w x y z { | } ~ 日本語コードの話 • 1バイトでは最大256文字 • 字種の多い言語では多バイトコード • 1バイトコードで事足りる欧米言語と多バイ トコードが必要なアジアの言語とのバトル グランド • 文字コードのような基本的情報インフラの 標準化は社会への影響莫大 ISO2022 • エスケープシーケンスにより文字を拡張す るための各種のメカニズム • 各国のISO646 (アメリカならASCII、日本 ならJIS X 0201) を別個の文字集合として 指定し切り替えて使える。 • ちなみに西ヨーロッパの文字では、 ISO8859/1 ISO2022 エスケープシーケンス 変化先の文字コード エスケープシーケンス ASCII ESC ( B JIS ローマ字 ESC ( J JIS カタカナ ESC ( I JIS 0208 ESC $ B JISコードの歴史 • JISX0208(1978) 当時はJISC6226 カタカナ(いわゆる半角カタカナ)および全 角英字はいまや無用の長物ないしは有害 • 半角カタカナと全角英字は97JISでは使わ ないことに決めた • シフトJIS • 78JIS 83JIS 90JIS 97JIS 内部状態を持つ文字コードと 持たない文字コード • 1バイトコードのASCIIは内部状態なし • 2バイトの内部状態なしコードを目指した のがユニコード • エスケープシーケンスのある文字コード ISO2022 に則るコードは内部状態を持つ。 • 内部状態を持つと何がまずいのか? JISコードにおける漢字 • 78JISの第1水準 2965文字=都道府県 名、市町村名を全て記述できる。 第2水準 3384文字 • JISX 0212 の補助漢字 5801文字 シフトJIS • JISX0208で使用していない31文字を漢字の1 バイト目に使う。すなわち、 • 1バイト目、#x81-9F(JIS X 0201では未使用), E0-EF(ISO2022の制御符号部分) を使う。 • 2バイト目は#x40-EF • 合計24576文字 • 台湾、中国、韓国版として Big5, GBK,UHC 漢字の形 • 「包摂」 とは 異なる字形を同一視の基準 のこと。 例えば、「高」や「富」や「国」のふ たつの字形など • そもそも字形のぶれをきちんと定義できる のか? • 計算機技術によって解決できる種類の問 題? 文字と文字コードと字形の関係 文字 文字と字形の 関係は複雑怪奇 「島」「嶋」 目的に応じて決める 字形 字形のゆれ 包摂基準で規定 文字コード 情報検索という目的だとどうなるか • 人名を検索したいなら「嶋」と「島」は別の 文字コードにしておくべき • A と a が同じ文字コードでは困ることも あるので別のコードに • 字形が増えると文字コードが増える。検索 ではいくつかの文字コードを同一視するよ うなプログラムを書く 用字系と使用言語の関係 • 「どの言語で書かれたテキストか」と「どの 用字系が使われているか」を区別すること も多言語処理では重要 • 同じ字と思しき字でも使われる用字系が違 うと異なるコードが割り振られるべき。 • ユニコードのCJK(日中韓統一漢字コー ド)は、3ヶ国語の漢字を字形が似ていると いう理由で同じコードに割り当てている。 左右 縦横 • 文を 右から左に書くか、 左から右に書く か • 文を縦書きするか、横書きするか • このような問題は文字コードの問題か、言 語の問題か、用字系の問題か • 平文(plain text) vs 構造化文書 Plain Text vs 構造化文書 • Plain text は単なる文字コードの連なり。表 示や論理的構造を持たない。 • ネットワークエチケットのひとつにメールは Plain text で書くということがある。 • 構造化文書はタグによって、文書の論理 構造や表示の指示、あるいは使用言語な どまで指定したもの。 LaTex,SGML、 XML、HTMLなど 自動文字コード認識 • ISO2022のエスケープシーケンスを探す • JIS、SJIS、EUCなどを仮定して復元。日本 語らしい言語統計になるのが正しい文字 コード • 言語統計とは? • 文字の頻度統計、N-gram統計、単語の頻 度 文字コード変換ツール(UNIX) • nkf -変換先コード ファイル名 • 変換先コードは j、s、e、m 便利な情報リソース • 情報通信辞典:http://www.e-words.ne.jp/ 使用言語の推定 • あるテキストの文字コードが分かると次は そのテキストが記述されている言語を推定 • 使用言語推定
© Copyright 2024 ExpyDoc