Pytorch
TensorFlow

# 章末クイズ

この章で学んだことをテストしてみましょう！

###
1. 次のタスクのうち、トークン分類問題として組み立てられるものはどれでしょうか？

文中の文法的な構成要素を見つける。 文が文法的に正しいかどうかを調べる。 文中で言及されている人物を見つける。 質問の答えとなる単語の塊を文中から見つける。

###
2. トークン分類のための前処理は、他の前処理パイプラインとどの部分が違うのでしょうか？

何もする必要はありません。テキストはすでにトークン化されています。 テキストは単語として与えられているので、サブワード トークン化を適用するだけです。 特殊なトークンには `-100` を使ってラベル付けしています。 単語を切り捨て/パディングを適用する際に、ラベルも入力と同じサイズに切り捨てるかパディングする必要があります。

###
3.トークン分類問題で単語をトークン化し、そのトークンにラベルを付けたい場合、どのような問題がありますか？

トークナイザーは特別なトークンを追加しますが、それに対応するラベルがありません。 各単語は複数のトークンを生成できるため、ラベルの数よりも多くのトークンを持つことになります。 追加されたトークンはラベルを持たないので、問題はありません。

###
4. 「ドメイン適応」とはどういう意味ですか？

あるデータセットに対してモデルを実行し、そのデータセット内の各サンプルに対する予測値を得ることです。 あるデータセットでモデルを学習することです。 事前に学習したモデルを新しいデータセットを微調整することで、そのデータセットに適応した予測をすることです。 モデルをより堅牢にするために、誤分類されたサンプルをデータセットに追加することです。

###
5. マスク言語モデリング問題におけるラベルとは何ですか？

入力文の一部のトークンはランダムにマスクされます。ラベルは元の入力トークンです。 入力文のいくつかのトークンはランダムにマスクされ、ラベルは元の入力トークンを左にシフトしたものです。 入力文の一部のトークンをランダムにマスクし、その文が肯定的か否定的かをラベルとします。 2つの入力文のトークンの一部がランダムにマスクされた後、ラベルとは2つの文が類似しているかどうかになります。

###
6. 以下の作業のうち、シーケンス間問題と見なせるものはどれですか？

長い文書の短いレビューを書く 文書に関する質問に答える 中国語の文章を英語に翻訳する 甥っ子/友人が送ってきたメッセージを正しい英語に直す

###
7. シーケンス間問題におけるデータの前処理はどのように行うのが適切でしょうか？

入力とターゲットは`inputs=...`と`targets=...`で一緒にトークナイザーに送らなければなりません。 入力とターゲットの両方を前処理する必要があり、トークナイザーを2回別々に呼び出す必要があります。 いつも通り、入力をトークン化すればいいだけです。 入力はトークナイザーに送られなければなりません。ターゲットもですが、特別なコンテキストマネージャーの下で送らなければなりません。

###
8. なぜシーケンス間問題には `Trainer` の特定のサブクラスが存在するのでしょうか？

シーケンス間問題はカスタム損失を使い、`-100`に設定されたラベルを無視するためです。 シーケンス間問題には特別な評価ループが必要だからです。 シーケンス間問題ではターゲットがテキストになるためです。 シーケンス間問題では2つのモデルを使用するためです。

###
10. 新しいモデルの事前学習はいつ行うべきですか？

特定の言語で利用できる事前学習済みモデルがない場合 たとえ事前学習済みモデルがあったとしても、利用可能なデータがたくさんある場合 使用している事前学習済みモデルのバイアスに懸念がある場合 利用できる事前学習済みモデルが十分に良い性能ではない場合

###
11. なぜ、たくさんのテキストで言語モデルを事前学習する事は簡単なのですか？

インターネット上にたくさんのテキストがあるからです。 事前学習の目的では人間がデータにラベル付けする必要がないからです 🤗 Transformers は数行のコードで学習を開始することができるからです。

###
12. 質問応答タスクのためにデータを前処理する際の主な課題は何ですか？

入力をトークン化する必要があります。 非常に長い文脈を扱う必要があり、その中には、答えに繋がるかどうかわからないいくつかの学習対象となる特徴があります。 入力だけでなく、質問に対する答えもトークン化する必要があります。 テキスト内の回答の範囲から、トークン化された入力の開始と終了のトークンを見つけなければなりません。

###
13. 質問応答では通常どのように後処理が行われますか？

モデルが回答の開始と終了の位置を与えるので、対応するトークンの範囲をデコードするだけです。 モデルは、1つの例文から作成した各特徴の開始位置と終了位置を与えるので、最も良いスコアを持つものの中から対応するトークンの範囲を解読すればよいです。 このモデルでは、1つの例文から作成した各特徴の答えの開始位置と終了位置を与えるので、ベストスコアを出した方のコンテキストの範囲に合わせればいいだけです。 モデルが答えを生成するので、あなたはそれを解読すればいいだけです。