過去的一年裡,隨著DALL-E 2,Stable Diffusion等圖像生成模型的發布,text-to-image模型生成的圖像在分辨率、質量、文本忠實度等方面都得到了飛躍性提升,極大促進了下游應用場景的開發,人人都成了AI畫家。
但相關研究表明,目前的生成模型技術仍然存在一個重大缺陷:無法在圖像中呈現可靠的視覺文本。
有研究結果表明,DALL-E 2在圖片中產生連貫文字字元上非常不穩定,而最新發布的Stable Diffusion模型則是直接將「無法呈現可讀的文本”列為已知的限制。
字元拼字錯誤:(1) California: All Dreams Welcome, (2) Canada: For Glowing Hearts, (3) Colorado : It's Our Nature, (4) St. Louis: All Within Reach.
#最近Google Research發布了一篇新論文,試圖了解並提高圖像生成模型渲染高品質視覺文本的能力。
論文連結:https://arxiv.org/abs/2212.10562
研究人員認為當下的text-to-image生成模型模型存在文字渲染缺陷的主要原因是缺乏字元級的輸入特徵。
為了量化該輸入特徵在模型產生中的影響,文章中設計了一系列控制實驗對是否包含文字輸入特徵的文字編碼器(character-aware和character-blind )進行對比。
研究人員發現,在純文字領域,character-aware模型在一個新的拼字任務(WikiSpell)上獲得了很大的效能效益。
將該經驗遷移到視覺領域後,研究人員訓練了一套圖像生成模型。實驗結果顯示character-aware模型在一系列新的文字渲染任務(DrawText基準)中比character-blind更勝一籌。
並且character-aware模型在視覺拼字方面達到了更高的技術水平,儘管訓練的範例數量少得多,其在不常見的單字上的準確率仍然比競爭模型高出30多個百分點。
語言模型可分為直接存取構成其文字輸入字元的character-aware模型和無法存取的character-blind模型。
許多早期的神經語言模型直接在字元上進行操作,而不使用多重字元的token作為標記。
後來的模型逐漸轉向基於詞彙表的tokenization,其中一些模型如ELMo仍然保留了character-aware,但其他模型如BERT則放棄了字符特徵以支持更有效的預訓練。
目前,大多數廣泛使用的語言模型是character-blind的,依靠資料驅動的子詞(subword)分割演算法,如位元組對編碼(BPE)來產生子詞pieces作為詞彙表。
雖然這些方法對於不常見的序列可以退回到字元層級表示,但它們在設計上仍然會將常見的字元序列壓縮成不可分割的單元。
這篇論文的主要目的是試圖了解並提高圖像生成模型渲染高品質視覺文字的能力。
為此,研究人員首先孤立地研究了當下文字編碼器的拼字能力,從實驗結果可以發現,儘管character-blind文字編碼器很受歡迎,但它們沒有收到關於其輸入的字元級構成的直接訊號,導致其拼字能力有限。
研究人員也測試了不同規模、架構、輸入表示、語言和調整方法的文字編碼器的拼字能力。
這篇論文首次記錄了character-blind模型透過網路預訓練誘導強大的拼字知識(準確率>99%)的神奇能力,但實驗結果顯示這項能力在英語以外的語言中並沒有很好的泛化,而且只有在超過100B參數的規模下才能實現,所以對於大多數應用場景是不可行的。
另一方面,character-aware的文字編碼器能夠在更小的尺度上實現強大的拼字能力。
在將這些發現應用於圖像生成場景時,研究人員訓練了一系列character-aware的文本到圖像的模型,並證明它們在現有的和新的文本渲染的評估中明顯優於字元盲目的模型。
但對於純字元級模型來說,雖然文字渲染的效能提升了,但對於不涉及視覺文字的prompt,圖像-文字對齊度則會下降。
為了緩解這個問題,研究人員建議將字元級和token級的輸入表徵結合起來,從而可以實現最佳的效能。
由於文字到圖像的生成模型依賴於文字編碼器來產生用於解碼的表徵,研究人員首先從Wiktionary中取樣一些單字創建了WikiSpell基準,然後基於此資料集在一個純文字的拼字評估任務來探索文字編碼器的能力。
對於WikiSpell中的每個範例,模型的輸入是一個單詞,預期的輸出是它的特定拼字(透過在每個Unicode字元之間插入空格來產生)。
由於文章僅對研究一個單字的頻率和模型的拼字能力之間的關係感興趣,所以研究人員根據單字在mC4語料庫中出現的頻率,將Wiktionary中的詞分成五個互不重疊的桶:最頻繁的前1%的詞,最頻繁的1-10%的詞,10-20%的詞,20-30%的詞,以及最低的50%的詞(包括在語料庫中從未出現過的詞)。
然後從每個桶中均勻地抽取1000個字來建立一個測試集(以及一個類似的開發集)。
最後透過結合兩部分建立了一個由10,000個字組成的訓練集:5,000個從最底層的50%桶(最不常見的詞)中統一取樣,另外5,000個根據它們在mC4中的頻率按比例取樣(從而使這一半的訓練集偏向頻繁的詞)。
研究者將任何被選入開發集或測試集的單字排除在訓練集之外,因此評估結果總是針對被排除的單字。
除了英語外,研究人員也對其他六種語言(阿拉伯語、中文、芬蘭語、韓語、俄語、泰語)進行評估,選擇這些語言是為了涵蓋影響模型學習拼字能力的各種特性,對每一種語言的評估都重複上述資料集建構過程。
研究人員使用WikiSpell基準來評估多種預訓練的純文字模型在不同規模上的表現,包括T5(一個在英語數據上預訓練的character-blind編碼解碼器模型);mT5(與T5類似,但在超過100種語言上預先訓練);ByT5(mT5的character-aware版本,直接在UTF-8位元組序列上操作) ;以及PaLM(一個規模更大的解碼模型,主要是在英語上預先訓練的)。
在純英語和多語言的實驗結果中,可以發現character-blind模型T5和mT5在包含Top-1%最頻繁詞彙的桶上的表現要差很多。
這個結果似乎是反直覺的,因為模型通常在資料中頻繁出現的例子上表現最好,但由於subword詞彙的訓練方式,頻繁出現的單字通常被表示為一個單一的原子標記(或少量的標記),事實上也是如此:在英語前1%的桶中,87%的詞被T5的詞彙表示為一個子詞標記。
因此,較低的拼字準確度分數表明,T5的編碼器沒有保留足夠的關於其詞彙中subword的拼字資訊。
其次,對於character-blind模型,規模是影響拼字能力的重要因素。 T5和mT5都隨著規模的增加而逐漸變好,但即使在XXL規模下,這些模型也沒有表現出特別強的拼字能力。
只有當character-blind模型達到PaLM的規模時,才開始看到近乎完美的拼字能力:540B參數的PaLM模型在英文的所有頻率桶中都達到了> 99%的準確率,儘管它在提示中只看到20個例子(而T5顯示的是1000個微調例子)。
然而,PaLM在其他語言上的表現較差,可能是由於這些語言的預訓練資料少得多。
對ByT5的實驗表明,character-aware模型表現出更強大的拼字能力。 ByT5在Base和Large尺寸下的表現僅略微落後於XL和XXL(儘管仍然至少在90%的範圍內),而且一個字的頻率似乎對ByT5的拼字能力沒有太大影響。
ByT5的拼字表現遠遠超過了(m)T5的結果,甚至與參數多於100倍的PaLM的英文表現相當,並且超過了PaLM在其他語言上的表現。
從而可知ByT5編碼器保留了相當多的字元級訊息,而且這些資訊可以根據解碼任務的需要從這些凍結的參數中檢索出來。
從2014年發布的COCO資料集到2022年的DrawBench基準,從FID, CLIP得分到人類偏好等指標,如何評估text- to-image模型一直是重要的研究主題。
但目前在文字渲染和拼字評估方面一直缺乏相關工作。
為此,研究人員提出了一個新的基準DrawText,旨在全面衡量文字到圖像模型的文字渲染品質。
DrawText基準由兩部分組成,分別測量模型能力的不同維度:
1)DrawText Spell,透過大量的英語單字集合的普通單字渲染進行評估;
研究人員從英語WikiSpell頻率桶中各抽取100個單詞,並將它們插入一個標準模板中,總共構建了500個提示。
對於每個prompt,從候選模型中抽取4張圖片,並使用人類評分和基於光學字元辨識(OCR)的指標對其進行評估。
2)DrawText Creative,透過視覺效果的文字渲染進行評估。
視覺文本並不局限於像街道標誌那樣的常見場景,文字可以以多種形式出現,如潦草的、繪畫的、雕刻的、雕塑的,等等。
如果圖像生成模型支援靈活且準確的文字渲染,這將使設計師能夠使用這些模型來開發創造性的字體、標誌、佈局等等。
為了測試圖像生成模型支援這些用例的能力,研究人員與一位專業的圖形設計師合作,構建了175個不同的提示,要求在一系列創造性的風格和設置中渲染文本。
許多提示超出了目前模型的能力,最先進的模型會表現出拼字錯誤、丟棄或重複的單字。
實驗結果顯示,用於對比的9個影像產生模型中在DrawText Spell基準上的準確率中,character-aware模型( ByT5和Concat)無論模型尺寸大小都優於其他模型,特別是在不常見單字上。
Imagen-AR顯示了避免cropping的好處,儘管訓練時間長了6.6倍,其仍然比字character-aware模型表現差。
模型之間的另一個明顯的區別在於它們是否在多個樣本中持續地拼錯一個給定的單字。
在實驗結果中可以看出,無論抽取多少個樣本,T5模型都有許多單字拼錯,研究人員認為這表明文本編碼器中缺少字符知識。
相較之下,ByT5模型基本上只會出現零星的錯誤。
透過測量模型在所有四個影像樣本中持續正確(4/4)或持續誤差(0/4)的比率可以量化這一觀察結果。
可以看到一個鮮明的對比,特別是在常見的單字上(前1%),即ByT5模型從未持續錯誤,而T5模型在10%或更多的字上持續錯誤。
以上是不做文盲畫家!谷歌魔改「文字編碼器」:一個小操作讓圖像生成模型學會「拼字」的詳細內容。更多資訊請關注PHP中文網其他相關文章!