PyTorch自然言語処理プログラミング word2vec/LSTM/seq2seq/BERTで日本語テキスト解析!|978STORE

978STORE

【978STORE キュー・ナナ・ハチ ストア】は市販書籍の電子版・電子オリジナル書籍・オンデマンド書籍が買えるお店です

2950111311000000000M.jpg

購入形態

PDF
3,080円
数量:

カートに追加されました。カートを見る

カートに入れる
紙の本を買う

PyTorch自然言語処理プログラミング word2vec/LSTM/seq2seq/BERTで日本語テキスト解析!

インプレス

PyTorchで日本語テキスト解析をより容易に実装!

日本語テキスト解析処理を快速プログラミング!
単語/文書の分類、機械翻訳などを実装。

自然言語処理は、検索エンジン、自動要約、機械翻訳、音声認識などで利用される技術です。
PyTorchでは、特にTransformersというBERT系モデルを提供することで、
より簡単にBERTを利用できるようになっています。
本書では、自然言語処理で特に重要なディープラーニング技術である
word2vec、LSTM、seq2seq、そしてBERTを取り上げます。

まず第1章でPyTorchの基本を説明します。そのあと各技術の考え方を説明し、
PyTorchを使ったそれぞれのプログラミング手法を解説します。
それらのプログラミングでは、以下のことなどを目的にしています。

・単語や文書の類似度を測る
・文章内の単語の品詞を分類する
・日英の機械翻訳を実行する
・文書を分類する
・質問/回答タスクを実行する

【本書の構成】
第1章 PyTorchの基礎
第2章 word2vecによる分散表現 ~単語をベクトルで表現~
第3章 LSTMによる時系列データ解析 ~文を単語の系列として解析~
第4章 seq2seqモデルによる機械翻訳 ~ある系列を別の系列に変換~
第5章 事前学習済みモデルBERTの活用 ~タスクに応じてモデルを調整~
付録A プログラミング環境の構築(Windows)
付録B 本書で解説した主要プログラム集

※本書の内容はPython/PyTorch/機械学習の基本事項を
理解されていることを前提としています。

発売日:2021-03-18

ページ数:256ページ

目次

表紙
サンプルコード・商標・免責
まえがき
第1章 PyTorchの基礎
1.1 Tensorとは
1.2 Tensorの演算と操作
1.3 Tensorの自動微分
1.4 PyTorchの学習プログラムの作成/1.4.1 プログラムのひな形
1.4.2 ライブラリの読み込み/1.4.3 学習データの準備
1.4.4 モデルの設定
1.4.5 モデルの生成、最適化アルゴリズムと損失関数の設定
1.4.6 学習
1.4.7 テスト
1.4.8 実行/1.4.9 ミニバッチ
1.4.10 GPUの利用
第2章 word2vecによる分散表現 ~単語をベクトルで表現~
2.1 分散表現とは何か
2.2 word2vecによる分散表現の構築
2.3 gensimによる分散表現の構築
2.4 既存の分散表現とその読み込み
2.5 分散表現の利用方法
2.6 doc2vecによる文書間類似度
2.7 Word Mover Distanceによる文間距離
2.8 fastText
第3章 LSTMによる時系列データ解析 ~文を単語の系列として解析~
3.1 LSTMとは何か
3.2 LSTMの入出力
3.3 LSTMの学習
3.4 LSTMの推論
3.5 LSTMのバッチ処理
3.6 多層LSTM
3.7 双方向LSTM
第4章 seq2seqモデルによる機械翻訳 ~ある系列を別の系列に変換~
4.1 seq2seqモデルとは何か
4.2 NMTの学習
4.3 NMTのモデルによる翻訳
4.4 BLEUによるNMTの評価
4.5 Attentionの導入
4.6 Attention付きNMTのモデルによる翻訳
4.7 バッチ処理への改良
4.8 SentencePieceによる単語分割
第5章 事前学習済みモデルBERTの活用 ~タスクに応じてモデルを調整~
5.1 BERTとは
5.2 Self-Attentionとは
5.3 既存BERTモデルの利用
5.4 BERTの入出力
5.5 BERTの各層の情報の取り出し
5.6 Tokenizer
5.7 BertForMaskedLMの利用
5.8 ローカルにあるモデルからの読み込み
5.9 BERTを利用した文書分類の実装/5.9.1 訓練データとテストデータの作成
5.9.2 文書分類モデルの設定
5.9.3 最適化関数の設定
5.9.4 モデルの学習
5.9.5 モデルによる推論
5.9.6 BERTのバッチ処理
5.9.7 パラメータ凍結によるfeature basedの実装
5.9.8 BertForSequenceClassificationの利用
5.9.9 識別の層とBERTの上位層のみの学習
5.10 BERTを利用した品詞タガーの実装/5.10.1 データの準備
5.10.2 モデルの設定
5.10.3 学習
5.10.4 推論
5.11 DistilBERT
5.11.1 既存のDistilBERTモデルの利用
5.11.2 DistilBERTを用いたMASK単語の推定
5.11.3 DistilBERTを用いた文書分類
5.11.4 Laboro版DistilBERTを用いた文書分類
5.12 SentenceBERT
5.12.1 既存のSentenceBERTモデルの利用
5.12.2 バッチに対する平均ベクトルの算出
5.12.3 SentenceBERTを用いた文書分類
5.13 2文入力のタスクに対するBERTの利用
5.13.1 2文入力タイプのBERTの入出力
5.13.2 2文入力タイプのタスク
5.13.3 HuggingFaceの登録モデルの利用
5.13.4 BERTを利用した含意関係認識
5.13.5 BERTを利用したQAタスク
付録A プログラミング環境の構築(Windows)
A.1 Anaconda/A.2 PyTorch
A.3 CUDA
付録B 本書で解説した主要プログラム集
B.1 iris0.py
B.2 lstm.py
B.3 nmt.py
B.4 att-nmt.py
B.5 doccls.py
B.6 doccls4.py
B.7 bert-tagger.py
参考文献
あとがき
索引
著者プロフィール・STAFF LIST
奥付

著者プロフィール

  • 新納 浩幸(著者)

    ◎新納 浩幸(しんのう ひろゆき)
    1961年生まれ。1985年 東京工業大学理学部情報科学科卒業。
    1987年 東京工業大学大学院理工学研究科情報科学専攻修士課程修了。
    現在、茨城大学工学部情報工学科教授、博士(工学)。
    専門分野は自然言語処理、機械学習、統計学など。
    2018年から言語処理学会 理事を務める。