-
當(dāng)前位置:首頁 > 創(chuàng)意學(xué)院 > 技術(shù) > 專題列表 > 正文
gpt可以干什么(GPT可以干什么)
大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于gpt可以干什么的問題,以下是小編對此問題的歸納整理,讓我們一起來看看吧。
ChatGPT國內(nèi)免費在線使用,能給你生成想要的原創(chuàng)文章、方案、文案、工作計劃、工作報告、論文、代碼、作文、做題和對話答疑等等
你只需要給出你的關(guān)鍵詞,它就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細,有微信小程序端、在線網(wǎng)頁版、PC客戶端,官網(wǎng):https://ai.de1919.com
本文目錄:
一、UEFI+GPT和UEFI+MBR有什么區(qū)別嗎
有的。uefi+mbr可以裝win10/8/8.1+winxp/win7雙系統(tǒng)。進入BIOS設(shè)置,開uefi就進win10,關(guān)掉uefi就進xp,爽得一批。
至于啟動速度,在uefi模式下gpt與mbr并沒有差別。
題主說得很對,你們不知道不等于不存在,本人就是uefi+mbr。
附圖打打你們的臉。(如果是gpt硬盤,右鍵菜單就是“轉(zhuǎn)換成MBR磁盤”了?。?/p>
二、BERT詳解(附帶ELMo、GPT 介紹)
首先我會詳細闡述 BERT 原理,然后簡單介紹一下 ELMO 以及 GPT
BERT 全稱為 B idirectional E ncoder R epresentation from T ransformer,是 Google 以 無監(jiān)督的方式利用大量無標(biāo)注文本 「煉成」的語言模型,其架構(gòu)為 Transformer 中的 Encoder(BERT=Encoder of Transformer)
我在 Transformer 詳解 中已經(jīng)詳細的解釋了所有 Transformer 的相關(guān)概念,這里就不再贅述
以往為了解決不同的 NLP 任務(wù),我們會為該任務(wù)設(shè)計一個最合適的神經(jīng)網(wǎng)絡(luò)架構(gòu)并做訓(xùn)練,以下是一些簡單的例子
不同的 NLP 任務(wù)通常需要不同的模型,而設(shè)計這些模型并測試其 performance 是非常耗成本的(人力,時間,計算資源)。如果有一個能 直接處理各式 NLP 任務(wù)的通用架構(gòu) 該有多好?
隨著時代演進,不少人很自然地有了這樣子的想法,而 BERT 就是其中一個將此概念付諸實踐的例子
Google 在預(yù)訓(xùn)練 BERT 時讓它同時進行兩個任務(wù):
1. 漏字填空
2. 下個句子預(yù)測
對正常人來說,要完成這兩個任務(wù)非常簡單。只要稍微看一下前后文就知道完形填空任務(wù)中 [MASK] 里應(yīng)該填 退了 ;而 醒醒吧 后面接 你沒有妹妹 也十分合理(?)
接下來我會分別詳細介紹論文中這兩個任務(wù)的設(shè)計細節(jié)
在 BERT 中,Masked LM(Masked Language Model)構(gòu)建了語言模型,簡單來說,就是 隨機遮蓋或替換 一句話里面的任意字或詞,然后讓模型通過上下文預(yù)測那一個被遮蓋或替換的部分,之后 做 Loss 的時候也只計算被遮蓋部分的 Loss ,這其實是一個很容易理解的任務(wù),實際操作如下:
這樣做的好處是,BERT 并不知道 [MASK] 替換的是哪一個詞,而且 任何一個詞都有可能是被替換掉的,比如它看到的 apple 可能是被替換的詞 。這樣強迫模型在編碼當(dāng)前時刻詞的時候 不能太依賴當(dāng)前的詞 ,而要考慮它的上下文,甚至根據(jù)上下文進行 "糾錯"。比如上面的例子中,模型在編碼 apple 時,根據(jù)上下文 my dog is,應(yīng)該 把 apple 編碼成 hairy 的語義而不是 apple 的語義
我們首先拿到屬于上下文的一對句子,也就是兩個句子,之后我們要在這兩個句子中加一些特殊的 token: [CLS]上一句話[SEP]下一句話[SEP] 。也就是在句子開頭加一個 [CLS] ,在兩句話之間和句末加 [SEP] ,具體地如下圖所示
可以看到,上圖中的兩句話明顯是連續(xù)的。如果現(xiàn)在有這么一句話 [CLS] 我的狗很可愛 [SEP] 企鵝不擅長飛行 [SEP] ,可見這兩句話就 不是連續(xù)的 。在實際訓(xùn)練中,我們會讓這兩種情況出現(xiàn)的數(shù)量為** 1:1**
Token Embedding 就是正常的詞向量,即 PyTorch 中的 nn.Embedding()
Segment Embedding 的作用是用 embedding 的信息讓模型 分開上下句 ,我們給上句的 token 全 0,下句的 token 全 1,讓模型得以判斷上下句的起止位置,例如
Position Embedding 和 Transformer 中的不一樣,不是三角函數(shù),而是 學(xué)習(xí)出來的
BERT 預(yù)訓(xùn)練階段實際上是將上述兩個任務(wù)結(jié)合起來,同時進行,然后將所有的 Loss 相加,例如
BERT 的 Fine-Tuning 共分為 4 種類型,以下內(nèi)容、圖片均來自臺大李宏毅老師 Machine Learning 課程 (以下內(nèi)容 圖在上,解釋在下)
為什么要用CLS?
這里李宏毅老師有一點沒講到,就是為什么要用第一個位置,即 [CLS] 位置的 output。這里我看了網(wǎng)上的一些博客,結(jié)合自己的理解解釋一下。因為 BERT 內(nèi)部是 Transformer,而 Transformer 內(nèi)部又是 Self-Attention, 所以 [CLS] 的 output 里面肯定含有整句話的完整信息 ,這是毋庸置疑的。但是 Self-Attention 向量中,自己和自己的值其實是占大頭的,現(xiàn)在假設(shè)使用 的 output 做分類,那么這個 output 中實際上會更加看重 ,而 又是一個有實際意義的字或詞,這樣難免會影響到最終的結(jié)果。但是 [CLS] 是沒有任何實際意義的,只是一個占位符而已,所以就算 [CLS] 的 output 中自己的值占大頭也無所謂。當(dāng)然你 也可以將所有詞的 output 進行 concat,作為最終的 output
首先將問題和文章通過 [SEP] 分隔,送入 BERT 之后,得到上圖中黃色的輸出。此時我們還要訓(xùn)練兩個 vector,即上圖中橙色和黃色的向量。首先將橙色和所有的黃色向量進行 dot product,然后通過 softmax,看哪一個輸出的值最大,例如上圖中 對應(yīng)的輸出概率最大,那我們就認為 s=2
同樣地,我們用藍色的向量和所有黃色向量進行 dot product,最終預(yù)測得 的概率最大,因此 e=3。最終,答案就是 s=2,e=3
你可能會覺得這里面有個問題,假設(shè)最終的輸出 s>e 怎么辦,那不就矛盾了嗎?其實在某些訓(xùn)練集里,有的問題就是沒有答案的,因此此時的預(yù)測搞不好是對的,就是沒有答案
以上就是 BERT 的詳細介紹,參考以下文章
ELMo是Embedding from language Model的縮寫,它通過無監(jiān)督的方式對語言模型進行預(yù)訓(xùn)練來學(xué)習(xí)單詞表示
這篇論文的想法其實非常簡單,但是效果卻很好。它的思路是用 深度的雙向 Language Model 在大量未標(biāo)注數(shù)據(jù)上訓(xùn)練語言模型 ,如下圖所示
在實際任務(wù)中,對于輸入的句子,我們使用上面的語言模型來處理它,得到輸出向量,因此這可以看作是一種 特征提取 。但是 ELMo 與普通的 Word2Vec 或 GloVe 不同,ELMo 得到的 Embedding 是 有上下文信息 的
具體來說,給定一個長度為 N 的句子,假設(shè)為 ,語言模型會計算給定 的條件下出現(xiàn) 的概率:
傳統(tǒng)的 N-gram 模型 不能考慮很長的歷史 ,因此現(xiàn)在的主流是使用 多層雙向 LSTM 。在時刻 ,LSTM 的第 層會輸出一個隱狀態(tài) ,其中 , 是 LSTM 的層數(shù)。最上層是 ,對它進行 softmax 之后得到輸出詞的概率
類似的,我們可以用 一個反向 來計算概率:
通過這個 LSTM,我們可以得到 。我們的損失函數(shù)是這兩個 LSTM 的 加和 :
這兩個 LSTM 有各自的參數(shù) 和 ,而 Word Embedding 參數(shù) 和 Softmax 參數(shù) 是共享的
為了用于下游(DownStream)的特定任務(wù),我們會把不同層的隱狀態(tài)組合起來,具體組合的參數(shù)是根據(jù)不同的特定任務(wù)學(xué)習(xí)出來的,公式如下:
GPT 得到的語言模型參數(shù)不是固定的,它會根據(jù)特定的任務(wù)進行調(diào)整(通常是微調(diào)),這樣的到的句子表示能更好的適配特定任務(wù)。它的思想也很簡單,使用 單向 Transformer 學(xué)習(xí)一個語言模型 ,對句子進行無監(jiān)督的 Embedding,然后 根據(jù)具體任務(wù)對 Transformer 的參數(shù)進行微調(diào) 。GPT 與 ELMo 有兩個主要的區(qū)別:
這里解釋一下上面提到的 單向 Transformer 。在 Transformer 的文章中,提到了 Encoder 與 Decoder 使用的 Transformer Block 是不同的。在 Decoder Block 中,使用了 Masked Self-Attention ,即句子中的每個詞都只能對 包括自己在內(nèi)的前面所有詞進行 Attention ,這就是單向 Transformer。GPT 使用的 Transformer 結(jié)構(gòu)就是將 Encoder 中的 Self-Attention 替換成了 Masked Self-Attention ,具體結(jié)構(gòu)如下圖所示
訓(xùn)練的過程也非常簡單,就是將 n 個詞的詞嵌入 ( ) 加上位置嵌入 ( ),然后輸入到 Transformer 中,n 個輸出分別預(yù)測該位置的下一個詞
這里的位置編碼沒有使用傳統(tǒng) Transformer 固定編碼的方式,而是動態(tài)學(xué)習(xí)的
Pretraining 之后,我們還需要針對特定任務(wù)進行 Fine-Tuning。假設(shè)監(jiān)督數(shù)據(jù)集合 的輸入 是一個詞序列 ,輸出是一個分類的標(biāo)簽 ,比如情感分類任務(wù)
我們把 輸入 Transformer 模型,得到最上層最后一個時刻的輸出 ,將其通過我們新增的一個 Softmax 層(參數(shù)為 )進行分類,最后用 CrossEntropyLoss 計算損失,從而根據(jù)標(biāo)準(zhǔn)數(shù)據(jù)調(diào)整 Transformer 的參數(shù)以及 Softmax 的參數(shù) 。這等價于最大似然估計:
正常來說,我們應(yīng)該調(diào)整參數(shù)使得 最大,但是 為了提高訓(xùn)練速度和模型的泛化能力 ,我們使用 Multi-Task Learning,同時讓它最大似然 和
這里使用的 還是之前語言模型的損失(似然),但是使用的數(shù)據(jù)不是前面無監(jiān)督的數(shù)據(jù) ,而是使用當(dāng)前任務(wù)的數(shù)據(jù) ,而且只使用其中的 ,而不需要標(biāo)簽
針對不同任務(wù),需要簡單修改下輸入數(shù)據(jù)的格式,例如對于相似度計算或問答,輸入是兩個序列,為了能夠使用 GPT,我們需要一些特殊的技巧把兩個輸入序列變成一個輸入序列
ELMo 和 GPT 最大的問題就是 傳統(tǒng)的語言模型是單向的 —— 我們根據(jù)之前的歷史來預(yù)測當(dāng)前詞。但是我們不能利用后面的信息。比如句子 The animal didn’t cross the street because it was too tired 。我們在編碼 it 的語義的時候需要同時利用前后的信息,因為在這個句子中, it 可能指代 animal 也可能指代 street 。根據(jù) tired ,我們推斷它指代的是 animal 。但是如果把 tired 改成 wide ,那么 it 就是指代 street 了。傳統(tǒng)的語言模型,都 只能利用單方向的信息 。比如前向的 RNN,在編碼 it 的時候它看到了 animal 和 street ,但是它還沒有看到 tired ,因此它不能確定 it 到底指代什么。如果是后向的 RNN,在編碼的時候它看到了 tired ,但是它還根本沒看到 animal ,因此它也不能知道指代的是 animal 。 Transformer 的 Self-Attention 理論上是可以同時關(guān)注到這兩個詞的,但是根據(jù)前面的介紹,為了使用 Transformer 學(xué)習(xí)語言模型,必須 用 Mask 來讓它看不到未來的信息 ,所以它也不能解決這個問題的
根據(jù)上文內(nèi)容預(yù)測下一個可能跟隨的單詞,就是常說的自左向右的語言模型任務(wù),或者反過來也行,就是根據(jù)下文預(yù)測前面的單詞,這種類型的LM被稱為自回歸語言模型。(GPT,ELMO)GPT 就是典型的自回歸語言模型。ELMO盡管看上去利用了上文,也利用了下文,但是本質(zhì)上仍然是自回歸LM,這個跟模型具體怎么實現(xiàn)有關(guān)系。ELMO是做了兩個方向(從左到右以及從右到左兩個方向的語言模型),但是是分別有兩個方向的自回歸LM,然后把LSTM的兩個方向的隱節(jié)點狀態(tài)拼接到一起,來體現(xiàn)雙向語言模型這個事情的。所以其實是兩個自回歸語言模型的拼接,本質(zhì)上仍然是自回歸語言模型。
自回歸語言模型有優(yōu)點有缺點,缺點是只能利用上文或者下文的信息,不能同時利用上文和下文的信息,當(dāng)然,貌似ELMO這種雙向都做,然后拼接看上去能夠解決這個問題,因為融合模式過于簡單,所以效果其實并不是太好。它的優(yōu)點,其實跟下游NLP任務(wù)有關(guān),比如生成類NLP任務(wù),比如文本摘要,機器翻譯等,在實際生成內(nèi)容的時候,就是從左向右的, 自回歸語言模型天然匹配這個過程 。而Bert這種DAE模式,在生成類NLP任務(wù)中,就面臨訓(xùn)練過程和應(yīng)用過程不一致的問題,導(dǎo)致 生成類的NLP任務(wù)到目前為止都做不太好 。
自回歸語言模型只能根據(jù)上文預(yù)測下一個單詞,或者反過來,只能根據(jù)下文預(yù)測前面一個單詞。相比而言,Bert通過 在輸入X中隨機Mask掉一部分單詞 ,然后預(yù)訓(xùn)練過程的主要任務(wù)之一是根據(jù)上下文單詞來預(yù)測這些被Mask掉的單詞,如果你對Denoising Autoencoder比較熟悉的話,會看出,這確實是典型的DAE的思路。那些被Mask掉的單詞就是在輸入側(cè)加入的所謂噪音。類似Bert這種預(yù)訓(xùn)練模式,被稱為DAE LM。
這種DAE LM的優(yōu)缺點正好和自回歸LM反過來,它能比較自然地融入雙向語言模型,同時看到被預(yù)測單詞的上文和下文,這是好處。缺點是啥呢? 主要在輸入側(cè)引入[Mask]標(biāo)記,導(dǎo)致預(yù)訓(xùn)練階段和Fine-tuning階段不一致的問題 ,因為Fine-tuning階段是看不到[Mask]標(biāo)記的。DAE嗎,就要引入噪音,[Mask] 標(biāo)記就是引入噪音的手段,這個正常。
XLNet的出發(fā)點就是:能否 融合自回歸LM和DAE LM兩者的優(yōu)點 。就是說如果站在自回歸LM的角度,如何引入和雙向語言模型等價的效果;如果站在DAE LM的角度看,它本身是融入雙向語言模型的,如何拋掉表面的那個[Mask]標(biāo)記,讓預(yù)訓(xùn)練和Fine-tuning保持一致。當(dāng)然,XLNet還講到了一個Bert被Mask單詞之間相互獨立的問題。
三、efi,uefi和bios的區(qū)別,gpt分區(qū)和mbr分區(qū)的區(qū)別
BIOS+MBR和UEFI+GPT兩種模式的區(qū)別:
一般情況下,在安裝官方原版系統(tǒng)時,你使用BIOS傳統(tǒng)啟動方式,你在安裝界面重新分區(qū)就是MBR分區(qū)表;如果你使用的是UEFI啟動方式,你在安裝界面重新分區(qū)就是GPT分區(qū)表。
BIOS+MBR這種啟動模式兼容性較好??梢赃M行安裝 32位和64位系統(tǒng)。
UEFI可以以32位或64位模式運行,并具有比BIOS更多的可尋址地址空間,這意味著您的引導(dǎo)過程更快。
另外,UEFI包含其他功能,它支持安全啟動,這意味著可以檢查操作系統(tǒng)的有效性,以確保沒有惡意軟件篡改引導(dǎo)進程。
總之,BIOS和UEFI兩種模式啟動計算機過程可以概括為:
BIOS先要對CPU初始化,然后跳轉(zhuǎn)到BIOS啟動處進行POST自檢,此過程如有嚴重錯誤,則電腦會用不同的報警聲音提醒,接下來采用讀中斷的方式加載各種硬件,完成硬件初始化后進入操作系統(tǒng)啟動過程;
而UEFI則是運行預(yù)加載環(huán)境先直接初始化CPU和內(nèi)存,CPU和內(nèi)存若有問題則直接黑屏,其后啟動PXE采用枚舉方式搜索各種硬件并加載驅(qū)動,完成硬件初始化,之后同樣進入操作系統(tǒng)啟動過程。
MBR和GPT:
MBR是傳統(tǒng)的分區(qū)表類型,最大缺點是不支持容量大于2T的硬盤。GPT則彌補了MBR這個缺點,最大支持18EB的硬盤,是基于UEFI使用的磁盤分區(qū)架構(gòu)。此外,BIOS只支持MBR引導(dǎo)系統(tǒng),而GPT僅支持UEFI引導(dǎo)系統(tǒng)。由于GPT引導(dǎo)系統(tǒng)的方式與MBR不同,所以我們在安裝系統(tǒng)時,才面臨需要手動開啟UEFI,或是將其設(shè)置成Legacy模式等方式加以解決。
目前的電腦一般為UEFI啟動,內(nèi)存大于4G,安裝32位系統(tǒng)意義不大;對于老主板還是建議使用BIOS+MBR,這種模式較為穩(wěn)定。
四、我的筆記本是win10系統(tǒng),這幾個看不見的分區(qū)都是干什么用的呢?
MSR分區(qū)即Microsoft保留(Microsoft Reserved Partition)分區(qū)
ESP分區(qū)是EFI系統(tǒng)分區(qū)(EFI system partition)
WINRE_DRV是聯(lián)想自帶的Windows恢復(fù)環(huán)境(WinRE),在開機時按ThinkVantage鍵或F11鍵即可進入。WinRE 建立在WinPE的基礎(chǔ)上,因此有“命令提示符”功能,這樣就不用另備WinPE啟動盤了。
Lenovo Recovery 是聯(lián)想公司(Lenovo)為系統(tǒng)恢復(fù)出廠設(shè)置而制作的一個原廠預(yù)裝軟件的備份,即在此分區(qū)中提供了一份原廠預(yù)裝軟件的副本。
LRS_ESP是聯(lián)想一鍵還原的Windows PE系統(tǒng)啟動分區(qū),聯(lián)想一鍵還原軟件也安裝在此分區(qū)
以上就是關(guān)于gpt可以干什么相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進行咨詢,客服也會為您講解更多精彩的知識和內(nèi)容。
推薦閱讀:
文鼎廣場景觀設(shè)計(文鼎廣場景觀設(shè)計招聘)