情報に関する理論

文字コード体系

1. ASCII(アスキー)コード
  • アメリカ規格協会(ANSI)が制定した文字コード
  • 1文字を7ビットの符号とバリディティビット(誤り検出用ビット)の8ビットで表す。
  • 128種類(0~127=7ビット)の文字(0~9, A~Z, a~z, 各記号, 制御文字)が収録されている。
2. EUCコード(拡張UNIXコード)
  • UNIX上で2バイトコードを扱うためのコード体系
  • 決められた範囲内に各国独自の文字を定義することで世界各国の異なった言語にも対応できる
3. JISコード
  • ISOコードにカタカナや漢字を加えた日本工業規格の情報交換用符号
  • 漢字一文字は2バイトで表す
4. シフトJISコード
5. Unicode
  • 世界各国の主な文字体系に全て対応させるため、各文字を2バイトで表し、アルファベットや漢字などを統一的に取り扱う文字コードセット
  • UTFはUnicodeを2進数に変換する方式
    • UTF-8は8ビット単位の不定長で文字が表現され、漢字や仮名1文字は3バイトになる
    • UTF-16は16ビット単位で文字を表現

自然言語を定義する形式言語

人が使っている自然言語に対してコンピュータなどで情報として扱うために曖昧さを排除した言語を形式言語という。
形式言語の構文を形式的に定義するための言語に正規言語があり、その表現方法を正規表現という。

逆ポーランド記法

演算子を被演算子の後ろに置いて表す。
括弧を使わずに演算の優先順位を表せるため、コンピュータで扱いやすい。

逆ポーランド記法から通常の指揮に直す手順
  1. ABCD÷+-
  2. AB(C÷D)+-
  3. A(B+(C÷D))-
  4. A-(B+(C÷D))

AI

人間の判断を模したAI

AIとは、人間の頭脳の振る舞いを模倣したシステムを指す。
現在のAI以前には専門知識などを蓄積した知識ベースとそれを使って推論を行う推論エンジンから構成されるエキスパートシステムが作られ、特定範囲における専門的な意思決定に利用された。
AIでは、さらに統計的な判断機能や学習機能を持つことで、より人間の判断に近い結果を導き出すことができる。

機械学習

人間が経験によって得る知識の過程をコンピュータによって実現する手法。与えられたデータをもとに反復学習を行なって特徴や法則をも見つけ出し、その後に与えられる未知のデータについて推論を行う。

機械学習の方法
  • 教師あり学習:入力に対する正解をデータとして与えることで、未知のデータに対する判断や推論に結びつける。
  • 教師なし学習:正解を与えない方法。データを蓄積することで出現頻度を分析したり、規則性によりグルーピングしたりすることで解答を導き出す。
  • 強化学習:行動及びその善し悪しを得点として与え、最適な解を試行させる。
ディープラーニング(深層学習)

多層化したニューラルネットワークを使った機械学習の方法。
あらかじめ人間が方向性を与えなくても、多方面のデータをもとにコンピュータが自律的に学習を進め、高度な情報を導き出せる。

AIを活用するためのガイドライン

AI開発ガイドライン
  • 透明性の原則:システムが行なった動作を後から調査・検証できるようにデータを残しておく。
  • 制御可能性の原則:必要に応じて人間がAIシステムを制御できるようにしておく。
  • セキュリティ確保の原則:AIシステムが書き換えられることなどがないようにセキュリティを整える。
  • 安全保護の原則:AIシステムは人の生命・身体の安全に危害を及ぼさない。
  • プライバシー保護の原則:AIシステムは利用者や第三者のプライバシーを侵害しない。
  • 倫理の原則:AIシステムの研究開発においては、人間の尊厳と自立を尊重する。