人工知能の基礎(全15回)

【トピックス】 人工知能でできること,人工知能の歴史,人工知能による社会の変化, 人工知能の種類,データサイエンス,機械学習, ニューラルネットワーク,探索,知識表現,プロダクションシステム,Prolog,自然言語処理

大学で使用した自作の資料等を,手直しの上公開している. クリエイティブ・コモンズ BY NC SA.

目次

  1. aa-1. 人工知能の概要
  2. aa-2. データサイエンス・AIの事例
  3. aa-3. データサイエンス・AIの演習
  4. aa-4. 機械学習
  5. aa-5. 深層学習,ニューラルネットワーク
  6. aa-6. 画像分類システム
  7. aa-7. 学習と検証,学習不足,過学習,学習曲線
  8. aa-8. コンピュータビジョンと人工知能
  9. aa-9. 知的なゲームのルール,コンピュータプレイヤーがゲームに参加,状態空間表現
  10. aa-10. 総当たりによる探索
  11. aa-11. パス,木,グラフ,探索,発見的探索
  12. aa-12. プロダクションシステム
  13. aa-13. 述語,Prolog
  14. aa-14. 自然言語処理,品詞,構文解析
  15. aa-15. まとめ

サイト内の関連ページ

【サイト内の関連ページ】

資料

aa-1. 人工知能の概要

資料: [PDF], [パワーポイント]

【トピックス】

人工知能, 人工知能でできること, 人工知能の種類, 人工知能でできること, 人工知能の現状, 人工知能の歴史, 人工知能による社会の変化

概要

人工知能(AI)はコンピュータが知的能力を持つ技術で、思考、判断、学習などの機能を有する。 AIは医療、金融、製造、農業など幅広い分野で用いられ、仕事の補助や代行といった役割を果たす。 AIの種類には機械学習や知的なITシステムがあり、用途によって選択する。 AIによる合成や生成は偽情報の拡散や倫理的な問題を引き起こす可能性があるため、注意が必要である。 AIの技術は急激に進歩してる。AIが引き起こす社会への影響や倫理的な問題も注視が必要である。 AIの発達は人間がよりクリエイティブになるためのツールともなり得る。

【関連するページ等】

【関連する外部ページ】  人工知能による合成

創作, 人工知能による支援

翻訳

TensorFlow の仕組み

aa-2. データサイエンス・AIの事例

資料: [PDF], [パワーポイント]

【トピックス】

人工知能, データサイエンス, 表計算ソフトウエア Excel, 散布図(Excel を使用), 合計, 平均(Excel を使用), 分布, 密度(Excel を使用), 人工知能と機械学習

概要

データサイエンスとAIは、データ活用に欠かせない分野である。 データサイエンスはデータから有益な情報を導き出す学問で、機械学習は大量のデータからパターンを学び、未知のデータに対する予測能力を持つ。 Excelを用いてデータを視覚的に表現し分析するという実践的なスキルを身につけることも重要。 これらを理解し、実践的経験を積むことが将来の活躍につながる。

【関連するページ等】

【関連する外部ページ】 

  • Office 365 オンライン版 https://portal.office.com

    Excel ファイル(各自の演習に活用)

    aa-3. データサイエンス・AIの演習

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, オープンデータ, 政府統計データ, クロス集計表(Excel を使用), 相関(Excel を使用)

    概要

    データサイエンスとAI、特にオープンデータとその利用について説明する。 オープンデータは公開されたデータで、一定の条件下で自由に利用できる。 これらは新しいビジネスやサービスの創造、コスト節約、透明性の向上に寄与する。 しかし、データの信頼性やプライバシーを確認し、著作権を尊重する必要がある。 また、オープンデータはAI、特に機械学習の重要なデータソースであり、AI研究者向けに公開されたサイトもあります。 政府統計データがどのように取得し利用されるかを示す。 そして、クロス集計表と相関の概念を紹介し、それらを使用した分析の例を見ていく。

    【関連するページ等】

    【関連する外部ページ】

    Excel ファイル(各自の演習に活用)

    aa-4. 機械学習

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, ニューラルネットワーク, ニューラルネットワークの種類, 線形近似, 最適化

    概要

    機械学習は、コンピュータがデータを使用して学習し、知的能力を向上させる技術である。 そのメリットとして、パターンや関連性を抽出し、複雑なプログラミングを省略でき、問題解決への他の手法の限界を超える可能性がある。 ニューラルネットワークは、生物の脳を模倣し、多くのユニットとその間の結合からなるネットワークであり、機械学習に広く活用されている。 自己符号化や分類、予測などの技術を利用して、データの特徴を抽出や予測結果を導くことが可能である。 また、線形近似は、データの特徴を把握する手法の一つであり、最適化は、目的関数を最小化または最大化するための調整を行う重要なプロセスである。

    【関連するページ等】

    【関連する外部ページ】 

    Excel ファイル(各自の演習に活用)

    Python プログラム

    最適化の用途

    謝辞:https://docs.scipy.org/doc/scipy/tutorial/optimize.html のプログラムをそのまま使用しています.

    import numpy as np
    from scipy.optimize import minimize
    def rosen(x):
        """The Rosenbrock function"""
        return sum(100.0*(x[1:]-x[:-1]**2.0)**2.0 + (1-x[:-1])**2.0)
    
    x0 = np.array([1.3, 0.7, 0.8, 1.9, 1.2])
    res = minimize(rosen, x0, method='nelder-mead',
        options={'xtol': 1e-8, 'disp': True})
    print(res.x)
    

    aa-5. 深層学習,ニューラルネットワーク

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, ニューラルネットワーク, ディープラーニング, ユニット, 活性化, 結合の重み, 活性化関数, 伝搬, ニューラルネットワークを用いた分類, ニューラルネットワークを用いた学習

    概要

    ニューラルネットワークは、複数のユニットが結合し、各ユニットは入力の重み付けや活性化関数の適用を行う。 構造は、層構造で全結合のものが最もシンプルで、データは入力から出力への一方向に流れ、各層のユニットは全結合される。 結合の重みやバイアスの調整により望みの出力を得る。 ディープニューラルネットワークは層が多いニューラルネットワークで、多層でも学習が成功するためのさまざまな工夫が必要とされる。

    【関連するページ等】

    【関連する外部ページ】 

    Excel ファイル(各自の演習に活用)

    aa-6. 画像分類システム

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, 画像と画素, 濃淡画像のデータ, ニューラルネットワークを用いた分類, 画像分類システム, ニューラルネットワークの作成, 学習, 画像分類

    概要

    画像分類システムは、画像を特定のカテゴリに分類するもので、 手書き文字認識やパターン認識等に応用される。 画像分類は、ニューラルネットワークを使用して可能である。 ニューラルネットワークは機械学習の一種で、パターンや関連性を学習する。 画像分類システムでは、ニューラルネットワークの最終層のユニットで最も活性度の高いものを選択するという仕組みで分類が行われる。 画像分類システムは広範に活用されており、具体的な学習はTensorFlowの公式チュートリアル等を通じて可能である。

    【関連するページ等】

    【関連する外部ページ】 

    aa-7. 学習と検証,学習不足,過学習,学習曲線

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, 機械学習, 汎化, 汎化の失敗, 学習の繰り返し, 学習曲線

    概要

    機械学習は訓練データから学習し、未知のデータに対しても適切に処理できる「汎化」能力を持つ。 学習の過程は、訓練データでの誤差を減らすよう重み調整し繰り返すものだが、過学習となり未知データでの誤答が増える場合がある。 そのため、検証データを用いて過学習の確認が必要で、学習曲線はその一助となる。 最近の技術進展により過学習防止の技術が進展している。過学習の防止には大量データによる学習も大切である、コンピュータの高速化も一定の助けとなっている。

    【関連するページ等】

    【関連する外部ページ】 

    aa-8. コンピュータビジョンと人工知能

    資料: [PDF], [パワーポイント]

    【トピックス】

    人工知能, コンピュータビジョン, 畳み込み, プーリング, 畳み込みニューラルネットワーク, 物体検出, セグメンテーション, 顔情報処理, 姿勢推定

    概要

    コンピュータビジョンはコンピュータが実世界を理解・活用する技術で、 画像理解、物体検出、セグメンテーションなどが重要な要素である。 ディープニューラルネットワークや畳み込みにより、これらの精度向上が進んでいる。 畳み込みはデータとカーネルを重ね合わせて一つの値にまとめる手法である。 コンピュータビジョンは他にもある。 顔情報処理は顔検出、顔ランドマーク、顔のコード化、顔識別などがあり、 本人確認や表情推定、年齢判定など多岐にわたり利用される。 姿勢推定は人体の姿勢をAIで把握する技術で、 状況把握、行動予測、行動検知、危険察知などに応用される。

    【関連するページ等】

    【関連する外部ページ】 

    aa-9. 知的なゲームのルール,コンピュータプレイヤーがゲームに参加,状態空間表現

    SlideShare: https://www.slideshare.net/slideshow/aa9-252037023/252037023

    【トピックス】

    人工知能の種類、知的なゲームのルール、状態空間表現

    資料: [PDF], [パワーポイント]

    YouTube 動画: https://www.youtube.com/watch?v=ftSktLFJ3y4

    この回で学ぶこと.

    • 知的なゲームのルール,コンピュータプレイヤーがゲームに参加,状態空間表現
    • 知的なゲーム(ゲームのルールと勝利条件が定まっているもの)で, コンピュータが,ゲームのプレイヤーになる.
    • そのための基礎として「状態空間表現」という方法を使い,コンピュータでもゲームのルールを扱えるようにすることを学ぶ.

    aa-10. 総当りによる探索

    SlideShare: https://www.slideshare.net/slideshow/aa10-252043660/252043660

    【トピックス】

    総当たり、総当たりのパス、状態空間表現での総当たり、パスと木、Python による総当たり

    資料: [PDF], [パワーポイント]

    YouTube 動画: https://www.youtube.com/watch?v=o_Ms27QaSsg

    この回で学ぶこと.

    • 総当たりにより,正解を探索する.
    • 総当たりは「正解を確実に探索できる方法」とも考えることができる.
    • 状態空間表現(世界の状態が変数で表されている)でのルールをもとに 変数値を変化させてゴール(目的とする変数の値)に至ることを探索.

    aa-11. パス,木,グラフ,探索,発見的探索

    資料: [PDF], [パワーポイント]

    YouTube 動画: https://www.youtube.com/watch?v=72AKU8Nh8tY

    この回で学ぶこと

    • パス,木,グラフは,情報を見通し良く扱えるための考え方
    • 総当たりはすべての経路(パス)を試すもの.経路 (パス)の情報を見通し良く扱うには,木が有効.
    • 探索は,木の中のスタートの場所と,ゴールの状態 を指定して経路(パス)を探す.
    • 探索は,正解に至る経路(パス)があるのであれば,必ず経路(パス)を見つけることができる.
    • 探索には,種々の方法があるが,正解に至る経路(パス)があるのであれば,必ず経路(パス)を見つけることができることに変わりはない.

    外部ページへのリンク(作者に感謝します).

    aa-12. プロダクションシステム、知識表現、推論

    資料: [PDF], [パワーポイント]

    YouTube 動画: https://www.youtube.com/watch?v=72AKU8Nh8tY

    この回で学ぶこと.

    プロダクションシステム

    • 作業領域

      作業領域には「知識」のデータを置く。知識は、変化するものである。 知識は、次のような形で書くことができる。

      ['体毛', 'ある']

      ['肉食', 'する']

    • 推論エンジン

      ルールを用いて作業領域を変化させるという推論を行う

    • ルール

      ルールは既存の知識から新しい知識を生み出したり、知識を変化させるためのルールである。 次のように書くことができる。

      '体毛' = 'ある'→ ['種類', '哺乳類']

      '種類' = '哺乳類' and '肉食' = 'する' → ['種類', '肉食動物']

    GDB online: https://www.onlinegdb.com/

    右上の「language」で「Python 3」を選ぶこと.

    プログラムの実行開始は「Run」,実行停止は「Stop」

    aa-13. 述語,Prolog

    資料: [PDF], [パワーポイント]

    今回の授業で学ぶこと.

    • 事実を述語の形で書くことができる.述語は,1項,あるいは,複数項の関係のこと
      • john は男である

        male(john). 1項

      • mike は john の親である

        parent(mike, john). 2項

      複数項のときは,カンマで区切る

    • 述語でのルールの例

      X が Y の parent (親) ならば, Y は X の child (子供) である

      child(Y, X) :- parent(X, Y).

      X,Y は変数

    • Prolog

      Prolog では,問い合わせに対し事実との照合や推論を行う. 問い合わせでは, 値 false, trueを回答したり, 変数値 X = hanako, X = taro を回答する能力を持つ

    aa-14. 自然言語処理,品詞,構文解析

    資料: [PDF], [パワーポイント]

    この回で学ぶこと

    • 自然言語処理

      人間の言葉を、コンピュータが処理すること

    • 自然言語処理の種類
      • 単語の切り出し
      • 品詞の判定
      • 構文解析(係り受けなどの関係の分析)
      • 意味解析

    aa-15. 全体まとめ

    資料: [PDF], [パワーポイント]

    Python プログラムのソースコードなど


    人工知能デモサイトの紹介