78
בבבבב בבבבבב בבבבבב – בבבבב ב' בבב"ב( ( 1 1 ) ) בבבבב בבבבב בבבבבב בבב בבבבב בבבבב בבבבבב בבבבבב בבבבב ב' בבב"ב בבבבב בבבבב בבב בבבבב בבבבב בבבב בבבבבבבבבבב בב בבבב בבב בבב בבבב בבבבב,[email protected] , 30.5.2007

דחיסת נתונים ואותות סמסטר ב' תשס"ז

  • Upload
    beryl

  • View
    68

  • Download
    6

Embed Size (px)

DESCRIPTION

דחיסת נתונים ואותות סמסטר ב' תשס"ז. שיטות דחיסה ללא עיוות לקבצי מידע האלגוריתמים של למפל ושל זיו. נועם פרסמן, [email protected] , 30.5.2007. תוכנית. סימונים והגדרת הסכמה הכללית אלגוריתמי למפל-זיו יישומים העושים שימוש באלגוריתמים והשוואת ביצועים מדדי דחיסות ( סיבוכיות ) מחרוזות - PowerPoint PPT Presentation

Citation preview

Page 1: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((11))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

ואותות נתונים דחיסת" ' ז תשס ב סמסטר

שיטות דחיסה ללא עיוות לקבצי מידע

האלגוריתמים של למפל ושל זיונועם פרסמן,

[email protected] , 30.5.2007

Page 2: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((22))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

תוכנית

סימונים והגדרת הסכמה הכללית•אלגוריתמי למפל-זיו•יישומים העושים שימוש באלגוריתמים •

והשוואת ביצועיםמדדי דחיסות ) סיבוכיות ( מחרוזות• LZ78הוכחת אוניברסליות •

Page 3: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((33))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אריתמטיקה של מחרוזות

מעל א"ב סופי nנסמן מחרוזת סופית באורך A:

אורך המחרוזת:

:y ו – xשרשור מחרוזות

Axxxxxxx inn ...3211

nxL

mniny

nixsyxxysyyxx

ni

ii

mn

1

111

Page 4: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((44))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אריתמטיקה של מחרוזות

עבור סדרת מחרוזת נסמן את שרשורן:

המחרוזת הריקה תסומן באות . הבחינו כי :sלכל מחרוזת

המחרוזת היא

ss

rxxxxixr

i

...3211

n

0

01

n

nn

in

Page 5: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((55))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אריתמטיקה של מחרוזות

( n ) באורך x של מחרוזת mפיסוק באורך הוא סדרת תתי מחרוזות:

ביחס לפיסוק נתון, נסמן את מספר תתי במחרוזת kהמחרוזות בפיסוק עד לתו ה

באופן הבא:

11; 1111

11

niiiijx mjj

mj

j

ii

j

j

r

j

i

ik

r

j

jxxkc

1

11 1

minarg

Page 6: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((66))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אריתמטיקה של מחרוזות

:lסדרת אורכי הפסקאות תסומן באות

המכיל x]![ לעיתים נתעניין בפיסוק של מקסימום פסקאות שונות. נסמן את גודל

הפיסוק הזה בסימון xc #

jjii

ncj iixLjlwherejl j

j

11

11

Page 7: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((77))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מבנה כללי של האלגוריתמים

נידרש לשני אלגוריתמים:• Aאלגוריתם המקודד ) ממפה מחרוזות מא"ב –

(Bלא"ב Bאלגוריתם המפענח ) ממפה מחרוזות מא"ב –

(Aלא"ב

Page 8: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((88))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הגדרת אלגוריתם המקודד

n באורך x מחרוזת קלט:

התוכנית : המקודד יפסק את הקלט לסדרת הפיסוק הבאה •

) פיסוק מקור(

לכל פסקת מקור המפענח יתאים פסקת קוד , כלומר •

y פלט:

mj

j

ii

j

jx

1

11

1,11 1111

11 yLkkncjyx nc

kk

encoderi

ij

j

j

j

lsourceאורכי סדרת פסקאות המקור יסומנו ב

lcodeאורכי סדרת פסקאות הקוד יסומנו ב -

Page 9: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((99))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הגדרת אלגוריתם המפענח

y : מחרוזת קוד קלט

תוכנית:המפענח יפסק את הקלט לסדרת הפיסוק הבאה

) פיסוק קוד (:

וימפה לכל פסקת קוד את פסקת המקור המתאימה לו:

x המחרוזת פלט:

ncj

j

kk

j

jy

1

11

1,11 11

11 11

yLkkncjxy nc

i

idecoderk

kj

j

j

j

Page 10: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1010))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

סכמת מפענח סיבתית

בקלט iאם כדי למצוא את הפסקה ה - ולפענחה נדרש המפענח לכל היותר

למחרוזת של הקוד, נאמר שהסכמה סיבתית ) ביחס למפענח(.

11

1 iky

Page 11: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1111))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

Encoder

1

2

Decoder

3

time

1

2

3

1

2

3

תתי

סיבה

מסכ

עבור קול

שמודל

Page 12: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1212))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קצב הדחיסה של הסכמה

יוגדר קצב הדחיסה המושג xעבור מחרוזת ע"י סכמת אלגוריתמי מקודד-מפענח

באופן הבא:

עבור א"ב מקור וקוד בינארי מתקיים:

||lg

||lglg

B

AxL

yLxoA

nc

isource

nc

icode

oA

il

il

xL

yLx

1

1lg

Page 13: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1313))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הצגת האלגוריתמים

•LZ77 - Sliding Window LZ

•LZ78 – Tree Based LZ

•LZW שיפור של – LZ78

Page 14: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1414))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קידוד מספרים טבעיים

למה: עבור המספר הטבעיים prefix freeקיים קוד

הוא kכך שאורך הקוד לכל מספר טבעי

1lglg2lg OkkkcodeL

Page 15: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1515))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קידוד מספרים טבעיים - הוכחה

"איטרציה" ראשונה – נציע את המיפוי הבא:

אורך מילת הקוד:

xkC k 10 lg1

03lg21lg2 kkkkCL

Page 16: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1616))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קידוד מספרים טבעיים - הוכחה"איטרציה" שניה – נציע את המיפוי הבא:

0lg,01lglglg2 kkOkk

אורך מילת הקוד:

xkC k 10 lg1

xkCkC lg12

kk

kkCLkCL

lg1lglg2

lglg12

kk lg1lglg2

Page 17: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1717))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ77 – Sliding Window LZ

( השומר bufferבאלגוריתם זה קיים חוצץ ) את תת המחרוזת שכבר קודדה.

הוא "חלון" הסתכלות על העבר. bufferה - ואפשר גם להבין אותו בתור "המילון"

שלנו.

Page 18: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1818))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

(LZ77תיאור האלגוריתם )

מלא buffer ה אתחול ) מקודד ומפענח(:בסדרה הידועה מראש גם למקודד וגם

למפענח.

Page 19: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((1919))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

-המקודדLZ77אלגוריתם

Page 20: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2020))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

– המפענחLZ77אלגוריתם

Page 21: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2121))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

א'1 – דוגמא LZ77אלגוריתם

:שמור המידע bufferהנח שב

ועליך לקודד מחרוזת המתחילה כך:

: תהיה הבאה ההתאמה 10אזי

: היא הבאה 100והפסקה

כלומר:

00010:buffer

10000:x

2,0,4iy

Page 22: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2222))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

ב'1 – דוגמא LZ77אלגוריתם

:שמור המידע bufferהנח שב

ועליך לקודד מחרוזת המתחילה כך:

: תהיה הבאה ההתאמה 1010אזי

: היא הבאה 01010והפסקה

כלומר:

00010:buffer

4,0,4iy

10100:x

Page 23: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2323))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אבחנות בסיסיות

הסכמה היא סיבתית•זהו אלגוריתם חמדן•פסקאות שונות• הוא : jהמחיר לקידוד הפסקה ה •

לכן קצב הדחיסה:•

jlOAijl sourcejcode lg||lglg

n

jlOAi

il

ilnc

j sourcej

nc

j source

nc

j code

UnBoundedLZ

1

1

1_77

lg||lglg

Page 24: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2424))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ77 גרסה עם - buffer חסום

Page 25: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2525))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

חסום bufferאבחנות – גרסא עם

סכמה סיבתית; אלגוריתם חמדן•לא כל הפסקאות שונות זו מזו.• הוא :jהמחיר לקידוד הפסקה ה •

קצב הדחיסה הוא:•

sbuffercode LALjl lg||lglg

n

LALnc

il

ilsbuffer

nc

j source

nc

j code

BoundedLZ

lg||lglg

1

1_77

Page 26: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2626))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ 78-Tree Based LZ

, שהוא Dבגרסה זו קיים מילון שנסמנו באות סדרה של מחרוזות.

.D(j) יסומן ב – jהמילון בזמן ה -

Page 27: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2727))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ 78האלגוריתם -

אתחול המפענח והמקודד : המילון מכיל את המחרוזת הריקה.

Page 28: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2828))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ78המקודד

Page 29: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((2929))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ78המפענח -

Page 30: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3030))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

שימוש בעץ כייצוג של המילון

מבנה נתונים אבסטרקטי לייצוג המילון הוא עץ מכוון:

לכל מילה במילון קיים צמת-

המסלול המכוון מהשורש לצמת מגדיר את המילה-Dictionary

1

1

02

3

4

5

6

7

8

9

10

11

Page 31: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3131))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

עץ שחור לבן כייצוג של המילון

עץ מכוון עם צמתים משני סוגים: : צמתים אלו מייצגים מחרוזות שהן שחורים•

פסקאות שכבר מופו בתהליך הקידוד. צמתים אלו מייצגים פסקאות לבנים :•

שטרם זוהו )ולכן אינן חלק מהמילון שלנו( אך הן הבאות בתור למיפוי.

Page 32: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3232))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

עץ שחור לבן כייצוג של מחרוזות

1

11

0

4

6

1

4

1

3

5

6

7

8

1

2

זיהוי מחרוזת יהיה טיול על העץ מהשורש לעלה לבן – לקבלת הפסקה הבאה.

הפעם נשלח את המספר של העלה הלבן ) שוב בהתאם למקומו הלקסיקוגרפי ( .

Page 33: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3333))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ78עם חסמים

חלוקה לבלוקים קידוד בנפרד ושרשור •) שקף הבא(

מילון שאינו גדל מעבר לגודל מסוים:•הופך סטטי–מוחק רשומות לפי משטר מסוים–נמחק ומתחיל בנייה מחדש–

Page 34: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3434))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

.

.

.

m

nixix im

mi ...2,111

1x

1

m

ny

m

ny

1y

1

m

nx

m

nx

BLZ 78

BLZ 78

BLZ 78

m

n

i

iyy1

Page 35: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3535))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZW שיפור על – LZ78

•Welch הבחין שניתן להימנע משליחת התו .uncodedהמחדש

נותן שיפורים משמעותיים במקורות •דחיסים.

תרם לפופולריות של האלגוריתם•

Page 36: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3636))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

יישומי האלגוריתמים והשוואת ביצועים

יישומים :•–gzip,zip ( LZ77( –compress ( LZW )–gif ( LZW )

מבחני השוואת ביצועים – קורפוס •קנטרברי

Page 37: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3737))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

gzip,zip

:LZ77 שהוא וריאנט של deflateמימוש של וחלון בגודל 32KBבגודל bufferשימוש ב •

256B.עבור המחרוזת הבאה שיש לקודד לצורך ההתאמותhashשימוש בטבלת •קידוד הפמן של המצביע, ושל המחדש•

+אורך המחרוזת.חלוקה לבלוקים•• look ahead– .מיתון החמדנות

Page 38: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3838))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

compress

והוא מימוש של Unixיישום הנפוץ בסביבת LZW:

גודל המילון המקסימלי יכול להיקבע ע"י •המשתמש

התנהגות היישום כאשר המילון מתמלא.•

Page 39: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((3939))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

gif (graphic interchange format)

הצגה לקבצי תמונות המכילים עד פורמט• צבעים .256

באופן דומה ל – LZWמשתמש ב •compress.

הסריקה של התמונות נעשית שורה שורה.•

Page 40: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4040))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

Benchmarkמבחני ביצועים ) Tests)

מוטיבציה•דרישות ממבחן ביצועים אמין•הקורפוס של קנטרברי•

Page 41: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4141))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

תכולת הקורפוס של קנטרבריFileAbbrevCategorySize(Bytes)

alice29.txttextEnglish text 152089

asyoulik.txtplayShakespeare 125179

cp.htmlhtmlHTML source 24603

fields.cCsrcC source 11150

grammar.lsplistLISP source 3721

kennedy.xlsExclExcel Spreadsheet 1029744

lcet10.txttechTechnical writing 426754

plrabn12.txtpoemPoetry 481861

ptt5faxCCITT test set 513216

sumSPRCSPARC Executable 38240

xargs.1manGNU manual page 4227

Page 42: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4242))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

השוואת ביצועיםComp Rates ( source: http://corpus.canterbury.ac.nz )

0

0.5

1

1.5

2

2.5

3

3.5

4

4.5

5

text fax Csrc Excl SPRC tech poem html list man play

file types

co

mp

. ra

te b

it/c

ha

rac

ter

gzip-b

gzip-d

gzip-f

compress

Page 43: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4343))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מדדי דחיסות עבור סדרות

הגישה הסטכוסטיתגישה א' : המחרוזת חברה באנסמבל בעל מאפיינים

סטטיסטיים ידועים ) רצוי: סטציונרי וארגודי (ניתנות בתוחלת על פני חברי האנסמבל.תוצאות

קצב האנטרופיהמדד הדחיסות:

חסרונות/בעיות: מה ידוע על הדחיסות של מחרוזת •

ספציפית? מה באשר למקורות שהסטטיסטיקה שלהם •

אינה ידועה? או שאינם סטציונרים או ארגודיים ?

Page 44: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4444))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מדדי דחיסות עבור מחרוזות

הגישה הדטרמיניסטית : ניתוח מחרוזות גישה ב' : אינדיבידואליות

נמצא לכל מחרוזת את קצב הדחיסה הטוב ביותר שניתן להשיג עבורה. פעולת הדחיסה היא פעולה חישובית של מיפוי מחרוזות למחרוזות – ולכן נתעניין בקצבי הדחיסה הניתנים להשגה באמצעות מכונות חישוב.

מדדים מוצעים: סיבוכיות קולמגורוב•קצב למפל זיו•

Page 45: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4545))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מכונת חישוב אוניברסלית אידיאלית

מכונת חישוב אוניברסלית אידיאלית היא מערכת המקבלת •תוכנית וקלט לתוכנית ומריצה את התוכנית על הקלט .

דוגמאות למכונות אוניברסליות הן למשל:•מכונת טורינג אוניברסלית עם סרט באורך אין-סופי.–בגודל לא מוגבל המריצה Random Accessמכונת חישוב עם זיכרון –

Cתוכניות ב מכונת חישוב " " " " " " –

A JAV " ב

כל הדוגמאות הנ"ל שקולות במובן, שכל בעיה חישובית שניתן •לפתור באמצעות מימוש אלגוריתמי במערכת אחת ניתן לפתור

באמצעות מימוש אלגורתמי ) אולי אחר ( בכל אחת מהמערכות האחרות.

Page 46: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4646))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

סיבוכיות קולמגורוב

Page 47: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4747))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

סבוכיות קולמגורוב: דוגמא א'

x = 0n

Page 48: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4848))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

סבוכיות קולמגורוב: דוגמא ג'

Page 49: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((4949))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אוניברסליות סיבוכיות קולמגורוב

Page 50: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5050))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

ח1שיבות סיבוכיות קולמגורוב

משפט ) חישוביות סיבוכיות :לכל מכונת חישוב קולמגורוב (

אוניברסלית ואידיאלית, סיבוכיות יבה. קולמגורוב – אינה ח1ש2

לא ניתן לממש מקודד המשיג את סיבוכיות קולמגורוב •לכל מחרוזת.

באופן כללי,לא ניתן לחשב את סיבוכיות קולמגורוב של •מחרוזות, או אפילו להוכיח שסיבוכיות קולמגורוב של

מחרוזות היא מספר מסוים.

Page 51: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5151))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מקודד מבוסס מכונת מצבים סופית

Page 52: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5252))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מקודדים משמרי אנפורמציה

Page 53: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5353))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קצב הדחיסה של מקודד ביחס למחרוזת

Page 54: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5454))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קצב הדחיסה של מחלקת מקודדים

Page 55: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5555))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

limsup

Page 56: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5656))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

קצב למפל - זיוהגדרה ) קצב למפל - זיו(

)שאינה מוגבלת באורכה( xקצב למפל-זיו ביחס למחרוזת מוגדר באופן הבא:

xx sEs

LZ

lim

Page 57: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5757))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

חסם תחתון על קצב הדחיסה

Page 58: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5858))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

חסם תחתון על קצב הדחיסה -דוגמא

Page 59: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((5959))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הגדרות: תדירות יחסית,אנטרופיה מנורמלת של מחרוזת

Page 60: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6060))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

אנטרופיה מנורמלת - תוצאות

Page 61: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6161))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ78אוניברסליות

[ כי עבור סכמת 5למפל וזיו הראו ב – ] וקידודם mפירוק מחרוזת לבלוקים באורך

חסום ) מספר מצביו הוא LZ78ע"י מקודד ( מתקיים:mפונקציה של

Page 62: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6262))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

LZ78מבט נוסף על סיבוכיות

: שמתקיים טענו

!lg1

1||lg1_78 ncn

An

ncxn

UnBoundedLZ

1lg1

1||lg1 #

##

1_78

ncn

ncA

n

ncxn

UnBoundedLZ

: מתקיים בפרט לכן

Page 63: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6363))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

C#(n)חסם על

מסקנה:

1lg1

1||lg1 #

##

1_78

ncn

ncA

n

ncxn

UnBoundedLZ

)1(lg ##

oncn

nc

Page 64: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6464))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הצדקה א' לאוניברסליות

הקידוד:

mחלוקה לסופר בלוקים בגודל

מעל א"ב שהליטרלים שלו הם הסופר LZ78הרצת בלוקים.

ליטרלים, ולכן יש לנו 2Hm , ישנם 1בהסתברות :AEPלפי א"ב אפקטיבי בגודל זה.

Page 65: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6565))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הצדקה א' לאוניברסליות ) המשך (

#c אזי לפי למת החסם על n=kmהניחו מתקיים:

בפרט:

m

nm

m

nO

Ho

m

n

mm

nH

m

nH

x

m

n

m

n

m

n

m

n

nUnBoundedLZ

lglglg

lg1

1

1

1)1(

lg1

1lg

lg1

11_78

HxUnBoundedLZm

_78lim

Page 66: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6666))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

' ב הצדקה

- לבן השחור בעץ נשתמש ההוכחה לצורך

Page 67: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6767))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

העץ על מושרות הסתברויותלבן- השחור

Page 68: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6868))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

השחור העץ על מושרות הסתברויותלבן

נשלם: iבבואנו לקודד את הפסקה ה •

אלטרנטיבית: נקצה הסתברויות לעלים • :iהלבנים בזמן ה

אזי:•

||

1

iDvPi

||lg iDiyL

vPiyL ilg

Page 69: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((6969))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

העץ על המושרות הסתברויותלבן השחור

לקשת iההסתברות המוקצת בזמן e=(v1,v2)

1

2

vleaves

vleavesePi

Page 70: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7070))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

: ואורכים הסתברויות

Page 71: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7171))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

הסכימה סדר שינוי

Page 72: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7272))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

כתוצאה ) הסתברויות שינוי אבחנותמקידוד(

לכל צמת שחור בכל קידוד אנו עוברים •בלכל היותר קשת אחת היוצאת ממנו.

שינוי הסתברות הקשתות כתוצאה ממעבר •בצמת שחור :

מקרה בסיס–נוסחת נסיגה–

Page 73: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7373))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מקידוד - כתוצאה הסתברויות שינוימסקנות

Page 74: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7474))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

vחישוב תרומת צמת

v

ncvv

jncvj

v

v

v

v

vvnc

i wrpathuvi

nnjnn

nn

n

n

nnuvP

ii

0,1

1lglg!1

!!lg,lg

,

0

10

1 ,,

לפי סטירלינג קיים:

vv

v

Bvov

v

nOn

nhn

n

nlglg 0

0

Bv

vv

v

Bv

v

Bvv

vn

nOn

nhn

nn

nxCodeL

lg

1lglg

0

0

1

Page 75: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7575))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

נוספות אבחנות

כל פסקה יוצרת צמת שחור , לכן:

לבן או כל תו קוד פירושו ביקור בצמת )שחור ( לכן:

n

nOn

n

ncnncnn

Bv

v

lg

111

Page 76: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7676))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

החסם מציאת

Bv

v

Bv v

v

B

v

Bv

v

v

v

Bvn

UnBoundedLZ nOnc

ncnn

nh

n

nnO

n

nhn

nx lg

1

2

1

2

lg1 001_78

nc

nnc

nO

n

nh

nc

nnc

nO

n

n

n

nhx

Bv

v

B

Bv

v

Bv v

vv

BJensen

nUnBoundedLZ

lg2

1

lg2

1

0

01_78

n

nO

lg

lglg

Page 77: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7777))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

מסקנה:

n

nOxH

n

nOxPhx nn

Bn

UnBoundedLZ

lglgˆlg

lglg0, 1111_78

Page 78: דחיסת נתונים ואותות סמסטר ב' תשס"ז

((7878))דחיסת נתונים ואותות – סמסטר ב' תשס"ז ללא לקבצים דחיסה שיטותעיוות

סיכום

כשיטות דחיסה באמצעות LZאלגוריתמי •פיסוק

שיטות יישומיות•מדדי דחיסה תיאורטיים•השגת אוניברסליות במודל מחרוזות •

אינדיבידואליות.