簡(jiǎn)介:1,網(wǎng)絡(luò)編程語(yǔ)言,2,應(yīng)用程序程序編程接口(套接字),實(shí)現(xiàn)網(wǎng)絡(luò)應(yīng)用時(shí),要從由網(wǎng)絡(luò)輸出的接口開(kāi)始。既然大多數(shù)網(wǎng)絡(luò)協(xié)議都是由軟件實(shí)現(xiàn)的(特別是協(xié)議棧中的高層協(xié)議),而且?guī)缀跛械挠?jì)算機(jī)系統(tǒng)都將網(wǎng)絡(luò)協(xié)議的實(shí)現(xiàn)作為操作系統(tǒng)的一部分,因而我們說(shuō)“由網(wǎng)絡(luò)輸出的”接口時(shí),通常指的是操作系統(tǒng)為它的網(wǎng)絡(luò)子系統(tǒng)提供的接口。這個(gè)接口叫做網(wǎng)絡(luò)的應(yīng)用程序編程接口(API)。雖然每個(gè)操作系統(tǒng)都可以自由地定義自己的API,但隨著時(shí)間的推移,有些API已獲得了廣泛的支持;也就是說(shuō),除了它們?cè)嫉南到y(tǒng)外,它們還被移植到操作系統(tǒng)中。,3,應(yīng)用程序程序編程接口(套接字),套接字接(SOCKETINTERFACE)口它最初是由加州大學(xué)伯克利分校的UNIX小組開(kāi)發(fā),而現(xiàn)在幾乎所有流行的操作系統(tǒng)都支持它。業(yè)界支持單一API的優(yōu)點(diǎn)是使得應(yīng)用程序可以很簡(jiǎn)單地從一個(gè)操作系統(tǒng)移植到另一個(gè)操作系統(tǒng)。但是我們得記住一點(diǎn),通常應(yīng)用程序與操作系統(tǒng)許多部分相互作用,而不僅僅與網(wǎng)絡(luò)相互作用。例如,讀寫(xiě)文件,產(chǎn)生并行進(jìn)程和輸出圖形顯示。每個(gè)協(xié)議提供了一系列服務(wù)(SERVICE),API則提供了特定操作系統(tǒng)中調(diào)用這些服務(wù)所用的語(yǔ)法(SYNTAX)。然后,實(shí)現(xiàn)的作用是把API定義的具體操作和對(duì)象映射到協(xié)議定義的抽象服務(wù)集上。,4,應(yīng)用程序程序編程接口(套接字),套接字接口的主要概念是套接字(SOCKET)。理解套接字的好方法是把它看作本地應(yīng)用進(jìn)程與網(wǎng)絡(luò)的接入點(diǎn)。接口定義了各種操作,包括創(chuàng)建套接字、將套接字連到網(wǎng)上、通過(guò)套接字發(fā)送/接收消息,關(guān)閉套接字。為了簡(jiǎn)化討論,我們?cè)诖酥挥懻揟CP中如何使用套接字。第一步是創(chuàng)建套接字,用如下操作實(shí)現(xiàn)該操作有三個(gè)參數(shù)是因?yàn)樘捉幼纸涌诒辉O(shè)計(jì)成通用的,定義支持任意的底層協(xié)議集。,,5,應(yīng)用程序程序編程接口(套接字),,2TYPE參數(shù)表明通信的語(yǔ)義。SOCK_STREAM說(shuō)明是字節(jié)流。SOCK_DGRAM則表明是面向消息的服務(wù),像UDP提供的一樣。,,3PROTOCOL參數(shù)則指明將要用到的特定協(xié)議。,,SOCKET返回值是新創(chuàng)建套接字的句柄(HANDLE),即以后引用該套接字時(shí)使用的標(biāo)識(shí)符。在套接字的其他操作中,它也將作為一個(gè)參數(shù)。,,1DOMAIN參數(shù)描述將使用的協(xié)議族。AF_INET用于表示因特網(wǎng)協(xié)議族。AF_UNIX用于表示UNIX管道功能,6,客戶/服務(wù)器模式,在TCP/IP網(wǎng)絡(luò)應(yīng)用中,通信的兩個(gè)進(jìn)程間相互作用的主要模式是客戶/服務(wù)器模式(CLIENT/SERVERMODEL),即客戶向服務(wù)器發(fā)出服務(wù)請(qǐng)求,服務(wù)器接收到請(qǐng)求后,提供相應(yīng)的服務(wù)??蛻?服務(wù)器模式的建立基于以下兩點(diǎn)首先,建立網(wǎng)絡(luò)的起因是網(wǎng)絡(luò)中軟硬件資源、運(yùn)算能力和信息不均等,需要共享,從而造就擁有眾多資源的主機(jī)提供服務(wù),資源較少的客戶請(qǐng)求服務(wù)這一非對(duì)等作用。其次,網(wǎng)間進(jìn)程通信完全是異步的,相互通信的進(jìn)程間既不存在父子關(guān)系,又不共享內(nèi)存緩沖區(qū),因此需要一種機(jī)制為希望通信的進(jìn)程間建立聯(lián)系,為二者的數(shù)據(jù)交換提供同步,這就是基于客戶/服務(wù)器模式的TCP/IP。,,7,客戶/服務(wù)器模式,客戶/服務(wù)器模式在操作過(guò)程中采取的是主動(dòng)請(qǐng)求方式首先服務(wù)器方要先啟動(dòng),并根據(jù)請(qǐng)求提供相應(yīng)服務(wù)1打開(kāi)一通信通道并告知本地主機(jī),它愿意在某一公認(rèn)地址上(周知口,如FTP為21)接收客戶請(qǐng)求;2等待客戶請(qǐng)求到達(dá)該端口;3接收到重復(fù)服務(wù)請(qǐng)求,處理該請(qǐng)求并發(fā)送應(yīng)答信號(hào)。接收到并發(fā)服務(wù)請(qǐng)求,要激活一新進(jìn)程來(lái)處理這個(gè)客戶請(qǐng)求(如UNIX系統(tǒng)中用FORK、EXEC)。新進(jìn)程處理此客戶請(qǐng)求,并不需要對(duì)其它請(qǐng)求作出應(yīng)答。服務(wù)完成后,關(guān)閉此新進(jìn)程與客戶的通信鏈路,并終止。4返回第二步,等待另一客戶請(qǐng)求。5關(guān)閉服務(wù)器,8,客戶/服務(wù)器模式,客戶方1打開(kāi)一通信通道,并連接到服務(wù)器所在主機(jī)的特定端口;2向服務(wù)器發(fā)服務(wù)請(qǐng)求報(bào)文,等待并接收應(yīng)答;繼續(xù)提出請(qǐng)求3請(qǐng)求結(jié)束后關(guān)閉通信通道并終止。從上面所描述過(guò)程可知1客戶與服務(wù)器進(jìn)程的作用是非對(duì)稱的,因此編碼不同。2服務(wù)進(jìn)程一般是先于客戶請(qǐng)求而啟動(dòng)的。只要系統(tǒng)運(yùn)行,該服務(wù)進(jìn)程一直存在,直到正?;驈?qiáng)迫終止。,9,應(yīng)用程序程序編程接口(套接字),下一步看你是客戶還是服務(wù)器。如果是服務(wù)器在服務(wù)器主機(jī)上,應(yīng)用進(jìn)程執(zhí)行一個(gè)被動(dòng)的打開(kāi),即服務(wù)器表明它已準(zhǔn)備好接受連接,但并沒(méi)有真正建立連接。服務(wù)器通過(guò)調(diào)用以下三個(gè)操作來(lái)完成打開(kāi),10,套接字類型,TCP/IP的SOCKET提供下列三種類型套接字。(1)流式套接字(SOCK_STREAM)提供了一個(gè)面向連接、可靠的數(shù)據(jù)傳輸服務(wù),數(shù)據(jù)無(wú)差錯(cuò)、無(wú)重復(fù)地發(fā)送,且按發(fā)送順序接收。內(nèi)設(shè)流量控制,避免數(shù)據(jù)流超限;數(shù)據(jù)被看作是字節(jié)流,無(wú)長(zhǎng)度限制。文件傳送協(xié)議(FTP)即使用流式套接字。(2)數(shù)據(jù)報(bào)式套接字(SOCK_DGRAM)提供了一個(gè)無(wú)連接服務(wù)。數(shù)據(jù)包以獨(dú)立包形式被發(fā)送,不提供無(wú)錯(cuò)保證,數(shù)據(jù)可能丟失或重復(fù),并且接收順序混亂。網(wǎng)絡(luò)文件系統(tǒng)(NFS)使用數(shù)據(jù)報(bào)式套接字。(3)原始式套接字(SOCK_RAW)該接口允許對(duì)較低層協(xié)議,如IP、ICMP直接訪問(wèn)。常用于檢驗(yàn)新的協(xié)議實(shí)現(xiàn)或訪問(wèn)現(xiàn)有服務(wù)中配置的新設(shè)備。,11,典型套接字調(diào)用過(guò)程舉例,如前所述,TCP/IP協(xié)議的應(yīng)用一般采用客戶/服務(wù)器模式,因此在實(shí)際應(yīng)用中,必須有客戶和服務(wù)器兩個(gè)進(jìn)程,并且首先啟動(dòng)服務(wù)器,其系統(tǒng)調(diào)用時(shí)序圖如下。面向連接的協(xié)議(如TCP)的套接字系統(tǒng)調(diào)用如下圖所示服務(wù)器必須首先啟動(dòng),直到它執(zhí)行完ACCEPT調(diào)用,進(jìn)入等待狀態(tài)后,方能接收客戶請(qǐng)求。假如客戶在此前啟動(dòng),則CONNECT將返回出錯(cuò)代碼,連接不成功。,見(jiàn)下圖,12,服務(wù)器方客戶方,13,STATUSOFPARENTANDCHILDPROCESSESWITHRESPECTTOTHESOCKET,,,,,,,,14,典型套接字調(diào)用過(guò)程舉例,無(wú)連接協(xié)議的套接字調(diào)用如下圖所示無(wú)連接服務(wù)器也必須先啟動(dòng),否則客戶請(qǐng)求傳不到服務(wù)進(jìn)程。無(wú)連接客戶不調(diào)用CONNECT。因此在數(shù)據(jù)發(fā)送之前,客戶與服務(wù)器之間尚未建立完全相關(guān),但各自通過(guò)SOCKET和BIND建立了半相關(guān)。發(fā)送數(shù)據(jù)時(shí),發(fā)送方除指定本地套接字號(hào)外,還需指定接收方套接字號(hào),從而在數(shù)據(jù)收發(fā)過(guò)程中動(dòng)態(tài)地建立了全相關(guān)。,見(jiàn)下圖,15,,16,應(yīng)用程序程序編程接口(套接字),1BIND操作如其名字一樣,是將新創(chuàng)建的SOCKET與ADDRESS綁定。這是本地參與者(即服務(wù)器)的網(wǎng)絡(luò)地址。注意,ADDRESS在因特網(wǎng)協(xié)議中使用時(shí)是表示一個(gè)數(shù)據(jù)結(jié)構(gòu),其中包括服務(wù)器的IP地址和TCP端口號(hào)。端口號(hào)通常是一些眾所周知的、專門(mén)提供給服務(wù)的號(hào)嗎;例如,WEB服務(wù)器通常在端口80上接受連接。,2LISTEN操作定義在指定的SOCKET上可以有多少個(gè)待處理的連接。,3ACCEPT操作完成被動(dòng)打開(kāi)。它是一個(gè)阻塞的操作,在遠(yuǎn)程參與者沒(méi)有建立起連接前,它不會(huì)返回任何參數(shù),一旦連接成功,它將返回一個(gè)表示這個(gè)新建連接的新的套接字,并且ADDRESS參數(shù)還包括了遠(yuǎn)程參與者的地址。,注意,當(dāng)ACCEPT返回時(shí),以前作為參數(shù)給定的原始套接字依然存在并依然對(duì)應(yīng)于被動(dòng)打開(kāi);在以后調(diào)用ACCEPT時(shí)它仍作為參數(shù)。,17,應(yīng)用程序程序編程接口(套接字),在客戶機(jī)上,應(yīng)用程序執(zhí)行主動(dòng)打開(kāi);也就是,它通過(guò)調(diào)用如下的一個(gè)操作來(lái)表明它希望與誰(shuí)通信,該操作直至TCP成功建立連接后才返回,此時(shí)應(yīng)用程序就可以開(kāi)始發(fā)送數(shù)據(jù)。ADDRESS中包括了遠(yuǎn)程參與者的地址。實(shí)際上,客戶機(jī)通常只描述遠(yuǎn)程參與者的地址,讓系統(tǒng)自動(dòng)填寫(xiě)本地信息。鑒于服務(wù)器通常在共知的端口監(jiān)聽(tīng)消息,一般地,客戶機(jī)并不關(guān)心它自己用哪個(gè)端口;操作系統(tǒng)簡(jiǎn)單地選一個(gè)未用端口即可。,18,應(yīng)用程序程序編程接口(套接字),一旦連接建立,應(yīng)用進(jìn)程將調(diào)用以下兩個(gè)操作來(lái)發(fā)送和接收數(shù)據(jù),這個(gè)操作在指定的SOCKET上發(fā)送MESSAGE,這個(gè)操作則是將從指定的SOCKET上收到的消息放入指定的BUFFER。它們都使用一系列FLAGS來(lái)控制操作的特定細(xì)節(jié)。,19,應(yīng)用實(shí)例,現(xiàn)在,我們來(lái)看一個(gè)簡(jiǎn)單的客戶機(jī)/服務(wù)器程序的實(shí)現(xiàn),它用套接字接口在一個(gè)TCP連接上發(fā)送消息。這個(gè)程序還用到了其他的UNIX網(wǎng)絡(luò)功能,我們將逐個(gè)介紹。我們的應(yīng)用允許用戶在一端的機(jī)器上輸入并把文本發(fā)送給另一端機(jī)器的用戶。它是UNIX中TALK程序的一個(gè)簡(jiǎn)化版本,類似于WEB聊天室的核心程序。,20,應(yīng)用實(shí)例,1客戶端我們先從客戶端開(kāi)始,它用遠(yuǎn)端的機(jī)器名作為參數(shù)。它調(diào)用UNIX程序GETHOSTBYNAME把該名字翻譯為遠(yuǎn)端主機(jī)的IP地址。下一步是構(gòu)造套接字接口所需的地址數(shù)據(jù)結(jié)構(gòu)(SIN)。注意這個(gè)數(shù)據(jù)結(jié)構(gòu)表明我們將一直用套接字與因特網(wǎng)連接(AF_INET)。在以下例子中,我們用TCP端口號(hào)5432作為共知的服務(wù)器端口號(hào);它恰好不是分配給其他因特網(wǎng)服務(wù)的端口號(hào)。建立連接的最后一步是調(diào)用SOCKET和CONNECT。一旦CONNECT操作返回,建立起連接,客戶機(jī)程序?qū)⑦M(jìn)入主循環(huán),不斷從標(biāo)準(zhǔn)輸入讀取文本并通過(guò)套接字發(fā)送。,21,客戶端程序,22,應(yīng)用實(shí)例,2服務(wù)器服務(wù)器的實(shí)現(xiàn)也很簡(jiǎn)單。首先,它填入自己的端口號(hào)(SERVER_PORT)構(gòu)造地址數(shù)據(jù)結(jié)構(gòu)。其次,它并不指明IP地址,從而使應(yīng)用程序可以接受來(lái)自本地任一IP地址的連接。然后,服務(wù)器執(zhí)行與被動(dòng)打開(kāi)有關(guān)的初始步驟創(chuàng)建一個(gè)套接字,將它綁定到本地地址。然后設(shè)置允許同時(shí)連接的最大數(shù)。最后,主循環(huán)等待遠(yuǎn)端主機(jī)與它連接,當(dāng)遠(yuǎn)端有一臺(tái)主機(jī)試圖與它連接時(shí),它就接收并輸出連接上送來(lái)的字符。,23,服務(wù)器程序,24,協(xié)議實(shí)現(xiàn)的問(wèn)題,應(yīng)用程序與底層網(wǎng)絡(luò)交互的方式類似于高層協(xié)議與低層協(xié)議交互的方式。例如,TCP需要一個(gè)接口向IP發(fā)送消息,同時(shí)也需要IP能向TCP傳送消息。這就是服務(wù)接口。既然我們已經(jīng)有了網(wǎng)絡(luò)的API(如套接字),或許我們可以在協(xié)議棧的每一對(duì)協(xié)議間使用同樣的接口。盡管這只是一種選擇,但在實(shí)際中我們并不這樣使用套接字接口。原因在于套接字接口在協(xié)議實(shí)現(xiàn)方面的低效是協(xié)議實(shí)現(xiàn)者所不能忍受的。應(yīng)用編程人員之所以能忍受是因?yàn)樗?jiǎn)化了編程工作,而且畢竟他對(duì)低效只需忍受一次就夠了,而協(xié)議實(shí)現(xiàn)者卻要常常被它們的性能所困擾,總擔(dān)心穿過(guò)幾層協(xié)議是否能得到一條消息。本節(jié)的其余部分將討論網(wǎng)絡(luò)API和位于協(xié)議圖下方的協(xié)議到協(xié)議接口的兩點(diǎn)主要不同。同時(shí)介紹協(xié)議實(shí)現(xiàn)常用到的庫(kù)例程。,25,協(xié)議實(shí)現(xiàn)的問(wèn)題,1進(jìn)程模型大多數(shù)操作系統(tǒng)都提供一種抽象概念叫進(jìn)程(PROCESS),或叫線程(THREAD)。每個(gè)進(jìn)程的運(yùn)行很大程度上獨(dú)立于其他進(jìn)程,操作系統(tǒng)負(fù)責(zé)確保給所有當(dāng)前的進(jìn)程分配如地址空間和CPU周期這樣的資源。進(jìn)程這一抽象概念使得在一臺(tái)機(jī)器上并發(fā)運(yùn)行多個(gè)事件變得相當(dāng)簡(jiǎn)單;例如,每個(gè)用戶的應(yīng)用程序可以在自己的進(jìn)程中執(zhí)行,操作系統(tǒng)中的各種事件可以作為其他進(jìn)程執(zhí)行。操作系統(tǒng)將正在CPU上運(yùn)行的進(jìn)程停止并啟動(dòng)另一進(jìn)程時(shí),我們稱這一轉(zhuǎn)換為上下文切換(CONTEXTSWITCH)。,26,協(xié)議實(shí)現(xiàn)的問(wèn)題,在設(shè)計(jì)一個(gè)網(wǎng)絡(luò)子系統(tǒng)時(shí),首先要回答的問(wèn)題之一是,“進(jìn)程在哪兒”基本上有兩種選擇,如圖所示。第一種選擇,我們稱為進(jìn)程/協(xié)議(PROCESSPERPROTOCOL)模型,每個(gè)協(xié)議由一個(gè)獨(dú)立的進(jìn)程實(shí)現(xiàn)。這就意味著當(dāng)一條消息向協(xié)議棧的上方或下方移動(dòng)時(shí),它被從一個(gè)進(jìn)程/協(xié)議傳送到另一個(gè)進(jìn)程/協(xié)議,即實(shí)現(xiàn)協(xié)議I的進(jìn)程處理這個(gè)消息,然后把它傳給協(xié)議I1,以此類推。一個(gè)進(jìn)程/協(xié)議如何向下一個(gè)進(jìn)程/協(xié)議傳遞消息依賴于主機(jī)操作系統(tǒng)提供的進(jìn)程間通信的支持。通常有一個(gè)簡(jiǎn)單的機(jī)制把消息與進(jìn)程排隊(duì)。然而,重要的一點(diǎn)是,協(xié)議圖的每一層都要求上下文切換,這是一個(gè)典型的耗時(shí)操作。,27,協(xié)議實(shí)現(xiàn)的問(wèn)題,我們把另一種稱為進(jìn)程/消息(PROCESSPERMESSAGE)模型,它把每個(gè)協(xié)議當(dāng)做一段靜態(tài)編碼并把進(jìn)程同消息聯(lián)系起來(lái)。也就是說(shuō),當(dāng)網(wǎng)絡(luò)送來(lái)一條消息時(shí),操作系統(tǒng)調(diào)度一個(gè)進(jìn)程,使之負(fù)責(zé)消息在協(xié)議圖中向上移動(dòng)。在每一層,調(diào)用實(shí)現(xiàn)該協(xié)議的過(guò)程,然后調(diào)用實(shí)現(xiàn)下一個(gè)協(xié)議的過(guò)程,以此類推。對(duì)于輸出的消息,應(yīng)用程序調(diào)用必要的過(guò)程,直到消息被送入網(wǎng)絡(luò)。在兩個(gè)方向中,協(xié)議圖都被一系列過(guò)程調(diào)用一遍。,28,協(xié)議實(shí)現(xiàn)的問(wèn)題,結(jié)論雖然有時(shí)感覺(jué)進(jìn)程/協(xié)議模型比較容易,即我在我的進(jìn)程中實(shí)現(xiàn)我的協(xié)議,而你在你的進(jìn)程中實(shí)現(xiàn)你的協(xié)議。但由于一個(gè)簡(jiǎn)單的原因,進(jìn)程/消息模型通常更有效即在大多數(shù)計(jì)算機(jī)上,過(guò)程調(diào)用的效率比上下文切換高一個(gè)數(shù)量級(jí)。第一種模型要求每一層有一個(gè)上下文切換,而第二種模型只要求每一層有一個(gè)進(jìn)程調(diào)用。,29,協(xié)議實(shí)現(xiàn)的問(wèn)題,大多數(shù)協(xié)議實(shí)現(xiàn)用DELIVER操作代替RECEIVE操作。也就是低層協(xié)議做向上調(diào)用(UPCALL),它是一個(gè)向上調(diào)用協(xié)議棧的過(guò)程,將消息傳送到高層協(xié)議。圖顯示了兩個(gè)相鄰協(xié)議(本例中為T(mén)CP和IP)的接口。一般情況下,消息向協(xié)議棧的下方移動(dòng)調(diào)用一系列SEND操作,向協(xié)議圖上方移動(dòng)則調(diào)用一系列DELIVER操作。,代碼段用下列操作,其中LLP表示低層協(xié)議,其上的正在調(diào)用它的協(xié)議已被配置;HLP表示正在調(diào)用協(xié)議之上配置的高層協(xié)議。注意,我們用PROTOCOL這一變量類型和變量LLP和HLP簡(jiǎn)化了使用,它們隱藏了協(xié)議圖中如何配置協(xié)議、高層協(xié)議如何在低層協(xié)議上打開(kāi)一個(gè)連接的細(xì)節(jié)。,30,協(xié)議實(shí)現(xiàn)的問(wèn)題,2消息緩沖區(qū)套接字接口的第二個(gè)低效之處在于當(dāng)調(diào)用SEND時(shí)應(yīng)用進(jìn)程提供緩沖區(qū),保存向外發(fā)送的消息,類似于當(dāng)調(diào)用RECEIVE時(shí)將進(jìn)來(lái)的消息復(fù)制到緩沖區(qū)中。它強(qiáng)制最高層的協(xié)議把消息從應(yīng)用程序緩沖區(qū)復(fù)制到網(wǎng)絡(luò)緩沖區(qū)中,或反之,如圖所示。將數(shù)據(jù)從一個(gè)緩沖區(qū)復(fù)制到另一個(gè)緩沖區(qū)是協(xié)議實(shí)現(xiàn)中代價(jià)最高的工作之一。因?yàn)樘幚砥鞯乃俣纫跃薮蟮牟椒ゼ涌?,而?nèi)存的發(fā)展并不如處理器那么快。,
下載積分: 6 賞幣
上傳時(shí)間:2024-01-05
頁(yè)數(shù): 30
大?。?0.69(MB)
子文件數(shù):
簡(jiǎn)介:統(tǒng)計(jì)自然語(yǔ)言處理基本概念,模型,,,,,真實(shí)世界中的系統(tǒng),模型1,INPUT,,,OUTPUT,,模型2,,OUTPUT1,OUTPUT2,如果OUTPUT1總是和OUPUT接近,OUTPUT2總是和OUTPUT偏離,我們就認(rèn)為模型1比模型2好,,,,,,,真實(shí)系統(tǒng),,,,模型1,,模型2,INPUT,OUTPUT,,模型由體系結(jié)構(gòu)和參數(shù)兩部分構(gòu)成舉例住宅樓多層板樓高層板樓高層塔樓參數(shù)層數(shù)戶型三室一廳,兩室一廳,舉架高度供熱方式地?zé)崤瘹馄?目錄,樣本空間SAMPLESPACE估計(jì)器ESTIMATOR和隨機(jī)過(guò)程STOCHASTICPROCESS信息論INFORMATIONTHEORY數(shù)據(jù)集分類DATASETCLASSIFICATION性能評(píng)價(jià)PERFORMANCEMEASURE,樣本空間SAMPLESPACE,,試驗(yàn)EXPERIMENT,試驗(yàn)一個(gè)可觀察結(jié)果的人工或自然的過(guò)程,其產(chǎn)生的結(jié)果可能不止一個(gè),且不能事先確定會(huì)產(chǎn)生什么結(jié)果例如連擲兩次硬幣樣本空間是一個(gè)試驗(yàn)的全部可能出現(xiàn)的結(jié)果的集合舉例連擲兩次硬幣?{HH,HT,TH,TT},H面朝上T面朝下,事件EVENT,事件一個(gè)試驗(yàn)的一些可能結(jié)果的集合,是樣本空間的一個(gè)子集舉例連擲兩次硬幣A至少一次面朝上B第二次面朝下A{HT,TH,HH},B{HT,TT},事件的概率,事件的概率重復(fù)M試驗(yàn),如果事件A出現(xiàn)的次數(shù)為N,則事件A的概率為PAN/M,這稱為概率的頻率解釋,或稱統(tǒng)計(jì)解釋頻率的穩(wěn)定性又稱為經(jīng)驗(yàn)大數(shù)定理舉例連擲兩次硬幣A至少一次面朝上B第二次面朝下PA3/4,PB1/2當(dāng)試驗(yàn)不能重復(fù)時(shí),概率失去其頻率解釋的含義,此時(shí)概率還有其他解釋貝葉斯學(xué)派和信念學(xué)派一個(gè)人出生時(shí)的體重,一個(gè)人只能出生一次,舉例,舉例連續(xù)三次擲硬幣樣本空間?{HHH,HHT,HTH,HTT,THH,THT,TTH,TTT}事件A恰好兩次面朝下A{HTT,THT,TTH}做1000次試驗(yàn),計(jì)數(shù)得386次為兩次面朝下估計(jì)PA386/10000386繼續(xù)做7組試驗(yàn),得373,399,382,355,372,406,359,共8組試驗(yàn)計(jì)算平均值PA03860373/80379,或累計(jì)PA386373/80003032/80000379統(tǒng)一的分布假設(shè)為3/80375,概率空間,概率空間的三個(gè)公理PA?0P?1PA?BPAPBIFA?B?這三條公理也是概率的原始定義推論P(yáng)?0A?B?PA0正相關(guān),?0X和Y關(guān)聯(lián)強(qiáng)度大IX,Y0X和Y無(wú)關(guān)IX,Y0X和Y具有互補(bǔ)的分布,熵ENTROPY,熵ENTROPYCHAOS(混沌),無(wú)序物理學(xué)除非施加能量,否則熵不會(huì)降低舉例把房間弄亂很容易,整理干凈不容易是不確定性UNCERTAINTY的衡量不確定性越高,熵越高,我們從一次實(shí)驗(yàn)中得到的信息量越大,熵的公式,熵HX?X??PXLOGXPX假設(shè)PXX是隨機(jī)變量X的分布基本輸出字母表是?單位BITS熵是X的平均信息量,是自信息量的期望EX?X??PXXIXLOGPX,取2為底,IXLOG2PXEIXELOG2PX?X??PXLOG2PXHXHXHPHPXHXPHPX,熵的例子,擲均勻硬幣,?{H,T}PH5,PT5HP05LOG20505LOG205132面的均勻骰子,擲骰子HP321/32LOG21/325事實(shí)上,212,2532PERPLEXITY擲不均勻硬幣PH02,PT08,HP0722PH001,PT099,HP0081,好書(shū)店,差書(shū)店,,什么時(shí)候HP0試驗(yàn)結(jié)果事先已經(jīng)知道即?X??,PX1?Y??,PY0IFY?X熵有沒(méi)有上限沒(méi)有一般的上限對(duì)于|?|N,HP?LOG2N均衡分布的熵是最大的,,等概率分布2個(gè)輸出的等概率分布,HP1BIT32個(gè)輸出的等概率分布,HP5BITS43億輸出的等概率分布,HP32BITS非等概率分布32個(gè)輸出,2個(gè)05,其余為0,HP1BIT怎樣比較具有不同數(shù)量輸出的“熵”,混亂度PERPLEXITY,混亂度GP2HP平均每次試驗(yàn)有多少種可能的結(jié)果在NLP中,如果詞表中的詞具有統(tǒng)一的分布概率,則最難預(yù)測(cè),熵最大,混亂度最高反之,分布越不均衡,熵越小,混亂度越小,聯(lián)合熵和條件熵,兩個(gè)隨機(jī)變量X空間是?,Y?聯(lián)合熵JOINTENTROPYX,Y被視為一個(gè)事件HX,Y?X???Y??PX,YLOG2PX,Y條件熵CONDITIONALENTROPYHY|X?X???Y??PX,YLOG2PY|XPX,Y是加權(quán),權(quán)值是沒(méi)有條件的,條件熵,HY|X?X??PXHY|XX?X??PX?Y??PY|XLOG2PY|X?X???Y??PY|XPXLOG2PY|X?X???Y??PX,YLOG2PY|X,熵的性質(zhì),熵的非負(fù)的HX?0CHAINRULEHX,YHY|XHXHX,YHX|YHYHX,Y?HXHY,X和Y獨(dú)立時(shí)相等HY|X?HY,條件熵比熵小,熵的編碼意義,如果一個(gè)符號(hào)序列是滿足概率分布P的隨機(jī)過(guò)程產(chǎn)生的,那么對(duì)這個(gè)序列進(jìn)行編碼至少需要的BIT數(shù)是HP壓縮問(wèn)題如果數(shù)據(jù)中有很多重復(fù)的模式,則易于壓縮,因?yàn)殪匦》駝t,熵大,不容易壓縮,編碼實(shí)例,怎樣給ISOLATIN1編碼通常用8位經(jīng)驗(yàn)表明有的字符經(jīng)常出現(xiàn),有的字符很少出現(xiàn)我們可以給經(jīng)常出現(xiàn)的字用較少的BIT來(lái)表示,給很少出現(xiàn)的字符用較多的BIT來(lái)表示假設(shè)P‘A’03,P‘B’03,P‘C’03,其余PX00004編碼A00,B01,C10,其余11B1B2B8對(duì)于符號(hào)串ACBBéCBAAC,編碼為ACBBéCBAAC0010010111000011111001000010如果每個(gè)符號(hào)用8位編碼,需要80位,現(xiàn)在需要28位,語(yǔ)言的熵,PCN1|C1CNCI是語(yǔ)言中的一個(gè)字符C1CN是歷史H舉例漢語(yǔ),N3P趙|圍魏救高P去|我曾經(jīng)低計(jì)算語(yǔ)言的條件熵?H?H?C??PC,HLOG2PC|H,各種語(yǔ)言的熵,按字母計(jì)算的零階熵法文398BITS意大利文400BITS西班牙文401BITS英文403BITS德文410BITS俄問(wèn)435BITS中文(按漢字計(jì)算)965BITS中文(按筆畫(huà)計(jì)算)343BITS按詞匯計(jì)算的零階熵英語(yǔ)100BITS漢語(yǔ)1146BITS說(shuō)明漢語(yǔ)的詞匯豐富語(yǔ)言的冗余度英語(yǔ)73;俄語(yǔ)70;漢語(yǔ)63;古文更低,KULLBACKLEIBLER距離,假設(shè)通過(guò)一組試驗(yàn)估計(jì)得到的概率分布為P,樣本空間?,隨機(jī)變量X真實(shí)的分布為Q,相同的?和X現(xiàn)在的問(wèn)題是P和Q相比,誤差多大KULLBACKLEIBLER距離給出的答案是DQ||P?X??QXLOG2QX/PXEPLOGQX/PX,KL距離(相對(duì)熵),習(xí)慣上0LOG00PLOGP/0?DISTANCEORDIVERGENCE(分歧)不對(duì)稱DQ||P?DP||Q也不滿足三角不等式事實(shí)上,DQ||P不是距離,而是分歧HQDQ||P根據(jù)Q分布,對(duì)P進(jìn)行編碼需要的BIT數(shù)(交叉熵),平均互信息,隨機(jī)變量XYPX?YX,YPXXPYY兩個(gè)離散集之間的平均互信息IX,YDPX,Y||PXPY?X???Y??PX,YLOG2PX,Y/PXPY這里說(shuō)的是兩個(gè)離散集的平均互信息互信息衡量已知Y的分布時(shí),對(duì)X的預(yù)測(cè)有多大的幫助,或者說(shuō)Y的知識(shí)降低了HX或者說(shuō)PX,Y和PXPY之間的距離,,互信息的性質(zhì),IX,YHXHX|YHYHY|XIX,YHXHYHX,Y因?yàn)镠X,YHX|YHYIX,XHX因?yàn)镠X,X0IX,YIY,XIX,Y?0,交叉熵CROSSENTROPY,典型情況我們得到一個(gè)觀察序列T{T1,T2,TN},TI??估計(jì)?Y??PYCY/|T|,定義CY|{T?T,TY}|但是,真實(shí)的Q不知道,再大的數(shù)據(jù)也不夠問(wèn)題用P對(duì)Q進(jìn)行估計(jì)是否準(zhǔn)確方法用一個(gè)不同的觀察序列T’估計(jì)實(shí)際的Q,交叉熵,HP’PHP’DP’||PHP’P?X??P’XLOG2PXP’當(dāng)然也不是真實(shí)的分布,但是我們視為真實(shí)世界的分布,以便測(cè)試P交叉混亂度GP’P2HP’P,條件交叉熵,實(shí)踐中計(jì)算的往往是條件交叉熵兩個(gè)樣本空間樣本空間?,隨機(jī)變量Y,Y?Y上下文樣本空間?,隨機(jī)變量X,X?X實(shí)驗(yàn)得到的分布PY|X,“真實(shí)”分布P’Y|XHP’P?Y??,X??P’Y,XLOG2PY|X條件交叉熵中的權(quán)值是P’Y,X,不是P’Y|X,,在實(shí)際應(yīng)用中,在全部?jī)蓚€(gè)樣本空間上做累加通常不是很方便,因此常常簡(jiǎn)化使用如下公式HP’P?Y??,X??P’Y,XLOG2PY|X1/|T’|?I1|T’|LOG2PYI|XI事實(shí)上,就是在T’上進(jìn)行累加,然后歸一化1/|T’|LOG2?I1|T’|PYI|XI,舉例,?{A,B,,Z},概率分布(估計(jì)值)PA025,PB05,P?1/64,??{C,,R},P?0,??{S,,Z}測(cè)試數(shù)據(jù)為BARB,P’AP’R025,P’B05在?上做累加?ABCDQRSZP’?LOG2P?0505000150025也可以在測(cè)試數(shù)據(jù)上進(jìn)行累加,然后歸一化SIBARBLOG2PSI1261101/4?1025,,HP和HP’P之間可能有各種關(guān)系包括‘?’,‘?’,‘?’舉例(參照上例)HP25測(cè)試數(shù)據(jù)BARBHP’P1/4126125測(cè)試數(shù)據(jù)PROBABLEHP’P1/866612166425測(cè)試數(shù)據(jù)ABBAHP’P1/4211215,交叉熵的使用,不是比較數(shù)據(jù),而是比較分布如果我們有兩個(gè)分布P和Q,哪一個(gè)更好呢面對(duì)“真實(shí)數(shù)據(jù)”S,P和Q誰(shuí)的交叉熵低,誰(shuí)就更好HTP1/|S|LOG2?I1|S’|PYI|XIHTQ1/|S|LOG2?I1|S’|QYI|XI,,數(shù)據(jù)集分類,,,訓(xùn)練集TRAININGSET用來(lái)獲得模型參數(shù)測(cè)試集TESTINGSET從訓(xùn)練集以外獨(dú)立采樣反映系統(tǒng)面對(duì)真實(shí)世界的處理能力測(cè)試集經(jīng)常被無(wú)意識(shí)地“做了手腳”交叉確認(rèn)集CROSSVALIDATIONSET從訓(xùn)練集和測(cè)試集以外獨(dú)立采樣主要用來(lái)幫助做設(shè)計(jì)決策,測(cè)試集,測(cè)試集從訓(xùn)練集去評(píng)價(jià)系統(tǒng)的性能,結(jié)果往往過(guò)于樂(lè)觀如果模型的參數(shù)比需要的多很多時(shí),獲得100的準(zhǔn)確率也是可能的過(guò)擬和OVERFITTING常常出現(xiàn)在訓(xùn)練數(shù)據(jù)的數(shù)量不足以支持模型的復(fù)雜程度之時(shí)為此,我們需要另一個(gè)數(shù)據(jù)集來(lái)模擬用戶的真實(shí)需要,,在設(shè)計(jì)階段,不允許偷看測(cè)試數(shù)據(jù)的細(xì)節(jié),以保證測(cè)試數(shù)據(jù)不被污染你不能參照測(cè)試數(shù)據(jù)來(lái)決定模型的復(fù)雜度,特征空間的維數(shù),以及什么時(shí)候決定停止訓(xùn)練過(guò)程等設(shè)計(jì)決策可以參照交叉確認(rèn)數(shù)據(jù)進(jìn)行每一個(gè)階段采用一個(gè)不同測(cè)試集當(dāng)你試圖選擇一個(gè)最好的方法使測(cè)試效果達(dá)到最佳時(shí),實(shí)際上已經(jīng)在無(wú)意識(shí)地使你的系統(tǒng)偏向測(cè)試集問(wèn)題的關(guān)鍵在于測(cè)試集并不是真實(shí)數(shù)據(jù)本身,如果面向測(cè)試集調(diào)整參數(shù),可能造成系統(tǒng)對(duì)于從未見(jiàn)過(guò)的真實(shí)數(shù)據(jù)效果下降,,交叉確認(rèn)集如果在訓(xùn)練集合上獲得了比較差的結(jié)果,我們必須重新設(shè)計(jì)如果在訓(xùn)練集合上獲得了比較好的結(jié)果,那可能是因?yàn)槟P痛_實(shí)好(在測(cè)試數(shù)據(jù)上性能一樣會(huì)好)模型過(guò)擬和(在測(cè)試數(shù)據(jù)上性能會(huì)下降)由于不允許使用測(cè)試集來(lái)改進(jìn)系統(tǒng)設(shè)計(jì),因此需要另一個(gè)數(shù)據(jù)集,性能評(píng)價(jià),,,使用有限的樣本進(jìn)行性能測(cè)試有估計(jì)誤差性能評(píng)價(jià)的結(jié)果和測(cè)試數(shù)據(jù)的大小有關(guān)不同數(shù)據(jù)集的測(cè)試結(jié)果往往不同性能上限PERFORMANCEUPPERBOUND人與人取得一致的指標(biāo)就是系統(tǒng)性能的上限,,聯(lián)立表CONTINGENCYTABLE,,準(zhǔn)確率PPRECISIONN11/N11N21召回率RRECALLN11/N11N12錯(cuò)誤率EERRORRATEN12N21/N11N12N21N22FMEASURE2PR/PR,謝謝,,
下載積分: 6 賞幣
上傳時(shí)間:2024-01-05
頁(yè)數(shù): 72
大?。?0.47(MB)
子文件數(shù):
簡(jiǎn)介:經(jīng)管學(xué)院2014年語(yǔ)言文字工作總結(jié),總結(jié),2014年,我院結(jié)合本院實(shí)際情況,努力提高師生語(yǔ)言文字意識(shí),提升學(xué)院文化品位,增強(qiáng)學(xué)院凝聚力、向心力。學(xué)院領(lǐng)導(dǎo)十分重視語(yǔ)言文字工作,帶頭參加各項(xiàng)語(yǔ)言文字規(guī)范化活動(dòng),并派專人成立語(yǔ)言文字工作小組,定期召開(kāi)語(yǔ)言文字工作會(huì),定期檢查全院師生語(yǔ)言文字工作情況,及時(shí)轉(zhuǎn)達(dá)學(xué)校普通話測(cè)試工作及語(yǔ)言文字工作的相關(guān)安排,設(shè)立了相關(guān)獎(jiǎng)罰制度,實(shí)行年底考核評(píng)優(yōu)。學(xué)院多次開(kāi)展語(yǔ)言文字規(guī)范化活動(dòng),如學(xué)生讀書(shū)報(bào)告會(huì)、“打造絕佳策劃案”培訓(xùn)講座、“寄語(yǔ)春天”教職工詩(shī)歌朗誦會(huì)、“人際交往和溝通技巧”專題講座、年青年教師教學(xué)基本功比賽、我的中國(guó)夢(mèng)奮斗的青春最美麗主題辯論賽等一系列形式生動(dòng)活潑、意義深遠(yuǎn)的語(yǔ)言文字活動(dòng)。9月,學(xué)院還推出普通話宣傳周特別活動(dòng),以海報(bào)、標(biāo)語(yǔ)、橫幅、墻報(bào)等豐富多樣的形式推廣普通話。學(xué)院建有普通話網(wǎng)頁(yè),通過(guò)網(wǎng)頁(yè)傳播語(yǔ)言文字知識(shí)、展示語(yǔ)言文字規(guī)范化活動(dòng)開(kāi)展情況。學(xué)院組織師生向重慶大學(xué)語(yǔ)言文字工作網(wǎng)投稿。此外,學(xué)院師生積極參加學(xué)校和機(jī)關(guān)組織的各類語(yǔ)言文字規(guī)范化活動(dòng)。,目錄,三、語(yǔ)言文字宣傳工作,一、領(lǐng)導(dǎo)重視機(jī)構(gòu)健全,二、積極開(kāi)展語(yǔ)言文字教育培訓(xùn)、競(jìng)賽或趣味活動(dòng),四、積極參加全國(guó)、重慶市、學(xué)?;驒C(jī)關(guān)組織的語(yǔ)言文字類競(jìng)賽活動(dòng),五、日常工作用語(yǔ)用字規(guī)范情況,點(diǎn)擊添加文本,一、領(lǐng)導(dǎo)重視機(jī)構(gòu)健全,經(jīng)管學(xué)院建立了學(xué)院領(lǐng)導(dǎo)牽頭的語(yǔ)言文字工作領(lǐng)導(dǎo)小組,定期召開(kāi)專題會(huì)議,對(duì)語(yǔ)言文字工作進(jìn)行布置和檢查,安排專人按時(shí)報(bào)送要求提交的相關(guān)信息和數(shù)據(jù)等。,廖冰副院長(zhǎng)主持語(yǔ)言文字工作會(huì),廖冰副院長(zhǎng)、辦公室副主任葉平檢查普通話與文字使用規(guī)范情況,,,二、積極開(kāi)展語(yǔ)言文字教育培訓(xùn)、競(jìng)賽或趣味活動(dòng),學(xué)生讀書(shū)報(bào)告會(huì),“打造絕佳策劃案”培訓(xùn)講座,“寄語(yǔ)春天”教職工詩(shī)歌朗誦會(huì),“人際交往和溝通技巧”專題講座,二、積極開(kāi)展語(yǔ)言文字教育培訓(xùn)、競(jìng)賽或趣味活動(dòng),我的中國(guó)夢(mèng)奮斗的青春最美麗主題辯論賽,師生語(yǔ)言文字規(guī)范知識(shí)測(cè)試,行政教職工“金秋十月愛(ài)我中華”詩(shī)歌朗誦活動(dòng),普通話推廣情況調(diào)研活動(dòng),二、積極開(kāi)展語(yǔ)言文字教育培訓(xùn)、競(jìng)賽或趣味活動(dòng),經(jīng)管學(xué)院舉辦2014年青年教師教學(xué)基本功比賽在比賽中,選手們各展所長(zhǎng),展示了青年教師的激情和風(fēng)貌。授課內(nèi)容充實(shí)、清晰,教具、模型使用恰當(dāng),講解深入淺出,多媒體課件制作精美,展示了不同的教學(xué)特色和授課風(fēng)格。,“搞定高水平論文”講座,知識(shí)競(jìng)賽之“傳統(tǒng)文化”活動(dòng),,,三、語(yǔ)言文字宣傳工作,1推普周宣傳活動(dòng),,,2.語(yǔ)言文字網(wǎng)頁(yè)專欄,學(xué)院建有專門(mén)的語(yǔ)言文字網(wǎng)頁(yè),全方位及時(shí)反映我院全年開(kāi)展的各類宣傳、教育、競(jìng)賽、培訓(xùn)等活動(dòng)情況,HTTP//SEBACQUEDUCN/PTHYYWZGZ/INDEXJHTML,,,3.新聞投稿16篇,,,四、積極參加全國(guó)、重慶市、學(xué)?;驒C(jī)關(guān)組織的語(yǔ)言文字類競(jìng)賽活動(dòng),袁絲語(yǔ),能源經(jīng)濟(jì)重慶大學(xué)第十四屆外語(yǔ)文化節(jié)系列活動(dòng)之微電影三等獎(jiǎng)戴燕珊ACCA班軍訓(xùn)朗誦比賽三等獎(jiǎng)陳偉會(huì)計(jì)1班重慶市首屆科普人員及科普志愿者培訓(xùn)結(jié)業(yè)證書(shū)林巧、韋超、信管軍訓(xùn)期間紅色主題朗誦比賽三等獎(jiǎng),五、日常工作用語(yǔ)用字規(guī)范情況,要求師生教職員工講普通話要求師生教職員工規(guī)范使用語(yǔ)言文字在醒目處張貼語(yǔ)言文字宣傳海報(bào)、宣傳欄及時(shí)傳達(dá)學(xué)校相關(guān)語(yǔ)言文字工作文件通知學(xué)院領(lǐng)導(dǎo)定期檢查語(yǔ)言文字工作的開(kāi)展情況,
下載積分: 6 賞幣
上傳時(shí)間:2024-01-05
頁(yè)數(shù): 12
大?。?4.08(MB)
子文件數(shù):