自然言語処理とチャットボット: AIによる文章生成と会話エンジン開発
4.2 (50 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
650 students enrolled

自然言語処理とチャットボット: AIによる文章生成と会話エンジン開発

ディープラーニング(深層学習)を利用して、日本語を解析し文章を作成しましょう。 NLPを利用した人工知能チャットボットの構築も行います。
Bestseller
4.2 (50 ratings)
Course Ratings are calculated from individual students’ ratings and a variety of other signals, like age of rating and reliability, to ensure that they reflect course quality fairly and accurately.
650 students enrolled
Last updated 4/2019
Japanese
Current price: $9.99 Original price: $124.99 Discount: 92% off
30-Day Money-Back Guarantee
This course includes
  • 6 hours on-demand video
  • 5 articles
  • 1 downloadable resource
  • Full lifetime access
  • Access on mobile and TV
  • Certificate of Completion
Training 5 or more people?

Get your team access to Udemy's top 3,000+ courses anytime, anywhere.

Try Udemy for Business
What you'll learn
  • 自然言語処理(NLP)の本質を理解し、コードが書けるようになります。
  • 夏目漱石、宮沢賢治、江戸川乱歩風のテキストの自動生成について学びます。

  • リカレントニューラルネットワーク(RNN)による自然言語処理を学びます。

  • チャットボットなどに利用可能な、対話文の自動生成について学びます。
  • 自然言語処理を、チャットボットの開発につなげる方法を学びます。
  • LSTM、GRU、Seq2SeqなどのRNNの発展形について学びます。
Course content
Expand all 50 lectures 06:01:27
+ イントロダクション
3 lectures 13:30

コースの概要、及び各セクションの概要を解説します。

Preview 05:27

自然言語処理の概要について解説します。

Preview 03:26

チャットボットの概要について解説します。

Preview 04:37
+ 学習の準備
3 lectures 09:33

Anacondaのインストール方法を解説します。

Anacondaのインストール
02:46

Jupyter Notebookの使い方を解説します。

Jupyter Notebookの使い方
04:42

教材のダウンロード方法と、教材の使い方について解説します。

教材のダウンロードと使い方
02:05
+ Pythonの基礎
4 lectures 44:39

本コースを学ぶために必要な、プログラミング言語Pythonについて学びます。

Pythonの基礎1
12:26

本コースを学ぶために必要な、プログラミング言語Pythonについて学びます。

Pythonの基礎2
10:49

数値演算ライブラリ、NumPyを解説します。

NumPyの基礎
12:56

グラフの描画に必要なライブラリ、matplotlibについて解説します。

Matplotlibの基礎
08:28
+ 必要な数学
4 lectures 46:34

本セクションで学ぶための基礎となる数学を解説します。

数学の基本
07:25

ニューラルネットワークに必要な線形代数の基礎を学びます。

線形代数の基礎
15:50

ニューラルネットワークに必要な微分の基礎を学びます。

微分の基礎
15:03

ニューラルネットワークに必要な、正規分布の概念を学びます。

正規分布
08:16
+ ニューラルネットワークとバックプロパゲーション
2 lectures 13:06

ニューラルネットワークについて、概要を解説します。

Preview 09:11

ニューラルネットワークが学習するためのアルゴリズム、バックプロパゲーションについて概要を解説します。

バックプロパゲーションの概要
03:55
+ 自然言語処理の準備
4 lectures 23:30

本コースで必要な、環境の構築方法について解説します。

仮想環境の構築
05:55

Pythonの正規表現により、文字列を加工する方法を学びます。

Preview 05:45

文書データ(コーパス)に対して、前処理を行う方法について学びます。

コーパスの前処理
04:59

形態素解析により、文書を単語に分割する方法を学びます。

形態素解析
06:51
+ word2vec
5 lectures 31:54

word2vecについて、概要を学びます。

Preview 09:58

単語をベクトル化する、分散表現について学びます。

分散表現の確認
06:28

分散表現を使って、単語の類似度を測定します。

単語の類似度
04:44

分散表現を使って、単語ベクトル同士の演算を行います。

単語ベクトルの演算
03:33

文章自体をベクトルで表し、文章の類似度を測定します。

文章の類似度
07:11
+ リカレントニューラルネットワーク(RNN)
5 lectures 54:36

リカレントニューラルネットワーク(RNN)について、概要を解説します。

Preview 07:25

フレームワークKerasについて、基礎を学びます。

Kerasの基礎
10:14

Kerasを使って、シンプルなRNNを構築します。

Preview 10:42

RNNで文書の自動生成にトライします。

RNNによる自然言語処理
17:31

RNNが抱える問題に対する対策の一つ、勾配クリッピングについて学びます。

勾配クリッピング
08:44
+ LSTM
6 lectures 39:48

RNNの発展形であるLSTMについて、概要を解説します。

Preview 04:29

LSTM層の仕組みについて、構成する各要素を解説します。

LSTM層の仕組み
04:11

シンプルなLSTMを実装し、学習、予測を行います。

Preview 08:28

LSTMの発展形であるGRUについて、概要を解説します。

GRUの概要
02:58

シンプルなGRUを実装し、学習、予測を行います。

シンプルなGRUの実装
07:59

LSTM、GRUを使って文書を自動生成し、結果を比較します。

LSTM、GRUによる自然言語処理
11:43
+ 文章の生成
5 lectures 01:00:39

Seq2Seqによる対話文の生成について、概要を学びます。

Preview 04:40

最小限の実装で、Seq2Seqのコードを学びます。

Preview 18:07

対話文生成用の訓練データに、前処理を行います。

対話コーパスの前処理
07:59

対話文のコーパスを学習し、訓練済みのモデルを使って対話文を生成します。

対話の学習
21:48

訓練済みモデルの、対話文生成能力を検証します。

対話の検証
08:05
Requirements
  • 自分で調べながら環境構築にトライできる方。
  • 何らかの、オブジェクト指向プログラミングの経験があった方がベターです。
  • WindowsでもMacでも大丈夫です。Linuxのサポートは行いませんが、コードは全ての環境で共通のものです。
  • フレームワークにKerasを使います。
  • 開発環境の構築、Pythonや数学の解説動画は、他のコースのものと重複する場合があります。
Description

本コースは、自然言語処理を学び、チャットボットの開発につなげる講座です。

可能な限りシンプルに、自然言語処理の本質を解説します。

RNNやLSTMを学び、テキストや対話文の生成ができるようになりましょう。


本コースに必要なPythonと数学を習得した上で、単語をベクトル化するword2vec、時系列データを扱うRNNなどを学んでいきます。

これらの技術をベースに、夏目漱石や宮沢賢治、江戸川乱歩の文体を模倣した、テキストの自動生成を行います。

また、Seq2Seqによる対話文の自動生成技術を学び、チャットボット開発につながる対話文の自動生成を行います。

そして、AIに宮沢賢治の文体を学習させて、賢治botを作ります。

ヒトと機械のコミュニケーションについて、可能性を探ってみましょう。


自然言語とは日本語や英語などの我々が普段使う言語のことですが、自然言語処理(Natural Language Processing、NLP)は自然言語をコンピュータで処理する技術のことです。

自然言語処理は検索エンジン、機械翻訳、スパムフィルタ、音声アシスタント、小説の執筆や対話システムなど、様々な分野で活躍しつつあります。

そして、これをベースにしたチャットボットは多くの可能性を秘めており、今後の世界で重要な役割を果たしていくことは間違いないでしょう。

————————————————————

本コースの主な内容は以下の通りです。

開発環境の構築、Pythonや数学の解説動画は、他のコースのものと重複する場合があります。


自然言語処理の準備

→ 環境の用意や前処理など、自然言語処理に必要な準備を行います。


word2vec

→ 単語や文章をベクトル化する技術について学びます。


リカレントニューラルネットワーク(RNN)

→ RNNについて基礎を学び、自然言語処理につなげます。


LSTM

→ RNNの発展形であるLSTMについて学び、自然言語処理につなげます。


文章の自動生成(※近日公開)

→ Seq2Seqにより、対話文を自動生成する方法について学びます。


チャットボットの開発(※近日公開)

→ 自然言語処理の技術を、チャットボットの開発につなげる方法を学びます

————————————————————


本コースでは可能な限り簡単に環境を構築できるように工夫していますが、お手元の環境によってはご自身で調べながの環境構築が必要です。

動画を見るのみでも学習が進められるようになっていますが、可能であればPythonのコードを動かしながら進めるのが望ましいです。

コードがダウンロード可能なので、これをベースにオリジナルの自然言語処理のコードを書いてみることもお勧めです。


修了した方は、学習意欲が刺激されて自然言語処理のことをさらに知りたくなっているかと思います。

Who this course is for:
  • 自然言語処理を効率よく学びたい方。
  • 自然言語処理を敷居が高いと感じている方。
  • 文書や対話文の自動生成に興味のある方。
  • 自然言語処理の技術をベースに、チャットボットを開発したい方。
  • Kerasで自然言語処理を学びたい方。