# 章末クイズ

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

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

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

-100 を使ってラベル付けしています。",
			explain: "これはトークン分類に限ったことではありません。損失で無視したいトークンのラベルには、常に-100を使用します。"
		},
		{
			text: "単語を切り捨て/パディングを適用する際に、ラベルも入力と同じサイズに切り捨てるかパディングする必要があります。",
			explain: "確かに! しかし、それだけが違いではありません。",
			correct: true
		}
	]}
/>

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

-100の特別なラベルを付ける事ができます。"
		},
		{
			text: "各単語は複数のトークンを生成できるため、ラベルの数よりも多くのトークンを持つことになります。",
			explain: "これが主な問題になります。元のラベルとトークンを揃える必要があります。",
			correct: true
		},
		{
			text: "追加されたトークンはラベルを持たないので、問題はありません。",
			explain: "それは正しくありません。トークンと同じ数のラベルが必要です。そうしないと、モデルがエラーになります。"
		}
	]}
/>

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

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

らすことは次の単語を予測することに相当し、これは因果言語モデリングです。"
		},
		{
			text: "入力文の一部のトークンをランダムにマスクし、その文が肯定的か否定的かをラベルとします。",
			explain: "これはデータ拡張を伴うシーケンス分類の問題で、マスク言語モデリングではありません。"
		},
        {
			text: "2つの入力文のトークンの一部がランダムにマスクされた後、ラベルとは2つの文が類似しているかどうかになります。",
			explain: "これはデータ拡張を伴うシーケンス分類の問題であり>、マスク言語モデリングではありません。"
		}
	]}
/>

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

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

inputs=...とtargets=...で一緒にトークナイザーに送らなければなりません。",
			explain: "これは将来的に>追加するAPIかもしれませんが、今はまだ不可能です。"
		},
		{
			text: "入力とターゲットの両方を前処理する必要があり、トークナイザーを2回別々に呼び出す必要があります。",
			explain: "その通りですが、不完全です。トークナイザーが両方を適切に処理できるようにするために必要なことがあります。"
		},
		{
			text: "いつも通り、入力をトークン化すればいいだけです。",
			explain: "シーケンス分類の問題ではありません。ターゲットも数値に変換する必要があるテキストです！"
		},
        {
			text: "入力はトークナイザーに送られなければなりません。ターゲットもですが、特別なコンテキストマネージャーの下で送らなければなりません。",
			explain: "その通りです。トークナイザは、そのコンテキストマネージャによってターゲットモードにする必要があります。",
			correct: true
		}
	]}
/>

{#if fw === 'pt'}

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

-100に設定されたラベルを無視するためです。",
			explain: "それはカスタム損失固有の問題ではなく、損失が計算される際は常にそうなります。"
		},
		{
			text: "シーケンス間問題には特別な評価ループが必要だからです。",
			explain: "その通りです。シーケンス間モデルの予測は generate()メソッドで実行されることが多いです。",
			correct: true
		},
		{
			text: "シーケンス間問題ではターゲットがテキストになるためです。",
			explain: "事前に前処理されているので、Trainerはあまり気にしません。"
		},
        {
			text: "シーケンス間問題では2つのモデルを使用するためです。",
			explain: "ある意味2つのモデルを使用しています。エンコーダーとデコーダーですが、1つのモデルにまとめられています。"
		}
	]}
/>

{:else}

### 9. Transformerモデルで `compile()` を呼び出す際に、損失を指定する必要がないことが多いのはなぜですか？

{/if}

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

て、データ上で微調整を行うべきでしょう。"
		},
		{
			text: "使用している事前学習済みモデルのバイアスに懸念がある場合",
			explain: "その通りですが、学習に使用するデータが本当に良いものであることをよく確認する必要があります。",
			correct: true
		},
        {
			text: "利用できる事前学習済みモデルが十分に良い性能ではない場合",
			explain: "学習時にきちんとデバッグができていますか？"
		}
	]}
/>

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

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

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

