Active Learning: 一個(gè)降低深度學(xué)習(xí)時(shí)間,空間,經(jīng)濟(jì)成本的解決方案

作者:Zongwei Zhou | 周縱葦
郵箱:zongweiz@asu.edu
微博:@MrGiovanni


下面要介紹的工作發(fā)表于CVPR2017,題為“Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally”。它主要解決了一個(gè)深度學(xué)習(xí)中的重要問(wèn)題:如何使用盡可能少的標(biāo)簽數(shù)據(jù)來(lái)訓(xùn)練一個(gè)效果promising的分類器。根據(jù)我的判斷,當(dāng)遇到兩種情況的時(shí)候,這篇論文的可以非常強(qiáng)大的指導(dǎo)意義:

  • 一共手頭有100個(gè)未標(biāo)記樣本,和僅僅夠標(biāo)記10個(gè)樣本的錢(qián),老板說(shuō),通過(guò)訓(xùn)練這十個(gè)標(biāo)記的樣本,能接近甚至達(dá)到訓(xùn)練100個(gè)樣本的performance;
  • 手頭有了一個(gè)已經(jīng)在100個(gè)樣本中訓(xùn)練完的分類器,現(xiàn)在又來(lái)了100個(gè)新標(biāo)記的樣本,老板說(shuō),只給提供夠訓(xùn)練10個(gè)樣本的計(jì)算機(jī);或者只給你提供夠訓(xùn)練10個(gè)樣本的時(shí)間,讓分類器盡快學(xué)習(xí)到新來(lái)樣本的特征;

這兩個(gè)情況發(fā)生的條件是完全不同的,Situation A發(fā)生在屌絲公司,沒(méi)有錢(qián)拿到精標(biāo)記的數(shù)據(jù)集,卻也想做深度學(xué)習(xí);Situation B一般發(fā)生在高富帥公司,有海量的精標(biāo)記數(shù)據(jù),但是由于目前即使是最牛逼的計(jì)算機(jī)也不能用深度學(xué)習(xí)在短時(shí)間內(nèi)一次性地去處理完這些數(shù)據(jù)(e.g.,內(nèi)存溢出,或者算上個(gè)幾年都算不完)。Anyway,我想我已經(jīng)說(shuō)清楚應(yīng)用背景了,讀者可以根據(jù)實(shí)際情況判斷是否往后讀下去。

感謝你選擇繼續(xù)往下閱讀,那么如果覺(jué)得下文所傳遞的思想和方法對(duì)你有幫助,請(qǐng)記得一定引用這篇CVPR2017的文章。Fine-tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally.

@InProceedings{Zhou_2017_CVPR,
author = {Zhou, Zongwei and Shin, Jae and Zhang, Lei and Gurudu, Suryakanth and Gotway, Michael and Liang, Jianming},
title = {Fine-Tuning Convolutional Neural Networks for Biomedical Image Analysis: Actively and Incrementally},
booktitle = {The IEEE Conference on Computer Vision and Pattern Recognition (CVPR)},
month = {July},
year = {2017}
}

1. 為什么會(huì)想到去解決這個(gè)問(wèn)題?

現(xiàn)在深度學(xué)習(xí)很火,做的人也越來(lái)越多,那么它的門(mén)檻可以說(shuō)是很低的,Caffe,Keras,Torch等等框架的出現(xiàn),讓該領(lǐng)域的programming的門(mén)檻直接拆了。所以深度學(xué)習(xí)真正的門(mén)檻變成了很簡(jiǎn)單概念——錢(qián)。這個(gè)錢(qián)有兩個(gè)很重要的流向,一是計(jì)算機(jī)的運(yùn)算能力(GPU Power),二是標(biāo)記數(shù)據(jù)的數(shù)量。這兒就引出一個(gè)很重要的問(wèn)題:是不是訓(xùn)練數(shù)據(jù)集越多,深度學(xué)習(xí)的效果會(huì)越好呢?這個(gè)答案憑空想是想不出來(lái)的,能回答的人一定是已經(jīng)擁有了海量的數(shù)據(jù),如ImageNet,Place等等,他們可以做一系列的實(shí)驗(yàn)來(lái)回答這個(gè)問(wèn)題。需要呈現(xiàn)的結(jié)果很簡(jiǎn)單,橫坐標(biāo)是訓(xùn)練集的樣本數(shù),縱坐標(biāo)是分類的performance,如下圖所示:

Fig.1 如果答案是左圖,那么就沒(méi)什么可以說(shuō)的了,去想辦法弄到盡可能多的訓(xùn)練數(shù)據(jù)集就ok,但是現(xiàn)實(shí)結(jié)果是右圖的紅實(shí)線,一開(kāi)始,訓(xùn)練集的樣本數(shù)增加,分類器的性能快速地在上升,當(dāng)訓(xùn)練集的樣本數(shù)達(dá)到某一個(gè)臨界值的時(shí)候,就基本不變了,也就是說(shuō),當(dāng)達(dá)到了這個(gè)臨界的數(shù)目時(shí),再去標(biāo)注數(shù)據(jù)的ground truth就是在浪費(fèi)時(shí)間和金錢(qián)。有了這個(gè)認(rèn)知,接下來(lái)就是想辦法讓這個(gè)臨界值變小,也就是用更小的訓(xùn)練集來(lái)更快地達(dá)到最理想的性能,如右圖的紅虛線所示。紅實(shí)線我們認(rèn)為是在隨機(jī)地增加訓(xùn)練集,那么紅虛線就是用主動(dòng)學(xué)習(xí)(Active Learning)的手段來(lái)增加訓(xùn)練集,從而找到一個(gè)更小的子集來(lái)達(dá)到最理想的性能。

這里需要說(shuō)明的一點(diǎn)是,訓(xùn)練樣本數(shù)的臨界點(diǎn)大小和這個(gè)分類問(wèn)題的難度有關(guān),如果這個(gè)分類問(wèn)題非常簡(jiǎn)單,如黑白圖像分類(白色的是1,黑色的是0),那么這個(gè)臨界值就特別小,往往幾幅圖就可以訓(xùn)練一個(gè)精度很高的分類器;如果分類問(wèn)題很復(fù)雜,如判斷一個(gè)腫瘤的良惡性(良性是0,惡性是1),那么這個(gè)臨界值會(huì)很大,因?yàn)槟[瘤的形狀,大小,位置各異,分類器需要學(xué)習(xí)很多很多的樣本,才能達(dá)到一個(gè)比較穩(wěn)定的性能。

FIG.1對(duì)于很多從事深度學(xué)習(xí)的無(wú)論是研究員還是企業(yè)家都是一個(gè)十分有啟發(fā)性的認(rèn)知改變。一般來(lái)講,人的慣性思維會(huì)引領(lǐng)一個(gè)默認(rèn)的思路,就是訓(xùn)練樣本越多越好,如左圖所示,這將直接導(dǎo)致許多工作的停滯不前,理由永遠(yuǎn)是“我們沒(méi)有足夠的數(shù)據(jù),怎么訓(xùn)練網(wǎng)絡(luò)!”進(jìn)一步的思路是圖二的紅實(shí)線認(rèn)知:要多少是多啊,先訓(xùn)著再說(shuō),慢慢的就會(huì)發(fā)現(xiàn)即便用自己有的一小部分?jǐn)?shù)據(jù)集好像也能達(dá)到一個(gè)不錯(cuò)的分類性能,這個(gè)時(shí)候就遇到一個(gè)問(wèn)題:自己的數(shù)據(jù)集樣本數(shù)到底有沒(méi)有到達(dá)臨界值呢?這個(gè)問(wèn)題也很關(guān)鍵,它決定了要不要繼續(xù)花錢(qián)去找人標(biāo)注數(shù)據(jù)了。這個(gè)問(wèn)題我會(huì)在第三部分去回答它,這里先假設(shè)我們知道了它的答案,接下來(lái)的問(wèn)題就是如何讓這個(gè)臨界值變???

2. 如何讓臨界值變小?

解決方案就是主動(dòng)學(xué)習(xí)(Active Learning),去主動(dòng)學(xué)習(xí)那些比較“難的”,“信息量大的”樣本(hard mining)。關(guān)鍵點(diǎn)是每次都挑當(dāng)前分類器分類效果不理想的那些樣本(hard sample)給它訓(xùn)練,假設(shè)是訓(xùn)練這部分hard sample對(duì)于提升分類器效果最有效而快速。問(wèn)題是在不知道真正標(biāo)簽的情況下怎么去定義HARD sample?或者說(shuō)怎么去描述當(dāng)前分類器對(duì)于不同樣本的分類結(jié)果的好壞?

定義:由于深度學(xué)習(xí)的輸出是屬于某一類的概率(0~1),一個(gè)很直觀的方法就是用“熵(entropy)”來(lái)刻畫(huà)信息量,把那些預(yù)測(cè)值模棱兩可的樣本挑出來(lái),對(duì)于二分類問(wèn)題,就是預(yù)測(cè)值越靠近0.5,它們的信息量越大。還有一個(gè)比較直觀的方法是用“多樣性(diversity)”來(lái)刻畫(huà)labeled data和unlabeled data的相似性。這兩個(gè)方法都是在“Active batch selection via convex relaxations with guaranteed solution bounds”中被提出。是十分重要的兩個(gè)Active Learning的選擇指標(biāo)。

Important Observation: To boost the performance of CNNs in biomedical imaging, multiple patches are usually generated automatically for each candidate through data augmentation; these patches generated from the same candidate share the same label, and are naturally expected to have similar predictions by the current CNN before they are expanded into the training dataset.

有了這兩個(gè)指標(biāo)來(lái)選hard sample,是比較靠譜了——實(shí)驗(yàn)結(jié)果表明,這比隨機(jī)去選已經(jīng)能更快地達(dá)到臨界拐點(diǎn)了。

FIG.2 Active Learning的結(jié)構(gòu)示意圖。利用深度學(xué)習(xí)所帶來(lái)的優(yōu)勢(shì)在于,一開(kāi)始你可以不需要有標(biāo)記的數(shù)據(jù)集。

舉例來(lái)講,假設(shè)你是一個(gè)養(yǎng)狗的大戶,你現(xiàn)在想做一個(gè)非常偏的(專業(yè)化的)分類問(wèn)題,如卷毛比雄犬哈瓦那犬的分類問(wèn)題,你手頭有這兩種狗各50條,你自己可以很輕松地區(qū)分這100條狗,現(xiàn)在需要做的是訓(xùn)練一個(gè)分類器,給那些不懂狗的人,他們拍了狗的照片然后把照片輸入到這個(gè)分類器就可以很好地判斷這是卷毛比雄犬還是哈瓦那犬。首先你可以給這100條狗拍照片,每條狗都有不同形態(tài)的10張照片,一共拍了1000張沒(méi)有標(biāo)記的照片。對(duì)于這1000張照片,你所知道的是哪10張對(duì)應(yīng)的是一條狗,其他什么都不知道。

在這個(gè)實(shí)際分類問(wèn)題中,你擁有絕對(duì)的數(shù)據(jù)優(yōu)勢(shì),即便是Google Image也不能企及,當(dāng)然一種選擇是你把1000張圖片從頭到尾看一遍,標(biāo)注好,但是你更希望是把大多數(shù)簡(jiǎn)單的分類工作交給分類器,自己盡可能少的做標(biāo)記工作,并且主要是去標(biāo)記那些分類器模棱兩可的那幾張照片來(lái)提高分類器的性能。
我們初步提供的解決方案是(參考Fig.2或者Fig.3):

  1. 把1000張圖放到在大量自然圖像中預(yù)訓(xùn)練的網(wǎng)絡(luò)(LeNet,AlexNet,GoogLeNet,VGG,ResNet等等)中測(cè)試一遍,得到預(yù)測(cè)值,然后挑出來(lái)那些“最難的”,“信息量最大的”樣本,你看一下,給出他們的標(biāo)簽(卷毛比雄犬還是哈瓦那犬);
  2. 用這些剛剛給了標(biāo)簽的樣本訓(xùn)練深度網(wǎng)絡(luò)N;
  3. 把剩下那些沒(méi)有標(biāo)簽的圖像用N測(cè)試,得到預(yù)測(cè)值,還是挑出來(lái)那些“最難的”,“信息量最大的”樣本,你再給出他們的標(biāo)簽(卷毛比雄犬還是哈瓦那犬);
  4. 剛剛給了標(biāo)簽的樣本和原來(lái)有標(biāo)簽的樣本組成新的訓(xùn)練集,繼續(xù)用它們來(lái)訓(xùn)練深度網(wǎng)絡(luò)N;
  5. 重復(fù)步驟3,4,直到 [?]

FIG.2所示,每次循環(huán)都用不斷增加的標(biāo)記數(shù)據(jù)集去提升分類器的性能,每次都挑對(duì)當(dāng)前分類器比較難的樣本來(lái)人為標(biāo)記。

3. 這個(gè)過(guò)程什么時(shí)候可以停?

  1. 錢(qián)用光了;
  2. 當(dāng)前分類器對(duì)選出來(lái)的hard samples分類正確;
  3. 選出來(lái)的hard samples人類也無(wú)法標(biāo)記;

以上三種情況都可以讓這個(gè)循環(huán)訓(xùn)練過(guò)程中斷,第一種就很無(wú)奈了,沒(méi)錢(qián)找人標(biāo)記了...第二種情況和第三種情況的前提共識(shí)是如果難的樣本都分類正確了,那么我們認(rèn)為簡(jiǎn)單的樣本肯定也基本上分類正確了,即便不知道標(biāo)簽。第三種情況,舉例來(lái)說(shuō)就是黑白圖像分類,結(jié)果分類器模棱兩可的圖像是灰的...也就是說(shuō)事實(shí)上的確分不了,并且當(dāng)前的分類器居然能把分不了的樣本也找出來(lái),這時(shí)我們認(rèn)為這個(gè)分類器的性能已經(jīng)不錯(cuò)的了,所以循環(huán)訓(xùn)練結(jié)束。

至此,主要講了傳統(tǒng)的Active Learning的思想,接下來(lái)會(huì)講講這篇CVPR2017論文的幾個(gè)工作點(diǎn)。


The way to create something beautiful is often to make subtle tweaks to something that already exists, or to combine existing ideas in a slightly new way.
-- "Hackers & Painters"


上面我講到了Active Learning的大概思路,如Fig. 3所示,是一個(gè)很有意思的概念,說(shuō)實(shí)話很實(shí)用,我在Mayo Clinic實(shí)習(xí)的時(shí)候,每次遇到新的數(shù)據(jù)集,都會(huì)想到用一用這個(gè)方法,來(lái)讓給數(shù)據(jù)標(biāo)注的專家輕松一點(diǎn)...

Fig.3 暗的表示unlabeled的數(shù)據(jù),高亮的表示labeled的數(shù)據(jù),CNN的結(jié)構(gòu)可以隨便挑SOTA的無(wú)所謂,CNN0是拍 retrained from ImageNet,得到的第二列表示每個(gè)image對(duì)應(yīng)的importance指標(biāo),越紅的說(shuō)明entropy越大,或者diversity越大,每次挑這些important的sample給專家標(biāo)注,這樣labeled的數(shù)據(jù)就變多了,用labeled的數(shù)據(jù)訓(xùn)練CNN,得到新的更強(qiáng)的分類器了,再在unlabeled data上測(cè)試,挑出entropy/diversity大的樣本,交給專家去標(biāo)注,如此循環(huán)...

4. 發(fā)現(xiàn)新問(wèn)題

貌似前面講的算法沒(méi)留下什么問(wèn)題啊,也就是說(shuō),只要學(xué)術(shù)視野夠開(kāi)闊,這個(gè)Active Learning的技術(shù)完全可以直接用啦。但是實(shí)際上并不是這樣的,上面說(shuō)的熵(Entropy)的確沒(méi)有什么嚴(yán)重的問(wèn)題,但是多樣性(Diversity),在很多現(xiàn)實(shí)應(yīng)用中問(wèn)題就會(huì)出現(xiàn)。

根據(jù)“Active batch selection via convex relaxations with guaranteed solution bounds”的描述,Diversity是計(jì)算labeled data和unlabeled data之間的相似度,把和labeled data比較相似的作為簡(jiǎn)單樣本,每次active select難樣本,也就是挑出來(lái)和labeled data不太像的出來(lái)。體現(xiàn)在矩陣上就是行是labeled data,列是unlabeled data,在它們組成的大矩陣中找出最優(yōu)的子矩陣。這個(gè)方法在理論上是可行的,但是實(shí)際應(yīng)用中,數(shù)據(jù)量(labeled和unlabeled)會(huì)非常大,這個(gè)矩陣會(huì)特別的大,導(dǎo)致求最優(yōu)解會(huì)很慢,或者根本得不出來(lái)最優(yōu)解。因此,我們并不在image-level上算diversity。

由于標(biāo)記的醫(yī)學(xué)影像訓(xùn)練數(shù)據(jù)量和自然圖像的沒(méi)法比,Data Augmentation是必須的環(huán)節(jié),我們就抓住了這個(gè)點(diǎn)來(lái)設(shè)計(jì)Diversity這個(gè)指標(biāo)。這里的假設(shè)是:經(jīng)過(guò)data augmentation后的patches,從CNN出來(lái)的預(yù)測(cè)值應(yīng)該相對(duì)是一致的,因?yàn)樗鼈兊膖ruth應(yīng)該還是一致的。比如一張貓的圖像,經(jīng)過(guò)數(shù)據(jù)擴(kuò)充,得到的那些個(gè)patch所對(duì)應(yīng)的truth也應(yīng)該都是貓。

定義:對(duì)于來(lái)自同一幅image的patch集,如果它們的分類結(jié)果高度不統(tǒng)一了,那么這個(gè)image就是Important的,或者h(yuǎn)ard sample。

需要展開(kāi)解釋的兩點(diǎn):

  1. 由于在annotation之前不知道label,所以我們不能知道網(wǎng)絡(luò)的預(yù)測(cè)正確還是錯(cuò)誤,但是我們可以知道預(yù)測(cè)統(tǒng)一還是不統(tǒng)一。所以比如一幅貓的圖,如果網(wǎng)絡(luò)的預(yù)測(cè)很統(tǒng)一都是狗,那么我們也認(rèn)為這是一個(gè)easy sample,不去active select它的。
  2. 結(jié)合data augmentation的優(yōu)點(diǎn)是我們可以知道哪些patch對(duì)應(yīng)什么image,比較容易控制。這樣就可以在一個(gè)image內(nèi)算diversity了,每個(gè)image對(duì)應(yīng)一個(gè)矩陣,大小是一樣的,非常的簡(jiǎn)潔,也容易控制計(jì)算量。

這樣的diversity就完美了嗎?并沒(méi)有... 讀者可以先猜猜哪兒又出問(wèn)題啦,我在第五部分會(huì)指出來(lái)。

5. 這次是Data Augmentation的鍋

問(wèn)題出在上面的假設(shè):經(jīng)過(guò)data augmentation后的patches,從CNN出來(lái)的預(yù)測(cè)值應(yīng)該相對(duì)是一致的,因?yàn)樗鼈兊膖ruth應(yīng)該還是一致的。

我們知道有幾種經(jīng)典的數(shù)據(jù)擴(kuò)充方法:平移,旋轉(zhuǎn),縮放,形變,加噪聲等等。但是很有可能發(fā)生的是,經(jīng)過(guò)這些變化以后,得到的patch是無(wú)法分類的。舉例來(lái)講,Augmentation Lecture講到的平移crop,如果我們將它應(yīng)用到貓的分類問(wèn)題中,很有可能得到這樣的訓(xùn)練樣本:

右圖是網(wǎng)絡(luò)得到的對(duì)應(yīng)patch的預(yù)測(cè)值。

可以看出,在這個(gè)實(shí)例中,對(duì)于一個(gè)candidate,網(wǎng)絡(luò)預(yù)測(cè)的一致性很低,套用Diversity的公式,Diversity的值很大,也就是說(shuō),應(yīng)該被認(rèn)為是hard sample挑出來(lái)。但是仔細(xì)觀察一下這九個(gè)patches就不難看出,即便是很好的分類器,對(duì)于中間圖中的1,2,3,也是很難分出這個(gè)是貓... could be rat, rabbit, etc. 我們把像這三個(gè)patch的例子叫做從data augmentation帶來(lái)的noisy label issue。 而對(duì)于4~6的patches,網(wǎng)絡(luò)很好地做出了分類,這很合情合理。所以我們把這種像1,2,3的patches,由于隨機(jī)的數(shù)據(jù)擴(kuò)充(Random Data Augmentation)帶來(lái)的干擾樣本稱為noisy labels。Fig.4只是一個(gè)很直觀的例子,其實(shí)在實(shí)際的數(shù)據(jù)集中會(huì)有很多這樣的案例。

我們給出的解決方法是:先計(jì)算majority的預(yù)測(cè),然后在majority上面算diversity,只要網(wǎng)絡(luò)的預(yù)測(cè)大方向是統(tǒng)一的,就是統(tǒng)一的。意思就是想個(gè)辦法把Fig.4中的三個(gè)非主流0.1扔掉。只抓住大方向,也就是0.9——我們不希望Fig.4這種情況被當(dāng)作important sample挑出來(lái),因?yàn)楫?dāng)前的分類器實(shí)際上已經(jīng)可以分出來(lái)這幅圖的類別啦。

這個(gè)改進(jìn)的數(shù)學(xué)表達(dá)也非常直觀,以Fig.4為例,為了知道大方向,我們計(jì)算它們的平均值,如果大于0.5,大方向就是label 1,反之大方向是label 0,如果是前者,那么就從大到小取前25%的預(yù)測(cè),其他的不要啦,如果是后者,就從小到大取前25%,其他的不要啦。這樣Fig.4就只剩下三個(gè)0.9,它們的diversity就非常小,也就不會(huì)被當(dāng)作important sample挑出來(lái)啦。成功解決了data augmentation帶來(lái)的noisy label issue。

整體的算法流程可參見(jiàn)Fig.5

Fig.5 Active Learning Algorithm

至此,主要講了這篇論文是怎樣成功的將Diversity這個(gè)重要的指標(biāo)引入到Active Learning中來(lái),所有的Active Selection部分結(jié)束。


6. 如何訓(xùn)練?

既然用了遷移學(xué)習(xí),那么一開(kāi)始的CNN測(cè)試的效果肯定是一團(tuán)糟,因?yàn)檫@個(gè)CNN是從自然圖像中學(xué)過(guò)來(lái)的,沒(méi)有學(xué)習(xí)過(guò)CT這種醫(yī)學(xué)影像,所以這個(gè)loop的啟動(dòng)階段,Active Learning的效果會(huì)沒(méi)有random selecting好。不過(guò)很快,隨著CNN慢慢地在labeled的CT上訓(xùn)練,Active Learning的效果會(huì)一下子超過(guò)random selecting。

接下來(lái)討論Continuous fine-tuning的細(xì)節(jié),隨著labeled data集變大,CNN需要一次次地被訓(xùn)練,有兩種選擇,一是每次都從ImageNet pretrained來(lái)的model來(lái)遷移,二是每次用當(dāng)前的model上面遷移(Continuous Fine-tuning)。方法一的優(yōu)點(diǎn)是模型的參數(shù)比較好控制,因?yàn)槊看味际菑念^開(kāi)始fine-tuning,但是缺點(diǎn)是隨著labeled數(shù)據(jù)量大增加,GPU的消耗很大,相當(dāng)于每次有新的標(biāo)注數(shù)據(jù)來(lái)的時(shí)候,就把原來(lái)的model扔了不管,在實(shí)際應(yīng)用中的代價(jià)還是很大的。第二種方法是從當(dāng)前的model基礎(chǔ)上做finetune,在某種意義上knowledge是有記憶的,而且是連續(xù)漸進(jìn)式的學(xué)習(xí)。問(wèn)題在于參數(shù)不好控制,例如learning rate,需要適當(dāng)?shù)臏p小,而且比較容易在一開(kāi)始掉入local minimum。關(guān)于Continuous Finetuning的前期論文也是有的,需要更進(jìn)一步的研究。

另外,如何能夠真正意義上去體現(xiàn)出increamentally learning,只是這樣一個(gè)網(wǎng)絡(luò)結(jié)構(gòu)去不斷的學(xué)習(xí)嗎,還是隨著數(shù)據(jù)集的增加去讓網(wǎng)絡(luò)自適應(yīng)的變深,便復(fù)雜,都是我比較關(guān)心的問(wèn)題。


乍一看,Active Learning的工具很直觀,思想也很簡(jiǎn)潔,但隨著博客討論的技術(shù)細(xì)節(jié)越來(lái)越深入,會(huì)出現(xiàn)很多的open question有待研究,因此,只能說(shuō)我們的論文是active learning的一個(gè)引子。

本文只是從思想的角度來(lái)闡述這篇論文,至于后續(xù)的分析,結(jié)果和結(jié)論都在論文中詳細(xì)的report了。反正一句話來(lái)總結(jié),hin好...

祝好,

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容