# 章末小測試

### 1. 語言建模 Pipeline 的順序是什麼？

### 2. Transformer模型的輸出有多少個維度，每個維度分別是什麼？

### 3.下列哪一個是Subword標記(Tokenization)的例子（從分詞的顆粒度來劃分）？

### 4.什麼是模型的 Head 層？

{#if fw === 'pt'}
### 5.什麼是AutoModel？
AutoNLP 產品相混淆了？"
		},
		{
			text: "一個根據Checkpoint(檢查點)返回模型體系結構的對象",
			explain: "確切地說: AutoModel只需要知道初始化的Checkpoint(檢查點)就可以返回正確的體系結構。",
			correct: true
		},
		{
			text: "一種可以自動檢測輸入語言來加載正確權重的模型",
			explain: "不正確; 雖然有些Checkpoint(檢查點)和模型能夠處理多種語言，但是沒有內置的工具可以根據語言自動選擇Checkpoint(檢查點)。您應該前往 Model Hub 尋找完成所需任務的最佳Checkpoint(檢查點)！"
		} 
	]}
/>

{:else}
### 5.什麼是 TFAutoModel？
AutoNLP 產品相混淆了？"
		},
		{
			text: "一個根據Checkpoint(檢查點)返回模型體系結構的對象",
			explain: "確切地說: TFAutoModel只需要知道初始化的Checkpoint(檢查點)就可以返回正確的體系結構。",
			correct: true
		},
		{
			text: "一種可以自動檢測輸入語言來加載正確權重的模型",
			explain: "不正確; 雖然有些Checkpoint(檢查點)和模型能夠處理多種語言，但是沒有內置的工具可以根據語言自動選擇Checkpoint(檢查點)。您應該前往 Model Hub 尋找完成所需任務的最佳Checkpoint(檢查點)！"
		} 
	]}
/>

{/if}

### 6.當將不同長度的序列批處理在一起時，需要進行哪些處理？

### 7.將 SoftMax激活函數應用於序列分類(Sequence Classification)模型的 logits 輸出有什麼意義？

### 8.大多數標記器(Tokenizer)的API以什麼方法為核心？
編碼 ，因為它可以將文本編碼為id，將預測的id解碼為文本",
			explain: "錯! 雖然 編碼 方法確實存在於標記器中，但是它不存在於模型中。"
		},
		{
			text: "直接調用標記器(Tokenizer)對象。",
			explain: "完全正確！標記化器(Tokenizer) 的 __call__方法是一個非常強大的方法，可以處理幾乎任何事情。它也是從模型中獲取預測的方法。",
			correct: true
		},
		{
			text: "pad(填充)",
			explain: "錯! pad(填充)非常有用，但它只是標記器(Tokenizer) API的一部分。"
		},
		{
			text: "tokenize(標記)",
			explain: "可以說，tokenize(標記)方法是最有用的方法之一，但它不是標記器(Tokenizer) API的核心方法。"
		}
	]}
/>

### 9.這個代碼示例中的`result`變量包含什麼？
```py
from transformers import AutoTokenizer

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
result = tokenizer.tokenize("Hello!")
```

__call__ 或 convert_tokens_to_ids方法的作用！"
		},
		{
			text: "包含所有標記(Token)的字符串",
			explain: "這將是次優的，因為Tokenizer會將字符串拆分為多個標記的列表。"
		}
	]}
/>

{#if fw === 'pt'}
### 10.下面的代碼有什麼錯誤嗎？
```py
from transformers import AutoTokenizer, AutoModel

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = AutoModel.from_pretrained("gpt2")

encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)
```

{:else}
### 10.下面的代碼有什麼錯誤嗎？
```py
from transformers import AutoTokenizer, TFAutoModel

tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
model = TFAutoModel.from_pretrained("gpt2")

encoded = tokenizer("Hey!", return_tensors="pt")
result = model(**encoded)
```

{/if}

