【AI讀論文】CAAFE:基于大模型的自動特征工程
Title:Large Language Models for Automated Data Science: Introducing CAAFE for Context-Aware Automated Feature Engineering Paper: h ttps://arxiv.org/pdf/2305.03403.pdf GitHub: https://github.com/automl/CAAFE PS:該論文 已被NeurIPS 2023接收!
I. 方法概要
本文介紹了一種名為Context-Aware Automated Feature Engineering (CAAFE)的方法,該方法利用大型語言模型(LLMs)來自動生成針對表格數(shù)據(jù)集的特征工程代碼。CAAFE通過迭代生成語義有意義的特征,并為生成的特征提供解釋,從而改善了14個數(shù)據(jù)集中11個數(shù)據(jù)集的性能。該方法的效果類似于使用隨機森林而不是邏輯回歸來處理數(shù)據(jù)集。CAAFE的優(yōu)勢在于自動化地整合領(lǐng)域知識到AutoML過程中,從而減少了從數(shù)據(jù)到訓(xùn)練模型的延遲,降低了創(chuàng)建機器學(xué)習(xí)模型的成本,并增強了解決方案的魯棒性和可重復(fù)性。該方法結(jié)合了傳統(tǒng)機器學(xué)習(xí)的優(yōu)勢(魯棒性、可預(yù)測性和一定程度的可解釋性)和LLMs的優(yōu)勢(領(lǐng)域知識和創(chuàng)造力)。
II. CAAFE算法原理
CAAFE(Context-Aware Automated Feature Engineering)是一種利用大型語言模型(LLMs)自動生成特征工程代碼的方法。其算法原理如下:
- 用戶提供數(shù)據(jù)集描述和上下文信息作為輸入,包括數(shù)據(jù)類型、缺失值比例和數(shù)據(jù)集的隨機樣本。
- CAAFE構(gòu)建一個提示(prompt),包含了對LLMs的指令,指導(dǎo)LLMs生成有用的特征工程代碼,并提供對生成特征的解釋。
- CAAFE執(zhí)行多次特征修改和驗證,每次LLMs生成代碼,然后在當(dāng)前訓(xùn)練集和驗證集上執(zhí)行,得到轉(zhuǎn)換后的數(shù)據(jù)集。
- 生成的代碼會對數(shù)據(jù)集進行修改,包括創(chuàng)建有意義的特征、刪除不必要的特征等。
- CAAFE會評估生成的特征對下游預(yù)測任務(wù)的性能改善,并保留性能提升的特征。
總的來說,CAAFE利用LLMs自動生成特征工程代碼,從而改善數(shù)據(jù)科學(xué)任務(wù)的性能,并提供對生成特征的解釋,使得自動化特征工程更加透明和可解釋。進一步地,大語言模型(LLMs)扮演了生成特征工程代碼的角色。LLMs被用來自動生成Python代碼,該代碼用于創(chuàng)建新的語義有意義的特征,以改善下游預(yù)測任務(wù)的性能。LLMs通過對數(shù)據(jù)集描述和上下文信息進行理解和推理,生成能夠提升預(yù)測性能的特征工程代碼。這樣,LLMs在CAAFE中起到了自動生成特征工程代碼的關(guān)鍵作用。
III. Prompt的設(shè)計
CAAFE中的Prompt設(shè)計非常重要,因為它指導(dǎo)LLMs生成特征工程代碼并提供對生成特征的解釋。Prompt的設(shè)計包括以下內(nèi)容:
- 用戶生成的數(shù)據(jù)集描述,其中包含有關(guān)數(shù)據(jù)集的上下文信息和語義信息。
- 特征名稱,用于為LLMs提供上下文信息,并允許LLMs根據(jù)特征名稱生成代碼。
- 期望生成代碼和解釋的模板,以指導(dǎo)LLMs生成特征工程代碼和提供解釋。
此外,Prompt還包括了一系列中間推理步驟的指令,這些指令對于提高LLMs的響應(yīng)質(zhì)量非常有效。整個Prompt的設(shè)計旨在為LLMs提供足夠的信息和指導(dǎo),以確保生成的特征工程代碼和解釋能夠提高預(yù)測性能并具有可解釋性。
IV. 實驗設(shè)計
在CAAFE的算法實驗設(shè)計中,研究人員進行了以下工作:
- 使用了14個數(shù)據(jù)集進行實驗,包括來自O(shè)penML和Kaggle的數(shù)據(jù)集。
- 對比了CAAFE與傳統(tǒng)自動特征工程方法(如Deep Feature Synthesis和AutoFeat)的性能。
- 評估了不同的下游分類器和特征擴展方法的性能。
- 進行了對比實驗,驗證了CAAFE在不同情況下的性能表現(xiàn)。

主要結(jié)論如下:
- CAAFE能夠在11個數(shù)據(jù)集中提高預(yù)測性能,平均ROC AUC從0.798提升到0.822。
- CAAFE的效果類似于使用隨機森林而不是邏輯回歸來處理數(shù)據(jù)集。
- CAAFE結(jié)合了傳統(tǒng)機器學(xué)習(xí)的魯棒性和可解釋性,以及LLMs的領(lǐng)域知識和創(chuàng)造力,為自動化特征工程提供了一種新的方法。
- CAAFE的性能在不同的數(shù)據(jù)集和分類器上都得到了驗證,表現(xiàn)出了穩(wěn)健的性能和可擴展性。
V. 結(jié)論與啟示
本文的主要結(jié)論和啟示如下:
主要結(jié)論:
- CAAFE利用大型語言模型(LLMs)自動生成特征工程代碼,從而改善數(shù)據(jù)科學(xué)任務(wù)的性能,并提供對生成特征的解釋,使得自動化特征工程更加透明和可解釋。
- CAAFE在11個數(shù)據(jù)集中提高了預(yù)測性能,平均ROC AUC從0.798提升到0.822,類似于使用隨機森林而不是邏輯回歸來處理數(shù)據(jù)集。
- CAAFE結(jié)合了傳統(tǒng)機器學(xué)習(xí)的魯棒性和可解釋性,以及LLMs的領(lǐng)域知識和創(chuàng)造力,為自動化特征工程提供了一種新的方法。
- CAAFE的性能在不同的數(shù)據(jù)集和分類器上都得到了驗證,表現(xiàn)出了穩(wěn)健的性能和可擴展性。
啟示:
- 結(jié)合大型語言模型和傳統(tǒng)機器學(xué)習(xí)方法可以提高自動化特征工程的效果,為數(shù)據(jù)科學(xué)任務(wù)提供更多的自動化解決方案。
- 自動化特征工程的透明性和可解釋性對于用戶理解和修改自動生成的特征至關(guān)重要,這有助于提高用戶對自動化過程的信任和接受度。
- 領(lǐng)域知識和上下文信息對于自動生成特征工程代碼的質(zhì)量和效果至關(guān)重要,用戶提供的數(shù)據(jù)集描述和上下文信息對于LLMs的性能起到了關(guān)鍵作用。
本文的研究為自動化數(shù)據(jù)科學(xué)任務(wù)提供了一種新的方法,強調(diào)了大型語言模型在自動化特征工程中的潛在作用,并展示了其在提高預(yù)測性能和可解釋性方面的優(yōu)勢。
