1、 教材習題1-1,1-2,1-6?
1-1、資料壓縮的乙個基本問題是「我們要壓縮什麼」,對此你是怎麼理解的?
答:資料壓縮是以最小的數碼表示信源所發的訊號,減少容納給定訊息集合或資料取樣集合的訊號空間。
所謂的訊號空間即被壓縮物件,是指:
(1)物理空間,如儲存器、磁碟、磁帶、光碟、usb快閃儲存器盤等資料儲存介質。
(2)時間區間,如傳輸給定訊息的集合所需要的時間。
(3)電磁頻段,如傳輸給定訊息集合所要求的頻譜、頻寬等。
也就是指某個訊號集合所佔的空域,時域和頻域空間。
1-2、資料壓縮的另乙個基本問題是「為什麼進行壓縮」,對此你又是怎麼理解的?
答:1、因為如果直接儲存資料會使得儲存量很大,計算機容量是有限的,還有傳輸慢,執行緩慢,訪問慢,效率低下,不方便。
2、因為資料壓縮是以最小的數碼表示信源所發的訊號,減少容納給定訊息集合或資料取樣集合的訊號空間。
3、因為任何非隨機選擇的資料都有一定結構,可利用這種結構得到資料的更緊緻表示。
所以我們要進行壓縮。
1-6、資料壓縮技術是如何分類的?
答:根據資料壓縮後是否能完全恢復原始資料分類:
(1)、可逆壓縮:也叫無失真、無差錯編碼或無雜訊編碼。其他一些術語,如冗餘度壓縮、熵編碼、資料緊縮、資訊保持編碼等。
夏農資訊理論:冗餘度壓縮的工作機理是去除或減少那些可能是後來插入資料中的冗餘度,是乙個可逆的過程。
(2)、不可逆壓縮:就是有失真壓縮,資訊理論中稱為熵壓縮。 壓縮後資料不可以恢復為初始資料。
2、 參考書《資料壓縮導論(第4版)》page 8 1.4?
2、從一本通俗雜誌中摘錄幾段文字,並刪除所有不會影響理解的文字,實現壓縮。例如,在「this is the dog that belongs to my friend」中,刪除is、that和to之後,仍然能傳遞相同的意思。用被刪除的單詞數與原文本的總單詞數之比來衡量文字中的冗餘度。用一本技術期刊中的文本來重複這一試驗。對於摘自不同**的文字,我們能否就其冗餘度做出定量論述?
答:冗餘度就是把相應的內容去掉之後不會影響原來的意思。也就是仙儂的資訊理論所說的資料=資訊+冗餘度。由於資料中有很多的冗餘,所以才可以對資料進行壓縮,也使壓縮後可以資訊不會改變。如果被刪除的單詞多,說明冗餘度大;反之,冗餘度小。
3、 參考書《資料壓縮導論(第4版)》page 30 3, 5, 7(a)?
2.8、專案與習題
3、給定符號集a=,求以下條件下的一階熵:
(a)、p(a1)=p(a2)=p(a3)=p(a4)=1/4
h(a)=(-(1/4*log21/4))+(-(1/4*log21/4))+(-(1/4*log21/4))+(-(1/4*log21/4))
=-(1/4*log21/4)*4
=2bit
(b)、p(a1)=1/2 , p(a2)=1/4 , p(a3)=p(a4)=1/8
h(a)=(-(1/2*log21/2))+(-(1/4*log21/4))+(-(1/8*log21/8))+(-(1/8*log21/8))
=(-(1/2*log21/2))+(-(1/4*log21/4))+(-(1/8*log21/8))*2
=1.75bit
(c)、p(a1)=0.505 , p(a2)=1/4 , p(a3)=1/4 , p(a4)=0.12
h(a)=(-(0.505*log20.505))+(-(1/4*log21/4))+(-(1/4*log21/4))+(-(0.12*log20.12))
=(-(0.505*log20.505))+(-(1/4*log21/4))*2+(-(0.12*log20.12))
=1.87bit
5、考慮以下序列:
atgcttaacgtgcttaacctgaagcttccgctgaagaacctg
ctgaacccgcttaagctgaaccttctgaagcttaacctgctt
(a)、根據此序列估計個概率值,並計算這一串行的一階、二階、三階和四階熵。
一階熵:p(a)=21/84,p(t)=23/84,p(g)=16/84,p(c)=24/84
h=(-(21/84)*log2(21/84))+(-(23/84)*log2(23/84))+(-(16/84)*log2(16/84))+(-(21/84)*log2(21/84))
=1.98bit
二階熵:
at,gc,tt,aa,cg,tg,ct,ta,ac,ct,ga,ag,ct,tc,cg,ct,ga,ag,aa,cc,tg
ct,ga,ac,cc,gc,tt,aa,gc,tg,aa,cc,tt,ct,ga,ag,ct,ta,ac,ct,gc,tt
p(at)=1/42,p(gc)=5/42,p(tt)=5/42,p(aa)=5/42,p(cg)=2/42,p(tg)=2/42,p(ct)=7/42,p(ta)=1/42,
p(ac)=3/42,p(ga)=4/42,p(ag)=2/42,p(tc)=1/42,p(cc)=3/42,p(tg)=1/42
h=(-(21/84)*log2(21/84))+(-(23/84)*log2(23/84))+(-(16/84)*log2(16/84))+(-(21/84)*log2(21/84))
=3.53bit
三階熵:
atg,ctt,aac,gtg,ctt,aac,ctg,aag,ctt,ccg,ctg,aag,aac,ctg
ctg,aac,ccg,ctt,aag,ctg,aac,ctt,ctg,aag,ctt,aac,ctg,ctt
p(atg)=1/28,p(ctt)=7/28,p(aac)=6/28,p(gtg)=1/28,p(ctg)=7/28,p(aag)=4/28,p(ccg)=2/28
h=(-(1/28)*log2(1/28))+(-(7/28)*log2(7/28))+(-(6/28)*log2(6/28))+(-(1/28)*log2(1/28))+(-(7/28)*log2(7/28))
+(-(4/28)*log2(4/28))+(-(2/28)*log2(2/28))
=(-(1/28)*log2(1/28))*2+(-(7/28)*log2(7/28))*2+(-(6/28)*log2(6/28))+(-(4/28)*log2(4/28))+(-(2/28)*log2(2/28))
=2.49bit
四階熵:
atgc,ttaa,cgtg,ctta,acct,gaag,cttc,cgct,gaag,aacc,tg
ct,gaac,ccgc,ttaa,gctg,aacc,ttct,gaag,ctta,acct,gctt
p(atgc)=1/21,p(ttaa)=2/21,p(cgtg)=1/21,p(ctta)=1/21,p(acct)=2/21,p(gaag)=2/21,p(cttc)=1/21,p(cgct)=1/21,p(aacc)=1/21,
p(tgct)=1/21,p(gaac)=1/21,p(ccgc)=1/21,p(gctt)=2/21,p(aagc)=1/21,p(tgaa)=1/21,p(cctt)=1/21,p(ctga)=1/21
h=(-(1/21)*log2(1/21))*13+(-(2/21)*log2(2/21))*4
=4.01bit
(b)、根據這些熵,能否推斷此序列具有什麼樣的結構?
答:根據這些熵,可以推斷此序列具有的結構是:序列的階數越大,熵值就會越大,相應的平均自資訊資訊就低;序列的階數越小,熵值就會越小,相應的平均自資訊資訊就高。所以要想多了解序列的資訊,就需要把序列少分一點,求它的低階熵。
7、做乙個實驗,看看乙個模型能夠多麼準確地描述乙個信源。
(a)、編寫一段程式,從包括26個字母的符號集中隨機選擇字母,組成100個四字母單詞,這些單詞中有多少是有意義的?
#include#include#include
intmain()
m[i][
4]='\0'
; printf(
"%d: %s \t
",i+1
,m[i]);
}return0;
}
乙個有意義的單詞都沒有。
第一次作業
1.用較低的成本,開發出滿足客戶需求的軟體,開發的軟體可靠性高,易於維護和移植 2.分為設計階段,開發階段和測試執行階段 1 設計階段 分析客戶需求,明確要解決哪些問題,實現哪些功能,以及確定基本方法 2 開發階段 a.概要設計 畫出流程圖,進行模組化劃分,建立模組的層次結構以及呼叫關係 b.詳細設...
第一次作業
1.4 非計算機專業 程式和軟體有何不同?答 程式是通過計算機語言寫出來的具有許多演算法的摸板,是實現軟體功能的底層推手 推手的意思可以理解為動力 所以,程式是軟體的內在因子,而軟體是乙個或多個程式通過編譯器編譯出來的成品。1.3 查詢資料,解釋什麼是圖靈測試?答 指測試者與被測試者 乙個人和一台機...
第一次作業
1.解釋什麼是圖靈測試?圖靈測試 又稱 圖靈判斷 是圖靈提出的乙個關於機械人的著名判斷原則。一種測試機器是不是具備人類智慧型的方法。如果說現在有一台電腦,其運算速度非常快 記億容量和邏揖單元的數目也超過了人腦,而且還為這台電腦編寫了許多智慧型化的程式,並提供了合適種類的大量資料,使這台電腦能夠做一些...