Part 1 昇騰AI全棧系統模塊(共6題):
1、許多計算芯片可以設計作為人工智能的計算芯片,但不同的芯片計算性能不同,昇騰計算芯片是一種()芯片。(單選題)
A.CPU? B.GPU?? C. NPU?? D.TPU
正確答案:C
解析:A項CPU中央處理器的架構是傳統架構,在AI計算任務中不太適宜;B項GPU是圖形處理器,是常見的計算卡,架構與昇騰不一樣;C項NPU是神經網絡處理器,是專門針對人工智能計算設計的專業芯片;D項TPU是谷歌設計的AI芯片,與題干中昇騰不一致,因此本題選C。
2、一家科技企業開發大模型應用期間,首先使用了市面上的非昇騰計算卡+PyTorch方案進行算力集群搭建與模型訓練,由于業務需求,目前考慮使用昇騰計算卡+CANN+MindSpore方案進行模型訓練部署,但目前企業對昇騰全棧軟件架構了解并不深入,在以下企業提出的預期目標中,哪一個是無法實現的?(單選題)
A.使用CANN中的FlashAttention算子來加速計算,降低顯存消耗
B.保持AI框架不變化的情況下,使用CANN去優化原來集群中計算卡,提高性能
C.使用C/C++標準開發規范去進行算子開發
D.將原有單卡模型通過torch_npu包快速遷移到Ascend卡進行推理適配
正確答案:B
解析:先看A項,昇騰的異構計算架構CANN適配了基于Ascend C的FlashAttention算子,能夠加速Attention的計算,充分利用片上的緩存,提高計算性能,從而降低顯存消耗,因此正確;再看B項,原來集群中是使用非昇騰計算卡,但是CANN是不支持非昇騰計算卡的,所以B項無法實現;對于C項,CANN中算子開發是使用Ascend C語言,Ascend C是CANN專門針對于算子開發場景推出的編程語言,原身就支持C/C++標準規范,從而最大化匹配用戶開發習慣,所以C項也可以實現;D項同樣正確,昇騰開發了Ascend Extension for PyTorch,即選項中的torch_npu包,它可以適配PyTorch框架,能夠實現在PyTorch框架上的快速遷移以便于PyTorch使用人員更快使用Ascend AI處理器的強大計算能力,所以D也可以實現,因此本題選B。
3、一家小型科技公司想采用昇騰方案搭建集群平臺來運行其基于某開源模型671B自主研發的大模型應用,現在正在采購對應的計算服務器。目前存在兩種不同類型的服務器,服務器A型一共內置8塊NPU芯片,每塊芯片顯存為64G。服務器B型一共內置8塊NPU芯片,每塊芯片顯存為40G,如果該公司希望同時部署該模型的FP16實例,至少需要采購多少臺A服務器?如果選擇B服務器,則至少采購多少臺?(單選題)
A.至少采購3臺A服務器,或至少采購4臺B服務器
B.至少采購2臺A服務器,或至少采購3臺B服務器
C.至少采購6臺A服務器,或至少采購8臺B服務器
D.至少采購3臺A服務器,或至少采購5臺B服務器
正確答案:D
解析:本題考察模型占用顯存的計算。在推理部署階段,占用最大的是模型權重的占用,對于671B的模型,如果采用FP16的精度,顯存的占用是用模型參數*精度對應字節數,FP16對應2字節,所以對應671B*2(B/param)*1024^3/1024^9=1342G,至少需要1342G的顯存,還有一些其他顯存可暫時忽略,服務器A有8塊,所以它的顯存是8*64G=512G,每臺服務器B的顯存是8*40G=320G,所以可以得出至少需要3臺A服務器,5臺B服務器,因此選D。
4、遷移到昇騰服務器上的大模型在預訓練過程中出現loss持續上升的情況,出現該問題后需要排查以下哪些因素?(多選題)
A.訓練數據是否存在個別異常
B.混合精度配置是否合理
C.是否大量使用FP16/FP8數據類型,導致部分網絡梯度計算不穩定
D.學習率設置是否合理
正確答案:BCD
解析:先看A,當訓練數據存在個別異常時,可能出現暫時性loss異常,但不會出現持續性loss上升,因為個別異常對于整個預訓練過程的影響是較小的;B項當混合精度配置不合適時會出現計算溢出或不足的情況,尤其是如果某些結點啟用FP16,容易導致參數更新不穩定,導致loss持續上升,因此B正確;C項是因為使用FP16/FP8可能會大幅降低優化器的計算精確,優化器計算不夠精確時會導致網絡梯度計算不穩定,從而導致loss上升,因此正確;D項學習率會直接影響大模型在訓練過程中學習步進,當學習率過高時,可能會出現loss上升,甚至是跑飛現象,因此也正確,本題選BCD。
5、在華為全棧AI體系里面,華為人工智能解決方案可以支持多種框架以及多種設備在生態內的協同計算,可以靈活搭配全棧AI體系中的成員以構建人工智能解決方案。以下解決方案中,可以成功配置運行的有哪些?(多選題)
A.大模型訓練場景:MindSpore + CANN + Atlas I series servers
B.分布式訓練場景: MindSpore Transformers + MindSpore + CANN + Atlas T series servers
C.Ascend遷移訓練場景: Pytorch + CANN + Atlas T series servers
D.MindSpore測試場景: MindSpore + CPU
正確答案:BCD
解析:A選項中問題在于使用了Atlas I系列服務器,I這里是Inference推理的縮寫,其實是適用于推理場景的,不適合用于大模型訓練場景;B項中采用了Atlas T系列服務器,T即Training訓練,將它作為硬件底座,是可以實現訓練場景的,同時又采用CANN作為異構計算架構,采用MindSpore作為AI開發框架,然后最上層又采用MindSpore Transformers用于分布式計算,所以可以實現分布式訓練場景;C項中選用PyTorch,CANN和Atlas T系列服務器,也可以實現Ascend遷移訓練場景,在本模塊的第2題中提到過目前有torch_npu包適配,能夠快速遷移到PyTorch框架上,因此也可以成功配置;D項是關于MindSpore測試場景,用了MindSpore+CPU方案,MindSpore不僅可以運行在NPU上,也可以運行在CPU上,所以也可以實現,因此本題選BCD。
6、在昇騰全棧AI解決方案中,AI計算集群的物理區域會被分到不同的網絡平面中。請問在AI計算集群中,用于讀取存儲區的模型文件,CKPT文件,數據文件的網絡和用于服務器之間通信的網絡有哪些?(多選題)
A.參數面 B.業務面 C.樣本面 D.帶內管理面
正確答案:AC
解析:A項參數面用于支撐服務器之間通信,是為了保證NPU卡之間的通信而搭建的網絡平面;B項業務面是通過本地計算機下發命令到服務器上進行任務下發、算力調度任務的網絡平面;C項樣本面是用于讀取存儲區的模型文件、CKPT文件、數據文件及數據集的網絡平面;D項帶內管理面是內網內管理服務器的頁面,比如硬件管理,包括服務器的上下電等等,因此本題選AC。
Part 2 模型訓練與調優模塊(共8題):
1、以下對使用MindSpore定義模型訓練邏輯的描述中,排序正確的是哪一項?(單選題)
1.將微分函數和優化器執行封裝為train_step函數,實現單步訓練邏輯
2.定義正向函數forward_fn
3.循環迭代數據集進行訓練
4.使用value_and_grad獲得微分函數grad_fn
5.定義超參(epoch, learning rate等)、損失函數、優化器
A.35124? ?B.52413? ?C.25143? ?D.12345
正確答案:B
解析:本題考點在于MindSpore在訓練部分采用的函數式編程的表達范式,具體來說以函數為單位,進行的方式是:首先定義好模型正向計算函數,獲取損失值,接下來通過函數變換的方式,將正向計算函數變換成微分求導函數,通過這個函數輸入對應的數據和標簽,最后輸出梯度,后續將梯度放到優化器里實現模型參數的更新,而在梯度求導以及放入優化器的更新往往也會以函數的方式進行實現,即對應train_step,這樣的函數形式其實能夠與前向計算、反向傳播再去參數更新的邏輯對應上。然后回到題目中,前向計算定義對應序號2 的forward_function,接下來是函數變換,對應第4個標簽,再后來是正向計算反向傳播,匯總成單步訓練或者一步一個step訓練的函數,即train_step,所以在這個模塊中的排序應是241,四個選項中唯一能滿足241條件的只有B項,然后再梳理下整個過程,最開始先定義訓練有多少迭代、學習率、損失函數的優化器,其次依次進行2-4-1的步驟,最后實現單步計算,需要遍歷訓練數據集,一步完成一次遍歷即進行一次迭代,通過不斷喂數據不斷更新,不斷做迭代的方式實現模型訓練的過程,因此選B。
2、小華在基于MindSpore訓練一個LSTM文本情感分類模型時,訓練集準確率達到95%,但驗證集準確率僅為60%,且驗證Loss持續上升。此時最應采取的措施是什么?(單選題)
A.增加訓練輪次(Epochs)? B.在模型中添加Dropout層
C.改用更大的預訓練模型? D.提高學習率
正確答案:B
解析:本題為很典型的過擬合現象,即模型在訓練過程中過于依賴參考于訓練集特征,從而在它未見過的一些數據集上表現較差,所以在這個過程中怎么提高模型本身泛化能力或解決過擬合問題呢?A項增加訓練批次會加劇過擬合;B項可以有效解決過擬合問題,Dropout其實進行隨機丟棄,往往在實現過程中定義丟棄概率從而進行一定的調節;C項使用更大的預訓練模型可能有幾個弊端,首先預訓練模型更大代表復雜度越高,所以興許來講過擬合現象會更加嚴重,再加上如果是參與更大模型,其實在微調的時候相應數據量的要求也會更大,甚至可能出現模型過大,微調或訓練的數據集不足以調動它;D項為提高學習率,學習率本身是指模型在更新時邁步的大小是如何的,如果把學習率變大,相當于每次更新邁步較大,可能出現劇烈波動收斂較慢的情況,綜合考慮上述各個選項本題選B。
3、某同學正在基于MindSpore實現RNN情感分類任務,在該任務中,以下哪個是整體模型結構?(單選題)
A. nn.Embedding -> nn.Dense -> nn.RNN
B. nn.Embedding -> nn.RNN -> nn.Dense
C. nn.Dense ->nn.Embedding -> nn.RNN
D. nn.Embedding -> nn.RNN
正確答案:B
解析:RNN是NLP領域非常常見的模型結構,在開始時,需要將NLP類型或文本類型數據轉換為模型能夠理解的方式,往往先需把文本轉換為數字ID,ID會對應到它本身去表示vector的形式,也就是說最開始需要進行Embedding,通過Embedding層獲取Word Embedding來輸入到接下來RNN的層中,但是到后來會發現這里做的是RNN情感分類任務,判斷情感色彩是怎么樣的,本質上分類任務(不僅僅是在NLP領域)需要線性的層進行線性映射,通過這樣方式找到最后的輸出dimension能夠與分類對應得上,所以綜合來看,它整個的排序先是Embedding層再是RNN層,最后經過全連接層或者線性層的方式進行映射,即對應B項。
4、在金融領域的欺詐檢測問題中,正樣本(欺詐交易)往往遠少于負樣本(正常交易)。小華在基于MindSpore訓練一個信用卡欺詐檢測模型時,正樣本(欺詐)占比不足1%,以下哪種損失函數最適合此場景?(單選題)
A. mindspore.nn.CrossEntropyLoss
B. mindspore.nn.FocalLoss
C. mindspore.nn.MSELoss
D. mindspore.nn.L1Loss
正確答案:B
解析:本題題干中負樣本數量是遠大于正樣本的,因此出現正負樣本比例不均衡情況,在此處做一個欺詐模型本質上是做一個分類任務,判斷這筆交易屬于正常交易(第1種類型)還是欺詐交易(第2種類型)。首先看CD項,C項是MSELoss(Mean Squared Error),即計算預測出和真實值的均方誤差,D項也稱為Mean Absolute Error,是計算平均的絕對值,這兩個選項更傾向于計算回歸類型任務,因此均排除;然后看AB選項,CrossEntropyLoss是計算交叉熵的,可以用于分類任務,但是在這里首先有最合適的限制,其次樣本數量也有一定的偏差,因此合適但不是最合適的選項,然后看B項,FocalLoss最開始的起源是為了計算在目標檢測任務中one-stage的損失,后來也廣泛運用到其他任務中,它可以較好地在正負樣本不平衡的極端情況下進行平衡,通過配置權重來調節,因此B最合適。
5、在使用MindSpore進行CycleGAN圖像風格遷移任務時,模型結構包含ConvNormReLU,其中歸一化使用nn.BatchNorm2d()接口實現,以下關于該接口的作用有哪些?(多選題)
A.提高模型泛化能力
B.抑制欠擬合
C.加快模型收斂
D.緩解網絡梯度消失問題
正確答案:ACD
解析:BatchNorm類似于最開始進行數據處理時歸一化操作,把它變成一個比較規范的分布形式,唯一的區別是BatchNorm是放在網絡層中間的,是對網絡層中間的數值進行歸一化,當然在面對不同的任務或領域時,去做歸一化的維度不同,會引發出不同的Norm,比如BatchNorm,LayerNorm等等。其實在這里歸一化解決的問題是,尤其在網絡層數較多的情況下,在進行權重更新時很可能出現較底的網絡層有些微小變動,在通過傳遞過程中導致上層網絡變動較大,因而每次在底層調一點點時上面就會引起很大的波動,從而導致網絡收斂較慢,而通過在中間添加BatchNorm2d的方式,一個是可以穩定下來保證收斂加快,同時可以有效解決不斷進行反向傳播時出現的梯度消失問題,也就是不斷乘的數值比較小導致最后梯度無限趨近于0的問題,除此之外它也能有效提高模型本身的泛化能力,而在這里抑制欠擬合是做不到的,它更多是可以抑制過擬合,因此本題選ACD。
6、某同學在使用MindSpore完成某個分類的任務,目前進展如下:
1.完成文本數據預處理
2.繼承nn.Cell,完成單層線性神經網絡Network構建,模型參數為w, b,并將網絡時實例化model=Network()
3.完成前向計算函數forward_fn的定義,該函數返回損失值loss與模型前向計算結果logits
接下來他計劃使用value_and_grad實現函數變換,獲取梯度計算函數
以下對value_and_grad(fn,grad_position,weights,has_aux,return_ids)中的參數描述正確的是哪幾項?(多選題)
A. fn:待求導的函數,即forward_fn
B. grad_position為求導輸入位置的索引。要對w, b求導,grad_position可設置為(0,1)
C.可將weights配置為model.trainable_params(),對網絡變量進行求導
D.has_aux:是否返回輔助參數,可設為True
正確答案:ACD
解析:首先在這里可以看到它已經事先把數據預處理、網絡構建等過程做到了,在形參中分為幾項,其中第一項是fn,對應需要輸入或需要被變換的函數,往往是正向計算的函數,即forward_fn,因此A正確;BC項主要定位到底基于哪些參數求導,但是定義方式分為兩種,第一種情況是定義grad_position,也就是如果在forward_fn正向計算函數中的輸入里包含基于求導的參數,那么就可以通過grad_func找到該參數在輸入形參的位置去進行定義或指定,而weights一般面向的情況是指,如果在被求導或被變換的函數中它的形參中并沒有涉及到我們的參數,那么就可以通過輸入到一個對應列表中表示需要求導的參數有哪些,通過這樣的方式進行定義。在本題中可看到最開始是繼承nn.Cell構建出了一個網絡,所以在實際上進行forward_fn的定義(正向計算)時,其實在形參里沒有w(weight)或b(bias)這樣的參數輸入,所以grad_position是無法做到定義或指定的作用,因此在這個情況中B錯誤,一般來說grad_position和weights是二選一方式,如果用到weights,grad_position一般就是none,反之,weights就是none,所以C正確;最后看D項,一般默認進行函數變換時,返回是梯度,如果除了梯度還想返回loss或其他值,則可以將has_aux設為true,一并返回其他數值,綜上所述,本題選ACD。
7、某同學在基于MindSpore訓練深度神經網絡時,采用SGD優化器,學習率設置為0.1,發現訓練初期損失值劇烈波動,且模型難以收斂。以下哪些方法可能是有效的優化策略?(多選題)
A.使用Adam優化器替代SGD
B.增加批量歸一化(BatchNorm)層
C.將學習率從0.1調整為0.01
D.禁用所有Dropout層
正確答案:ABC
解析:本題中的問題主要分為劇烈波動和難以收斂兩點,原本使用SGD優化器,A項通過Adam優化器進行替代,從而Adam可以自動調節,因此A是有效方式;B項增加批量歸一化的BatchNorm層也可以同樣將收斂的速度提升,因此也正確;C項學習率的調整相當于是將步長從大邁到小,也是有效的解決方式,可以理解成在模型優化時有點像登山,需要找到山上最高點,步子邁得過大可能出現邁過的情況,所以會在global maximum的情況下反復橫跳直到最后找到希望找到的最大值global maximum,因此在這樣的情況下,將步子邁小就可以穩步攀升,直到找到最高點;D項禁用Dropout層可能加劇過擬合問題,因此不建議,綜上本題選ABC。
8、訓練目標檢測模型時,發現模型對小尺度目標檢測效果差。以下哪些數據增強方法可能提升小目標檢測性能?(多選題)
A.隨機裁剪(Random Crop)
B.多尺度訓練(輸入圖像隨機縮放)
C.水平翻轉(Horizontal Flip)
D.調整圖像對比度
E.高斯模糊
正確答案:AB
解析:A項隨機裁剪可以迫使模型關注局部區域的小目標;B項多尺度訓練可以增強模型對于不同尺寸目標的適應能力,也可以提升小尺寸目標的檢測性能;C項水平翻轉指圖像按照垂直軸進行水平翻轉,即圖像左右部分互換,可以增加數據多樣性,提升模型泛化能力;D項調整圖像對比度是指改變圖像的亮區和暗區的差異,增加或減弱圖像對比度,可以模擬不同光照條件下圖像,也可以增加數據多樣性,提升模型泛化能力;E項高斯模糊通過高斯濾波減少圖像中噪聲或細節來模糊圖像,可以模糊圖像前景或背景來模擬不同景深效果,E項和CD項效果一樣,都是增加數據多樣性,提升模型魯棒性和泛化能力,因此本題可能提升小目標檢測性能的方法應選AB。
Part 3 模型推理與應用模塊(共6題):
1、在移動設備上部署深度學習模型時,由于手機的存儲資源相對有限,常常會遇到存儲空間有限的問題。現在小華需要在手機端部署圖像分類模型,但模型大小超出存儲限制。以下哪種方法可以減少模型體積同時保證精度損失較小?(單選題)
A.將模型從FP16轉換為INT8量化
B.刪除最后兩個全連接層
C.使用動態批處理(Dynamic Batching)
D.對輸入圖像進行下采樣
正確答案:A
解析:A項是將模型從浮點域轉化為整型域的模型壓縮技術,可以將模型體積減少至1/2,可以減少計算量,降低模型計算帶寬和內存占用,而且現代化量化技術可以保持較高的精度;B項可能破壞模型結構導致性能崩潰;C項動態批處理是根據輸入數據的實時需求動態調整批量大小,提升計算效率和增加吞吐量,優化計算速度,與題干中減少模型體積和保證精度損失較小無關;D項下采樣可以增加圖像感受野,提取圖像更抽象的高層次特征,可能顯著降低輸入的信息量,也有可能顯著降低檢測精度,因此本題選A。
2、某同學正在使用MindSpore進行模型推理任務,在此之前需要加載模型權重,在運行mindspore.load_param_into_net后發現返回的列表不為空,以下哪一項對該情況描述正確?(單選題)
A. load_param_into_net會返回未被加載的參數列表,如返回值不為空,說明有參數未加載成功
B. load_param_into_net會返回加載后的模型結構,返回值不為空是正常現象
C. load_param_into_net會返回權重文件中被加載的參數,如果返回值為空,說明缺失load_checkpoint步驟
D.如果返回值不為空,說明load_param_into_net入參數據類型有誤,需做檢查
正確答案:A
解析:在本題的加載權重處,可看到已經給出運行時調用的是load_param_into_net接口,正常是其實有兩步,第一步通過load_ checkpoint將之前存好的權重文件變成K-V類似于字典的形式,然后將字典通過load_param_into_net將權重加載到模型之中,在此處其實也是一個通過返回值檢查模型實現是否正確的方式,一般而言load_param_into_net返回內容中會包含未成功加載模型權重的參數有哪些,所以正常來看,如果加載成功返回的值是空值,但如果出現返回值不為空的情況,那么可以根據返回內容定位具體哪一層哪一個模型參數權重沒有加載成功,通過這樣方式進行進一步檢查、定位和修正。因此看四個選項,A項正確;B項返回加載的模型權重一般而言可以直接通過print model將模型結構打印出來,它返回內容也是錯誤的;然后C項返回權重文件中被加載的參數也是不正確的,應通過get params的方式獲取模型中所有參數信息;最后D項返回值不為空也不是參數類型的方式,是未加載參數到底有哪些,因此本題選A。
3、在自然語言處理領域,自回歸模型(如GPT系列)因其強大的文本生成能力而備受關注。在實際應用中,人們觀察到在自回歸模型(如GPT)推理時,生成第N個token的速度比第1個token快。此現象主要因為以下哪種技術?(單選題)
A.模型并行計算
B.注意力層的KV緩存復用
C.動態量化
D.梯度檢查點(Gradient Checkpointing)
正確答案:B
解析:A項模型并行計算用來加速模型整體運行速度,并不是針對特定步驟加速,并不會導致生成第N個token的速度比第1個token快;B項KV緩存是為了避免重復計算歷史token的Key和Value值,需要的時候直接復用,所以可以顯著加速后續token的生成;C項動態量化是根據輸入的數據動態計算量化參數減少內存占用和計算復雜度,是為了在模型訓練或推理時減少計算資源需求,并不會直接導致生成第N個token速度比第1個token快;D項梯度檢查點是在模型訓練的時候減少對內存占用需求,主要在模型訓練前向傳播時選擇某些層作為檢查點保存其輸出,其余層則不保存,在反向傳播時重新計算未被存儲的檢查點,然后再去計算梯度,通過犧牲部分計算時間減少內存的占用,這個是在訓練時的,與題目中推理時生成速度沒有直接影響,因此本題選B。
4、某同學正在通過MindSpore構建一個貓狗分類的模型,并計劃利用MindSpore Lite框架將模型部署在手機上,目前已經完成了模型的訓練,以下對接下來步驟操作描述正確的是哪幾項?(多選題)
A.首先,導出MindIR模型
B.其次,在端側部署時,需要使用轉換工具將MindIR轉換為AIR
C.然后,在手機端構建好可以調用模型文件的APP后,通過USB連接傳輸、郵件傳輸、第三方軟件傳輸等形式,將模型傳輸至手機
D.最后,將模型文件移動至指定路徑下
正確答案:ACD
解析:本題考察模型端側部署的流程。題目中已經完成了模型的訓練,接下來首先應導出模型,將模型通過export方式導出作為MindIR格式文件,其實它是一個MindSpore Intermediate Representation中間表達的簡稱,MindSpore會提供一個全場景統一的MindIR表達從而將其應用到端邊緣的多種場景中,所以A正確;但是在后來是沒有必要將MindIR轉換為AIR的,AIR是Ascend Intermediate Representation,是針對昇騰處理器的模型,在此處是不涉及的,我們是在手機上進行部署;后面是將手機構建好模型文件的app,可以通過包括USB連接傳輸、郵件、第三方軟件的多種方式將模型MindIR傳輸到手機上;最后需要將模型移動到指定路徑下激活能力,因此本題選ACD。
5、將浮點模型轉換為8位整型模型后,推理速度提升但準確率下降3%。以下哪些操作可以減少精度損失?(多選題)
A.對權重做對稱量化
B.在量化前對模型進行微調(Fine-tuning)
C.僅對部分敏感層保留浮點計算
D.增大校準數據集規模
正確答案:BCD
解析:A項對稱量化的模型量化核心特點就是對稱性,即正負范圍對稱,但如果數據分布不對稱,就會導致精度下降;B項量化前的微調會適應量化誤差,從而減少精度損失;C項是利用混合精度計算保留關鍵層的精度,可以減少精度損失;D項校準數據集是調整和優化模型參數的專用數據集,它可以評估量化前后模型的性能變化,也可以通過校準數據集的調整模型減少量化帶來的精度損失,因此本題選BCD。
6、在計算機視覺應用中,實時目標檢測是一項關鍵任務,特別是在監控系統、自動駕駛汽車和智能安防等領域。為了實現高效的實時處理,需要確保目標檢測算法能夠在限定的時間內完成每一幀圖像的處理。現在,有研究者需對實時視頻流(30幀/秒)進行目標檢測,當前單幀推理耗時50ms。以下哪些方法可滿足實時性需求?(多選題)
A.降低輸入圖像分辨率
B.使用多線程并行處理幀
C.采用更復雜的后處理算法
D.跳過相鄰幀間的重復推理
正確答案:ABD
解析:本題要求對實時視頻流的單幀處理速度大約是30ms,但是當前單幀推理耗時50ms,即推理速度較慢,A項分辨率意味著圖像中像素的數量,分辨率越高即像素數量越多,那么模型需要處理的數據量越大,降低圖像的分辨率可以使模型需處理的數據量少一些,可以加速推理速度;B項是多線程利用計算資源,從而并行處理,也是可以的;C項采用更復雜的后處理算法可能增加計算量和計算復雜度,從而增加延遲,降低推理速度;D項是可以的,比如每隔一幀推理,幀間冗余推理可以跳過從而加速推理速度,因此本題選ABD。