日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

三层神经网络的训练模型,神经网络训练模型描述

發布時間:2024/1/18 编程问答 20 豆豆
生活随笔 收集整理的這篇文章主要介紹了 三层神经网络的训练模型,神经网络训练模型描述 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

影響人工神經網絡性能的三要素

谷歌人工智能寫作項目:神經網絡偽原創

如何訓練神經網絡

1、先別著急寫代碼訓練神經網絡前,別管代碼,先從預處理數據集開始寫作貓。我們先花幾個小時的時間,了解數據的分布并找出其中的規律。

Andrej有一次在整理數據時發現了重復的樣本,還有一次發現了圖像和標簽中的錯誤。所以先看一眼數據能避免我們走很多彎路。

由于神經網絡實際上是數據集的壓縮版本,因此您將能夠查看網絡(錯誤)預測并了解它們的來源。如果你的網絡給你的預測看起來與你在數據中看到的內容不一致,那么就會有所收獲。

一旦從數據中發現規律,可以編寫一些代碼對他們進行搜索、過濾、排序。把數據可視化能幫助我們發現異常值,而異常值總能揭示數據的質量或預處理中的一些錯誤。

2、設置端到端的訓練評估框架處理完數據集,接下來就能開始訓練模型了嗎?并不能!下一步是建立一個完整的訓練+評估框架。在這個階段,我們選擇一個簡單又不至于搞砸的模型,比如線性分類器、CNN,可視化損失。

獲得準確度等衡量模型的標準,用模型進行預測。這個階段的技巧有:· 固定隨機種子使用固定的隨機種子,來保證運行代碼兩次都獲得相同的結果,消除差異因素。· 簡單化在此階段不要有任何幻想,不要擴增數據。

擴增數據后面會用到,但是在這里不要使用,現在引入只會導致錯誤。

· 在評估中添加有效數字在繪制測試集損失時,對整個測試集進行評估,不要只繪制批次測試損失圖像,然后用Tensorboard對它們進行平滑處理。· 在初始階段驗證損失函數驗證函數是否從正確的損失值開始。

例如,如果正確初始化最后一層,則應在softmax初始化時測量-log(1/n_classes)。· 初始化正確初始化最后一層的權重。如果回歸一些平均值為50的值,則將最終偏差初始化為50。

如果有一個比例為1:10的不平衡數據集,請設置對數的偏差,使網絡預測概率在初始化時為0.1。正確設置這些可以加速模型的收斂。· 人類基線監控除人為可解釋和可檢查的損失之外的指標。

盡可能評估人的準確性并與之進行比較。或者對測試數據進行兩次注釋,并且對于每個示例,將一個注釋視為預測,將第二個注釋視為事實。

· 設置一個獨立于輸入的基線最簡單的方法是將所有輸入設置為零,看看模型是否學會從輸入中提取任何信息。· 過擬合一個batch增加了模型的容量并驗證我們可以達到的最低損失。

· 驗證減少訓練損失嘗試稍微增加數據容量。

BP人工神經網絡

人工神經網絡(artificialneuralnetwork,ANN)指由大量與自然神經系統相類似的神經元聯結而成的網絡,是用工程技術手段模擬生物網絡結構特征和功能特征的一類人工系統。

神經網絡不但具有處理數值數據的一般計算能力,而且還具有處理知識的思維、學習、記憶能力,它采用類似于“黑箱”的方法,通過學習和記憶,找出輸入、輸出變量之間的非線性關系(映射),在執行問題和求解時,將所獲取的數據輸入到已經訓練好的網絡,依據網絡學到的知識進行網絡推理,得出合理的答案與結果。

巖土工程中的許多問題是非線性問題,變量之間的關系十分復雜,很難用確切的數學、力學模型來描述。

工程現場實測數據的代表性與測點的位置、范圍和手段有關,有時很難滿足傳統統計方法所要求的統計條件和規律,加之巖土工程信息的復雜性和不確定性,因而運用神經網絡方法實現巖土工程問題的求解是合適的。

BP神經網絡模型是誤差反向傳播(BackPagation)網絡模型的簡稱。它由輸入層、隱含層和輸出層組成。

網絡的學習過程就是對網絡各層節點間連接權逐步修改的過程,這一過程由兩部分組成:正向傳播和反向傳播。

正向傳播是輸入模式從輸入層經隱含層處理傳向輸出層;反向傳播是均方誤差信息從輸出層向輸入層傳播,將誤差信號沿原來的連接通路返回,通過修改各層神經元的權值,使得誤差信號最小。

BP神經網絡模型在建立及應用過程中,主要存在的不足和建議有以下四個方面:(1)對于神經網絡,數據愈多,網絡的訓練效果愈佳,也更能反映實際。

但在實際操作中,由于條件的限制很難選取大量的樣本值進行訓練,樣本數量偏少。(2)BP網絡模型其計算速度較慢、無法表達預測量與其相關參數之間親疏關系。

(3)以定量數據為基礎建立模型,若能收集到充分資料,以定性指標(如基坑降水方式、基坑支護模式、施工工況等)和一些易獲取的定量指標作為輸入層,以評價等級作為輸出層,這樣建立的BP網絡模型將更準確全面。

(4)BP人工神經網絡系統具有非線性、智能的特點。

較好地考慮了定性描述和定量計算、精確邏輯分析和非確定性推理等方面,但由于樣本不同,影響要素的權重不同,以及在根據先驗知識和前人的經驗總結對定性參數進行量化處理,必然會影響評價的客觀性和準確性。

因此,在實際評價中只有根據不同的基坑施工工況、不同的周邊環境條件,應不同用戶的需求,選擇不同的分析指標,才能滿足復雜工況條件下地質環境評價的要求,取得較好的應用效果。

神經網絡算法的三大類分別是?

神經網絡算法的三大類分別是:1、前饋神經網絡:這是實際應用中最常見的神經網絡類型。第一層是輸入,最后一層是輸出。如果有多個隱藏層,我們稱之為“深度”神經網絡。他們計算出一系列改變樣本相似性的變換。

各層神經元的活動是前一層活動的非線性函數。2、循環網絡:循環網絡在他們的連接圖中定向了循環,這意味著你可以按照箭頭回到你開始的地方。他們可以有復雜的動態,使其很難訓練。他們更具有生物真實性。

循環網絡的目的是用來處理序列數據。在傳統的神經網絡模型中,是從輸入層到隱含層再到輸出層,層與層之間是全連接的,每層之間的節點是無連接的。但是這種普通的神經網絡對于很多問題卻無能無力。

循環神經網路,即一個序列當前的輸出與前面的輸出也有關。

具體的表現形式為網絡會對前面的信息進行記憶并應用于當前輸出的計算中,即隱藏層之間的節點不再無連接而是有連接的,并且隱藏層的輸入不僅包括輸入層的輸出還包括上一時刻隱藏層的輸出。

3、對稱連接網絡:對稱連接網絡有點像循環網絡,但是單元之間的連接是對稱的(它們在兩個方向上權重相同)。比起循環網絡,對稱連接網絡更容易分析。這個網絡中有更多的限制,因為它們遵守能量函數定律。

沒有隱藏單元的對稱連接網絡被稱為“Hopfield 網絡”。有隱藏單元的對稱連接的網絡被稱為玻爾茲曼機。

擴展資料:應用及發展:心理學家和認知科學家研究神經網絡的目的在于探索人腦加工、儲存和搜索信息的機制,弄清人腦功能的機理,建立人類認知過程的微結構理論。

生物學、醫學、腦科學專家試圖通過神經網絡的研究推動腦科學向定量、精確和理論化體系發展,同時也寄希望于臨床醫學的新突破;信息處理和計算機科學家研究這一問題的目的在于尋求新的途徑以解決不能解決或解決起來有極大困難的大量問題,構造更加逼近人腦功能的新一代計算機。

神經網絡BP模型

一、BP模型概述誤差逆傳播(Error Back-Propagation)神經網絡模型簡稱為BP(Back-Propagation)網絡模型。

Pall Werbas博士于1974年在他的博士論文中提出了誤差逆傳播學習算法。完整提出并被廣泛接受誤差逆傳播學習算法的是以Rumelhart和McCelland為首的科學家小組。

他們在1986年出版“Parallel Distributed Processing,Explorations in the Microstructure of Cognition”(《并行分布信息處理》)一書中,對誤差逆傳播學習算法進行了詳盡的分析與介紹,并對這一算法的潛在能力進行了深入探討。

BP網絡是一種具有3層或3層以上的階層型神經網絡。上、下層之間各神經元實現全連接,即下層的每一個神經元與上層的每一個神經元都實現權連接,而每一層各神經元之間無連接。

網絡按有教師示教的方式進行學習,當一對學習模式提供給網絡后,神經元的激活值從輸入層經各隱含層向輸出層傳播,在輸出層的各神經元獲得網絡的輸入響應。

在這之后,按減小期望輸出與實際輸出的誤差的方向,從輸入層經各隱含層逐層修正各連接權,最后回到輸入層,故得名“誤差逆傳播學習算法”。

隨著這種誤差逆傳播修正的不斷進行,網絡對輸入模式響應的正確率也不斷提高。

BP網絡主要應用于以下幾個方面:1)函數逼近:用輸入模式與相應的期望輸出模式學習一個網絡逼近一個函數;2)模式識別:用一個特定的期望輸出模式將它與輸入模式聯系起來;3)分類:把輸入模式以所定義的合適方式進行分類;4)數據壓縮:減少輸出矢量的維數以便于傳輸或存儲。

在人工神經網絡的實際應用中,80%~90%的人工神經網絡模型采用BP網絡或它的變化形式,它也是前向網絡的核心部分,體現了人工神經網絡最精華的部分。

二、BP模型原理下面以三層BP網絡為例,說明學習和應用的原理。

1.數據定義P對學習模式(xp,dp),p=1,2,…,P;輸入模式矩陣X[N][P]=(x1,x2,…,xP);目標模式矩陣d[M][P]=(d1,d2,…,dP)。

三層BP網絡結構輸入層神經元節點數S0=N,i=1,2,…,S0;隱含層神經元節點數S1,j=1,2,…,S1;神經元激活函數f1[S1];權值矩陣W1[S1][S0];偏差向量b1[S1]。

輸出層神經元節點數S2=M,k=1,2,…,S2;神經元激活函數f2[S2];權值矩陣W2[S2][S1];偏差向量b2[S2]。

學習參數目標誤差?;初始權更新值Δ0;最大權更新值Δmax;權更新值增大倍數η+;權更新值減小倍數η-。

2.誤差函數定義對第p個輸入模式的誤差的計算公式為中國礦產資源評價新技術與評價新模型y2kp為BP網的計算輸出。

3.BP網絡學習公式推導BP網絡學習公式推導的指導思想是,對網絡的權值W、偏差b修正,使誤差函數沿負梯度方向下降,直到網絡輸出誤差精度達到目標精度要求,學習結束。

各層輸出計算公式輸入層y0i=xi,i=1,2,…,S0;隱含層中國礦產資源評價新技術與評價新模型y1j=f1(z1j),j=1,2,…,S1;輸出層中國礦產資源評價新技術與評價新模型y2k=f2(z2k),k=1,2,…,S2。

輸出節點的誤差公式中國礦產資源評價新技術與評價新模型對輸出層節點的梯度公式推導中國礦產資源評價新技術與評價新模型E是多個y2m的函數,但只有一個y2k與wkj有關,各y2m間相互獨立。

其中中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型設輸出層節點誤差為δ2k=(dk-y2k)·f2′(z2k),則中國礦產資源評價新技術與評價新模型同理可得中國礦產資源評價新技術與評價新模型對隱含層節點的梯度公式推導中國礦產資源評價新技術與評價新模型E是多個y2k的函數,針對某一個w1ji,對應一個y1j,它與所有的y2k有關。

因此,上式只存在對k的求和,其中中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型設隱含層節點誤差為中國礦產資源評價新技術與評價新模型則中國礦產資源評價新技術與評價新模型同理可得中國礦產資源評價新技術與評價新模型4.采用彈性BP算法(RPROP)計算權值W、偏差b的修正值ΔW,Δb1993年德國 Martin Riedmiller和Heinrich Braun 在他們的論文“A Direct Adaptive Method for Faster Backpropagation Learning:The RPROP Algorithm”中,提出Resilient Backpropagation算法——彈性BP算法(RPROP)。

這種方法試圖消除梯度的大小對權步的有害影響,因此,只有梯度的符號被認為表示權更新的方向。

權改變的大小僅僅由權專門的“更新值” 確定中國礦產資源評價新技術與評價新模型其中 表示在模式集的所有模式(批學習)上求和的梯度信息,(t)表示t時刻或第t次學習。

權更新遵循規則:如果導數是正(增加誤差),這個權由它的更新值減少。如果導數是負,更新值增加。中國礦產資源評價新技術與評價新模型RPROP算法是根據局部梯度信息實現權步的直接修改。

對于每個權,我們引入它的各自的更新值 ,它獨自確定權更新值的大小。

這是基于符號相關的自適應過程,它基于在誤差函數E上的局部梯度信息,按照以下的學習規則更新中國礦產資源評價新技術與評價新模型其中0<η-<1<η+。

在每個時刻,如果目標函數的梯度改變它的符號,它表示最后的更新太大,更新值 應由權更新值減小倍數因子η-得到減少;如果目標函數的梯度保持它的符號,更新值應由權更新值增大倍數因子η+得到增大。

為了減少自由地可調參數的數目,增大倍數因子η+和減小倍數因子η–被設置到固定值η+=1.2,η-=0.5,這兩個值在大量的實踐中得到了很好的效果。

RPROP算法采用了兩個參數:初始權更新值Δ0和最大權更新值Δmax當學習開始時,所有的更新值被設置為初始值Δ0,因為它直接確定了前面權步的大小,它應該按照權自身的初值進行選擇,例如,Δ0=0.1(默認設置)。

為了使權不至于變得太大,設置最大權更新值限制Δmax,默認上界設置為Δmax=50.0。在很多實驗中,發現通過設置最大權更新值Δmax到相當小的值,例如Δmax=1.0。

我們可能達到誤差減小的平滑性能。5.計算修正權值W、偏差b第t次學習,權值W、偏差b的的修正公式W(t)=W(t-1)+ΔW(t),b(t)=b(t-1)+Δb(t),其中,t為學習次數。

6.BP網絡學習成功結束條件每次學習累積誤差平方和中國礦產資源評價新技術與評價新模型每次學習平均誤差中國礦產資源評價新技術與評價新模型當平均誤差MSE<ε,BP網絡學習成功結束。

7.BP網絡應用預測在應用BP網絡時,提供網絡輸入給輸入層,應用給定的BP網絡及BP網絡學習得到的權值W、偏差b,網絡輸入經過從輸入層經各隱含層向輸出層的“順傳播”過程,計算出BP網的預測輸出。

8.神經元激活函數f線性函數f(x)=x,f′(x)=1,f(x)的輸入范圍(-∞,+∞),輸出范圍(-∞,+∞)。一般用于輸出層,可使網絡輸出任何值。

S型函數S(x)中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍(0,1)。f′(x)=f(x)[1-f(x)],f′(x)的輸入范圍(-∞,+∞),輸出范圍(0, ]。

一般用于隱含層,可使范圍(-∞,+∞)的輸入,變成(0,1)的網絡輸出,對較大的輸入,放大系數較小;而對較小的輸入,放大系數較大,所以可用來處理和逼近非線性的輸入/輸出關系。

在用于模式識別時,可用于輸出層,產生逼近于0或1的二值輸出。雙曲正切S型函數中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍(-1,1)。

f′(x)=1-f(x)·f(x),f′(x)的輸入范圍(-∞,+∞),輸出范圍(0,1]。

一般用于隱含層,可使范圍(-∞,+∞)的輸入,變成(-1,1)的網絡輸出,對較大的輸入,放大系數較小;而對較小的輸入,放大系數較大,所以可用來處理和逼近非線性的輸入/輸出關系。

階梯函數類型1中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。f′(x)=0。

類型2中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍{-1,1}。f′(x)=0。

斜坡函數類型1中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍[0,1]。中國礦產資源評價新技術與評價新模型f′(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。

類型2中國礦產資源評價新技術與評價新模型f(x)的輸入范圍(-∞,+∞),輸出范圍[-1,1]。中國礦產資源評價新技術與評價新模型f′(x)的輸入范圍(-∞,+∞),輸出范圍{0,1}。

三、總體算法1.三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b初始化總體算法(1)輸入參數X[N][P],S0,S1,f1[S1],S2,f2[S2];(2)計算輸入模式X[N][P]各個變量的最大值,最小值矩陣 Xmax[N],Xmin[N];(3)隱含層的權值W1,偏差b1初始化。

情形1:隱含層激活函數f( )都是雙曲正切S型函數1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9))輸出W1[S1][S0],b1[S1]。

情形2:隱含層激活函數f( )都是S型函數1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9)輸出W1[S1][S0],b1[S1]。

情形3:隱含層激活函數f( )為其他函數的情形1)計算輸入模式X[N][P]的每個變量的范圍向量Xrng[N];2)計算輸入模式X的每個變量的范圍均值向量Xmid[N];3)計算W,b的幅度因子Wmag;4)產生[-1,1]之間均勻分布的S0×1維隨機數矩陣Rand[S1];5)產生均值為0,方差為1的正態分布的S1×S0維隨機數矩陣Randnr[S1][S0],隨機數范圍大致在[-1,1];6)計算W[S1][S0],b[S1];7)計算隱含層的初始化權值W1[S1][S0];8)計算隱含層的初始化偏差b1[S1];9)輸出W1[S1][S0],b1[S1]。

(4)輸出層的權值W2,偏差b2初始化1)產生[-1,1]之間均勻分布的S2×S1維隨機數矩陣W2[S2][S1];2)產生[-1,1]之間均勻分布的S2×1維隨機數矩陣b2[S2];3)輸出W2[S2][S1],b2[S2]。

2.應用彈性BP算法(RPROP)學習三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b總體算法函數:Train3BP_RPROP(S0,X,P,S1,W1,b1,f1,S2,W2,b2,f2,d,TP)(1)輸入參數P對模式(xp,dp),p=1,2,…,P;三層BP網絡結構;學習參數。

(2)學習初始化1) ;2)各層W,b的梯度值 , 初始化為零矩陣。

(3)由輸入模式X求第一次學習各層輸出y0,y1,y2及第一次學習平均誤差MSE(4)進入學習循環epoch=1(5)判斷每次學習誤差是否達到目標誤差要求如果MSE<?,則,跳出epoch循環,轉到(12)。

(6)保存第epoch-1次學習產生的各層W,b的梯度值 , (7)求第epoch次學習各層W,b的梯度值 , 1)求各層誤差反向傳播值δ;2)求第p次各層W,b的梯度值 , ;3)求p=1,2,…,P次模式產生的W,b的梯度值 , 的累加。

(8)如果epoch=1,則將第epoch-1次學習的各層W,b的梯度值 , 設為第epoch次學習產生的各層W,b的梯度值 , 。

(9)求各層W,b的更新1)求權更新值Δij更新;2)求W,b的權更新值 , ;3)求第epoch次學習修正后的各層W,b。

(10)用修正后各層W、b,由X求第epoch次學習各層輸出y0,y1,y2及第epoch次學習誤差MSE(11)epoch=epoch+1,如果epoch≤MAX_EPOCH,轉到(5);否則,轉到(12)。

(12)輸出處理1)如果MSE<ε,則學習達到目標誤差要求,輸出W1,b1,W2,b2。2)如果MSE≥ε,則學習沒有達到目標誤差要求,再次學習。

(13)結束3.三層BP網絡(含輸入層,隱含層,輸出層)預測總體算法首先應用Train3lBP_RPROP( )學習三層BP網絡(含輸入層,隱含層,輸出層)權值W、偏差b,然后應用三層BP網絡(含輸入層,隱含層,輸出層)預測。

函數:Simu3lBP( )。1)輸入參數:P個需預測的輸入數據向量xp,p=1,2,…,P;三層BP網絡結構;學習得到的各層權值W、偏差b。

2)計算P個需預測的輸入數據向量xp(p=1,2,…,P)的網絡輸出 y2[S2][P],輸出預測結果y2[S2][P]。四、總體算法流程圖BP網絡總體算法流程圖見附圖2。

五、數據流圖BP網數據流圖見附圖1。

六、實例實例一 全國銅礦化探異常數據BP 模型分類1.全國銅礦化探異常數據準備在全國銅礦化探數據上用穩健統計學方法選取銅異常下限值33.1,生成全國銅礦化探異常數據。

2.模型數據準備根據全國銅礦化探異常數據,選取7類33個礦點的化探數據作為模型數據。

這7類分別是巖漿巖型銅礦、斑巖型銅礦、矽卡巖型、海相火山型銅礦、陸相火山型銅礦、受變質型銅礦、海相沉積型銅礦,另添加了一類沒有銅異常的模型(表8-1)。3.測試數據準備全國化探數據作為測試數據集。

4.BP網絡結構隱層數2,輸入層到輸出層向量維數分別為14,9、5、1。學習率設置為0.9,系統誤差1e-5。沒有動量項。表8-1 模型數據表續表5.計算結果圖如圖8-2、圖8-3。

圖8-2圖8-3 全國銅礦礦床類型BP模型分類示意圖實例二 全國金礦礦石量品位數據BP 模型分類1.模型數據準備根據全國金礦儲量品位數據,選取4類34個礦床數據作為模型數據,這4類分別是綠巖型金礦、與中酸性浸入巖有關的熱液型金礦、微細浸染型型金礦、火山熱液型金礦(表8-2)。

2.測試數據準備模型樣本點和部分金礦點金屬量、礦石量、品位數據作為測試數據集。3.BP網絡結構輸入層為三維,隱層1層,隱層為三維,輸出層為四維,學習率設置為0.8,系統誤差1e-4,迭代次數5000。

表8-2 模型數據4.計算結果結果見表8-3、8-4。表8-3 訓練學習結果表8-4 預測結果(部分)續表。

?

總結

以上是生活随笔為你收集整理的三层神经网络的训练模型,神经网络训练模型描述的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。