LLM面試題14

算法崗面試題

  1. 介紹下Transformer模型。

????Transformer本身是一個典型的encoder-decoder模型,Encoder端和Decoder端均有6個Block,Encoder端的Block包括兩個模塊,多頭self-attention模塊以及一個前饋神經網絡模塊;Decoder端的Block包括三個模塊,Masked多頭self-attention模塊,多頭Encoder-Decoder attention交互模塊,以及一個前饋神經網絡模塊;需要注意:Encoder端和Decoder端中的每個模塊都有殘差層和LayerNormalization層。

  1. 介紹下注意力機制。

????Self Attention與傳統的Attention機制非常的不同:傳統的Attention是基于source端和target端的隱變量(hidden state)計算Attention的,得到的結果是源端的每個詞與目標端每個詞之間的依賴關系。但Self Attention不同,它分別在source端和target端進行,僅與source input或者target input自身相關的Self Attention,捕捉source端或target端自身的詞與詞之間的依賴關系;然后再把source端的得到的self Attention加入到target端得到的Attention中,捕捉source端和target端詞與詞之間的依賴關系。因此,self Attention比傳統的Attention mechanism效果要好,主要原因之一是,傳統的Attention機制忽略了源端或目標端句子中詞與詞之間的依賴關系,相對比,self Attention可以不僅可以得到源端與目標端詞與詞之間的依賴關系,同時還可以有效獲取源端或目標端自身詞與詞之間的依賴關系。

  1. 多頭注意力機制的多頭指的是什么?

????與使用單獨的一個注意力不同,多頭注意力機制可以獨立學習得到h組不同的線性投影(linearprojections)來變換查詢、鍵和值。然后,這h組變換后的查詢、鍵和值將并行地進行注意力池化。最后,將這個注意力池化的輸出拼接在一起,并且通過另一個可以學習的線性投影進行變換,以產生最終輸出。這種設計被稱為多頭注意力。自注意力機制的缺陷就是:模型在對當前位置的信息進行編碼時,會過度的將注意力集中于自身的位置,因此作者提出了通過多頭注意力機制來解決這一問題。使用多頭注意力機制能夠給予注意力層的輸出包含有不同子空間中的編碼表示信息,從而增強模型的表達能力。

  1. 介紹一個熟悉的網絡結構,Resnet。

ResNet.又稱殘差神經網絡,它通過引入shortcut結構來規避普通神經網絡中出現的梯度消失和網絡退化問題。ResNet的特點是:1.殘差學習。2.shortcuts連接。3.加深網絡不退化。

  1. 你知道哪些緩解梯度消失和梯度爆炸的方法?

以下幾種方法供參考:換用Relu、LeakyRelu、Elu等激活涵函數ReLu:讓激活函數的導數為1LeakyReLu:包含了ReLu的幾乎所有有點,同時解決了ReLu中O區間帶來的影響ELU:和LeakyReLu一樣,都是為了解決0區間問題,相對于來,elu計算更耗時一些BatchNormalization LayerNormalizationBN及LN本質上是解決傳播過程中的梯度問題。用LSTM或GRU來代替RNN。加入ResNet網絡。使用梯度裁剪(Gradient Clipping)。

  1. transformer和CNN的區別是什么?
  • Transformer模型的核心是self-attention機制,而CNN模型的核心是卷積和池化;
  • Transformer模型可以學習到數據中每個詞之間的相關性,而CNN關注于二維局部數據之間的相互關聯,隨著層的加深,關注區域會更廣。
  1. Leetcode一—最長回文子串。

方法:中心擴展法。遍歷每一個字符串,分兩種情況進行中心擴展,一種為奇數,一種為偶數,如果兩邊字母相同,就繼續擴展;如果不相同就停止擴展,對所有滿足要求的長度求出最大值,得到最終答案。

class Solution:def expandAroundCenter(self,s,left,right):while left >=0 and right len(s)and s[left]=s[right]:left -= 1right += 1return left +1,right-1def longestPalindrome(self,s:str)->str:start,end 0,0for i in range(len(s)):left1,right1 self.expandAroundCenter(s,i,i)left2,right2 self.expandAroundCenter(s,i,i+1)if right1 - left1 > end - start:start,end = left1,right1if right2-left2 > end-start:start,end = left2,right2return s[start:end +1]

科技算法崗面試題7道

  1. BN層的參數,輸入是N,C,H,BN層參數是多少?

BN層的參數是C*2(C為通道數),BN的本質是利用優化改變方差大小和均值的位置,在CNN中,因為網絡的特征是對應到一張特征圖上的,所以BN是以特征圖為單位而不是按照各個維度。

  1. softmax和交叉熵損失怎么計算,二值交叉熵呢?

softmax計算公式如下:在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述在這里插入圖片描述

  1. 如果softmax的e次方超過float的值了怎么辦?

將分子分母同時除以中的最大值,可以解決。
在這里插入圖片描述

  1. 常用的優化器有哪些,ADAM和SGD有什么區別?

常見的優化器:SGD、BGD、MBGD、Momentum、NAG、Adagrad、Adadelta,RMSprop、Adam、AdamW優化器等。SGD是隨機梯度下降法,是最基本的優化器。Adam是一種自適應學習率的方法。以SGD作為最初的算法,Momentum在其基礎上加入了一階動量(歷史梯度的累計),AdaGrad和RMSProp在其基礎上加入了二階動量(歷史梯度的平方累計),Adam就是結合了SGD的一階動量和RMSProp的二階動量算法。

  1. Resnet的BottleneckBlock和Basic Block有什么區別,為什么這么叫?

BasicBlock架構主要使用了兩個33的卷積;BottleneckBlock架構主要使用了三個卷積層,卷積核大小分別是11,33,11,兩頭小中間大,因此取名瓶頸塊。

  1. L1范數和L2范數有什么區別,為什么L1解空間是稀疏的,L2解空間是稠密的
  • L1是模型各個參數的絕對值之和。
  • L2是模型各個參數的平方和的開方值。
  • L1會趨向于產生少量的特征,而其他的特征都是0。因為最優的參數值很大概率出現在坐標軸上,這樣就會導致某一維的權重為0,產生稀疏權重矩陣。
  • L2會選擇更多的特征,這些特征都會接近于0。最優的參數值很小概率出現在坐標軸上,因此每一維的參數都不會是0。當最小化w時,就會使每一項趨近于0。
  • L1的作用是為了矩陣稀疏化。假設的是模型的參數取值滿足拉普拉斯分布,L1正則的本質其實是為模型增加了”模型參數服從零均值拉普拉斯分布”這一先驗知識。(它在0的概率最大,尾部較正態分布更平坦。)
  • L2的作用是為了使模型更平滑,得到更好的泛化能力。假設的是參數是滿足高斯分布。(它在兩端尾部略高,拉普拉斯分布,在0處更平坦。)
  • L1的權值更新固定減小一個值,有可能會減小到0;
  • L2的權值更新,每次減小上一次的1/2,權值會越來越小,但不會為0。
  1. 二分查找求×的平方根
class Solution:def mySqrt(self,x:int)->int:left,right = 0,xwhile left <= right:mid = left +(right-left)//2if mid * mid <=x and (mid +1)*(mid +1)>x:return midelif mid * mid> x and (mid 1)*(mid +1)>x:right = mid -1else:left = mid 1

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/89989.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/89989.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/89989.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Java金融場景中為什么金額字段禁止使用浮點類型(float/double)?

引言 Java金融場景中為什么金額字段禁止使用浮點類型&#xff1f;這是一篇你不能忽視的“爆雷”警告&#xff01; 在金融、電商、支付、清結算等業務系統中&#xff0c;浮點類型是絕對禁區&#xff01; &#x1f6a8;一、核心警告&#xff1a;浮點類型不是十進制數&#xff01;…

SVN下載與拉取

大家好我是蘇麟&#xff0c;今天聊一聊SVN。 SVN官網&#xff1a;下載 TortoiseSVN - TortoiseSVN 軟件 根據系統選擇32位還是64位 打開文件 安裝&#xff0c;下一步&#xff0c;下一步 安裝成功后&#xff0c;右鍵找到SVNcheck 輸入地址 輸入用戶名和密碼就OK了 這期就到這里…

數據結構筆記8:堆

目錄 滿二叉樹&#xff1a; 完全二叉樹&#xff1a; 堆是一種特殊的完全二叉樹&#xff1a; 我們可以以數組的方式存儲堆。 父節點和子節點下標關系的推導&#xff1a; 1.使用數學歸納法證明n2 1 n0&#xff1a; 2.使用邊和節點的關系證明n2 1 n0&#xff1a; 我們…

3. lvgl 9.3 vscode 模擬環境搭建 lv_port_pc_vscode-release-v9.3

文章目錄1. 資源下載1. 1 lv_port_pc_vscode1.2 cmake 和 mingw 環境搭建1.3 sdl 下載1.4 下載lvgl_v9.32. 環境搭建2.1 拷貝lvgl 源碼到工程2.2 添加SDL2 依賴2.3 執行工程3. 運行示例1. 資源下載 1. 1 lv_port_pc_vscode 那么多模擬器&#xff0c;為什么選擇這個&#xff1…

【牛客刷題】小紅的爆炸串(二)

一、題目介紹 本題鏈接為:小紅的爆炸串(二) 小紅定義一個字符串會爆炸,當且僅當至少有k對相鄰的字母不同。 例如,當 k k k=2時,"arc"會爆炸,而"aabb"則不會爆炸。 小紅拿到了一個長度為

【實戰】如何訓練一個客服語音對話場景VAD模型

1. 引言:客服場景下的VAD模型 在客服中心,每天都會產生海量的通話錄音。對這些錄音進行有效分析,可以用于服務質量監控、客戶意圖洞察、流程優化等。VAD在其中扮演著“預處理器”和“過濾器”的關鍵角色: 提升ASR效率與準確性:只將檢測到的語音片段送入ASR引擎,可以避免…

在 Dokploy 中為 PostgreSQL 搭建 PgBouncer 數據庫連接池(圖文)

前言&#xff1a;為什么你需要一個連接池&#xff1f; 如果你正在使用 Node.js (尤其是像 Next.js 這樣的框架) 配合 Prisma 操作 PostgreSQL 數據庫&#xff0c;你很可能在某個階段會遇到那個令人頭疼的錯誤&#xff1a;“Error: Too many clients already”。這通常發生在應…

Mac獲取終端歷史

在 macOS 中&#xff0c;歷史記錄文件的位置取決于你使用的 shell。以下是針對不同 shell 的歷史記錄文件的默認位置&#xff1a;對于 Bash 用戶&#xff1a; 歷史記錄文件通常位于 ~/.bash_history。對于 Zsh 用戶&#xff08;macOS Catalina及以后版本默認使用的shell&#x…

高頻交易服務器篇

在 Binance 進行高頻交易&#xff08;HFT&#xff09;時&#xff0c;服務器的低延遲、高穩定性和快速網絡是關鍵。亞馬遜云&#xff08;AWS&#xff09; 提供了多種適合高頻交易的方案&#xff0c;以下是推薦的配置和優化策略&#xff1a;1. 選擇 AWS 區域&#xff08;Region&a…

MVC與MVVM架構模式詳解:原理、區別與JavaScript實現

Hi&#xff0c;我是布蘭妮甜 &#xff01;在當今復雜的前端開發領域&#xff0c;如何組織代碼結構一直是開發者面臨的核心挑戰。MVC和MVVM作為兩種經典的架構模式&#xff0c;為前端應用提供了清晰的責任劃分和可維護的代碼組織方案。本文將深入探討這兩種模式的原理、實現差異…

從小白到進階:解鎖linux與c語言高級編程知識點嵌入式開發的任督二脈(2)

【硬核揭秘】Linux與C高級編程&#xff1a;從入門到精通&#xff0c;你的全棧之路&#xff01; 第三部分&#xff1a;Shell腳本編程——自動化你的Linux世界&#xff0c;讓效率飛起來&#xff01; 嘿&#xff0c;各位C語言的“卷王”們&#xff01; 在Linux的世界里&#xf…

鎖和事務的關系

事務的4大特性(ACID) 原子性&#xff08;Atomicity&#xff09;&#xff1a;事務被視為一個單一的、不可分割的工作單元一致性&#xff08;Consistency&#xff09;&#xff1a;事務執行前后&#xff0c;數據庫從一個一致狀態轉變為另一個一致狀態&#xff0c;并且強制執行所有…

電動車信用免押小程序免押租賃小程序php方案

電動車信用免押租賃小程序&#xff0c;免押租小程序&#xff0c;信用免押接口申請、對接開發&#xff0c;可源碼搭建&#xff0c;可二開或定制。開發語言后端php&#xff0c;前端uniapp。可二開定制 在線選擇門店&#xff0c;選擇車輛類型&#xff0c;選擇租賃方式&#xff08…

機器學習在智能安防中的應用:視頻監控與異常行為檢測

隨著人工智能技術的飛速發展&#xff0c;智能安防領域正經歷著一場深刻的變革。智能安防通過整合先進的信息技術&#xff0c;如物聯網&#xff08;IoT&#xff09;、大數據和機器學習&#xff0c;能夠實現從傳統的被動防御到主動預防的轉變。機器學習技術在智能安防中的應用尤為…

MySQL中DROP、DELETE與TRUNCATE的深度解析

在MySQL數據庫操作中&#xff0c;DROP、DELETE和TRUNCATE是三個常用的數據操作命令&#xff0c;它們都可以用于刪除數據&#xff0c;但在功能、執行效率、事務處理以及對表結構的影響等方面存在顯著差異。本文將從多個維度對這三個命令進行詳細對比和解析&#xff0c;幫助讀者更…

一條 SQL 語句的內部執行流程詳解(MySQL為例)

當執行如下 SQL&#xff1a; SELECT * FROM users WHERE id 1;在數據庫內部&#xff0c;其實會經歷多個復雜且有序的階段。以下是 MySQL&#xff08;InnoDB 引擎&#xff09;中 SQL 查詢語句從發送到結果返回的完整執行流程。 客戶端連接階段 客戶端&#xff08;如 JDBC、My…

超詳細yolo8/11-detect目標檢測全流程概述:配置環境、數據標注、訓練、驗證/預測、onnx部署(c++/python)詳解

文章目錄 一、配置環境二、數據標注三、模型訓練四、驗證預測五、onnx部署c 版python版本 一、配置環境 我的都是在Linux系統下&#xff0c;訓練部署的&#xff1b;模型訓練之前&#xff0c;需要配置好環境&#xff0c;Anaconda、顯卡驅動、cuda、cudnn、pytorch等&#xff1b…

阿里云Flink:開啟大數據實時處理新時代

走進阿里云 Flink 在大數據處理的廣袤領域中&#xff0c;阿里云 Flink 猶如一顆璀璨的明星&#xff0c;占據著舉足輕重的地位。隨著數據量呈指數級增長&#xff0c;企業對數據處理的實時性、高效性和準確性提出了前所未有的挑戰 。傳統的數據處理方式逐漸難以滿足這些嚴苛的需…

【Linux】基礎開發工具(1)

1. 軟件包管理器 1.1 什么是軟件包 在Linux下安裝軟件, ?個常用的辦法是下載到程序的源代碼, 并進行編譯, 得到可執行程序. 但是這樣太麻煩了, 于是有些人把?些常?的軟件提前編譯好, 做成軟件包(可以理解成windows上 的安裝程序)放在?個服務器上, 通過包管理器可以很?便…

藍橋杯51單片機設計

#超聲波原理# ①超聲波測距原理&#xff1a;聲波反射原理 聲波分類&#xff1a; 超聲波測距原理 超聲波頻率越高&#xff0c;波長越短&#xff0c;反身性越強&#xff0c;衍射性越弱 ②超聲波模塊原理 發射原理 跳線帽 接收原理 問題&#xff1a; &#xff11;.超聲波發射模塊需…