字節(jié)CV搜索提前批面試題7道|含解析
Stable Diffusion是一種潛在擴散模型,主要通過自動編碼器(VAE),U-Net以及文本編碼器三個核心組件完成用文本來控制生成的圖像。Unet的Attention模塊Latent Feature和Context Embedding作為輸入,將兩者進行Cross Attenetion操作,將圖像信息和文本信息進行了融合,整體上是一個經典的Transformer流程。
Cross Attention:在Transformer模型中,Cross Attention通常用于“編碼器-解碼器”結構中的解碼器,允許解碼器關注編碼器的輸出。解碼器可以使用這種注意力權重來決定從編碼器輸出中關注哪些部分。
Softmax:Softmax函數是一種將向量轉化為概率分布的函數。給定一個實數向量,它會輸出一個相同維度的新向量,其中每個值都是在0和1之間,并且所有值的總和為1。具體地說,softmax函數的第i個元素的值是原向量的第i個元素的指數與所有元素的指數之和的比值。
問題3:交叉熵
交叉熵用于衡量兩個概率分布之間的差異。在機器學習中,通常一個分布是真實的標簽分布,另一個分布是模型的預測。數學上,交叉熵定義為
問題4:Focal Loss
Focal Loss是為了解決目標檢測任務中正負樣本不均衡問題而提出的。在傳統的交叉熵損失中,容易出現大量的負樣本主導損失,導致模型無法學習到稀有或困難的正樣本。Focal Loss通過給予那些容易分類的樣本更小的權重來減少這種影響。
問題5:Dropout
Dropout是一種正則化技巧,其在訓練期間隨機“關閉”神經網絡中的一部分神經元。這有助于防止模型過擬合。
在訓練時,Dropout層會隨機地將其輸入單位的一部分設置為0,其余部分不變。而在推理(或測試)時,Dropout層不會修改其輸入,但可能會根據丟棄率對其輸出進行縮放。
問題6:排序算法的復雜度
快速排序:平均時間復雜度是O(n log n),但在最壞的情況下是O(n^2)。
冒泡排序:時間復雜度在最好、平均和最壞的情況下都是O(n^2)。
插入排序:最好的情況下時間復雜度是O(n),平均和最壞的情況下是O(n^2)。
問題7:堆排序
堆排序是一種基于二叉堆數據結構的排序算法。
建堆的過程:可以從一個無序的數組開始,并將其轉化為一個最大堆(父節(jié)點的值大于子節(jié)點)或最小堆(父節(jié)點的值小于子節(jié)點)。常用的方法是“下沉”方法,從最后一個非葉子節(jié)點開始,確保所有節(jié)點都滿足堆的性質。
復雜度:建堆的時間復雜度是O(n),而堆排序的總時間復雜度是O(n log n)。
免費送

掃碼回復【999】免費領10本電子書
(或找七月在線其他老師領取)
點擊“閱讀原文”搶寵粉福利~

