შეკუმშვის მეთოდების სისტემატიზაცია

ავტორი


მზევინარ ზაქარაია

კატეგორია

მოდელირება და პროგრამირება

შეკუმშვის მეთოდების სისტემატიზაცია

მზევინარ ზაქარაია
აკაკი წერეთლის სახელობის სახელმწიფო უნივერსიტეტი, ქუთაისი, საქართველო
ელექტრონული ფოსტა: mzevinar57@gmail.com

ანოტაცია – სტატია ეძღვნება ფაილების შეკუმშვის პრინციპებს, სიჭარბის ტიპებს და მათი შემცირების გზების ანალიზს.
შემოთავაზებულია სიჭარბის სახეების გარკვეულწილად ახლებური სქემა, შეკუმშვის მეთოდების კლასიფიკაციის ძირითადი ნიშნები და მეთოდების სახეები. განხილულია შეკუმშვის ალორითმებისადმი წაყენებული მოთხოვნები, შეკუმშვის სხვადასხვა სქემების ღირსება-ნაკლოვანებანი და მათი ოპტიმიზაციის გზები.

საკვანძო სიტყვები – შეკუმშვა, მეთოდები, სისტემატიზაცია.

შეკუმშვის მეთოდებს განვითარების საკმაოდ ხანგრძლივი ისტორია აქვს. იგი დაიწყო I კომპიუტერის შექმნამდე კარგა ხნით ადრე; დღეისათვის კი ეს სფერო ერთ-ერთი ყველაზე საინტერესო და სწრაფად მზარდი სამეცნიერო მიმართულებაა. თავბრუდამხვევი განვითარების მიუხედავად, მონაცემთა მოცულობის საკითხი მაინც საკმაოდ მწვავედ დგას მეცნიერებისა და ტექნიკის მთელ რიგ დარგებში, რომლებშიც ადგილი აქვს ინფორმაციის შენახვა- გადაცემას.
შეკუმშვის მეთოდები გამოირჩევიან დიდი მრავალფეროვნებითა და სიმრავლით, თუმცა ალგორითმი, რომელიც ერთნაირად კარგად შეკუმშავს ნებისმიერი ფორმატის ფაილს, ჯერჯერობით არ არსებობს. ყოველ კონკრეტულ ამოცანას მიესადაგება თავისი მეტნაკლებად ეფექტური ხერხი. უფრო მეტიც, არასწორად შერჩეულმა მეთოდმა შეიძლება ინფორმაციის მოცულობის გაზრდაც კი გამოიწვიოს.
როგორც ზემოთ აღვნიშნეთ, დღეისათვის ფაილების შეკუმშვა ცალკე სამეცნიერო კვლევის სფეროა. მიუხედავად ამისა, სხვადასხვა ტიპის მონაცემების შეკუმშვის მეთოდების შესახებ ცოდნა არასისტემატიზირებული და გაბნეულია. შეინიშნება ტერმინების სიმრავლე, მკვეთრი აღრევა და არაკორექტულ კონტექსტში გამოყენება.
შეკუმშვის მეთოდები ეფუძნება იმ მარტივ ვარაუდს, რომ მონაცემთა ნაკრები ყოველთვის შეიცავს ჭარბ ელემენტებს. შეკუმშვა მიიღწევა მათი მოძებნის და კოდირების გზით.
სიჭარბე იღებს სხვადასხვა ფორმას, მაგ., ბიტების/ბაიტების განმეორებადი მიმდევრობა. ხშირად სიჭარბე ვლინდება კანონზომიერებით მონაცემთა სრულ ნაკრებში ან საერთო ნიშნების მქონე სხვადასხვა სიგრძის მიმდევრობებში.
ზოგადად არსებობს სიჭარბის შემცირების 3 თეორიული ხერხი: მონაცემთა შემცველობის შეცვლა, მონაცემთა სტრუქტურის შეცვლა და მათი კომბინაცია. I მეთოდი შეუქცევადია და შეკუმშული ფაილიდან მონაცემების საწყისი მიმდევრობის სრული აღდგენა არ ხერხდება. II ხერხი შექცევადია. საწყისი მასივის აღდგენა ხდება შებრუნებული ალგორითმით.
სხვადასხვა ავტორი განიხილავს სიჭარბის სხვადასხვა სახეებს, როგორიცაა აზრობრივი, ფიზიკური, სტატისტიკური და სხვ. [1-4]. ლიტერატურული ანალიზის საფუძველზე გამოვლინდა სიჭარბის სახეებად დაყოფის ორი ძირითადი ნიშანი: ა) სიჭარბის წყარო და ბ) სიჭარბის გამოვლენის ალბათური მოდელი.
I ნიშნის მიხედვით სიჭარბის სახეები დაიყო შემდეგი სქემით:
1. სტატისტიკური სიჭარბე.
1.1. კოდირების სიჭარბე – არაოპტიმალური (მაგ., არამინიმალური სიგრძის) კოდები. შეკუმშვის ალგორითმებს ძირითადად საქმე აქვთ ამ სახის სიჭარბესთან.
1.2. ელემენტებს (პიქსელებს) შორისი სიჭარბე – ელემენტებს შორის გარკვეული კორელაცია.
სტატისტიკური სიჭარბე უკავშირდება მონაცემთა პროგნოზირებადობას. აღმოიფხვრება დანაკარგების გარეშე.
2. ვიზუალური (სუბიექტური) სიჭარბე – ინფორმაცია, რომელიც არ აღიქმება ადამიანის თვალის მიერ. მისი აღმოფხვრა შესაძლებელია მონაცემთა ნაწილობრივი დაკარგვით, რომელიც მცირედ მოქმედებს ხარისხზე.
ვიზუალურ სიჭარბეს განაპირობებს ის, რომ თვალს არ შეუძლია პიქსელების რაოდენობრივი შეფასება. იგი პრინციპულად განსხვავდება სხვა სახის სიჭარბეებისაგან. ვიზუალური სიჭარბე კავშირშია მხედველობით ინფორმაციასთან, რომელიც ვიზუალურად არ აღიქმება და ამიტომ მისი წაშლა შესაძლებელია.
მხედველობითი ინფორმაციის კოდირება სრულდება კვანტირებით – მონაცემთა დიდი დიაპაზონის ასახვით გამომავალი მონაცემების შეზღუდული ნაკრებით (შემავალი მონაცემების გარდაქმნით უწყვეტი ფორმიდან დისკრეტულ ფორმაში). ეს ოპერაცია შეუქცევადია. ამიტომ კვანტირება არის შეკუმშვა დანაკარგებით.
II ნიშნის მიხედვით გვაქვს [4]:
1. ელემენტების განაწილების სიჭარბე – ელემენტები სხვადასხვა ალბათობებით;
2. ელემენტების გამეორების სიჭარბე – რამდენიმე ერთნაირი ელემენტის მიმდევრობა;
3. ელემენტების ჯაჭვების სიჭარბე – ელემენტების ჯაჭვების შესაძლო გამეორება;
3 (ბ) ელემენტების განაწილების სიჭარბე – დგება უშუალოდ წინა ელემენტების რაღაც რაოდენობის დადგომის შემდეგ;
4. პოზიციური სიჭარბე – ზოგი ელემენტის გამოვლენის ალბათობის გაზრდა ელემენტების ნაკადის გარკვეულ პოზიციაში (მაგ., მონაცემთა ბაზების ჩანაწერებში);
5. ელემენტთაშორისი სიჭარბე (სივრცული, გეომეტრიული და კადრშიგა). ვლინდება გრაფიკულ მონაცემებში.
შეკუმშვის ეფექტს განაპირობებს მონაცემთა სიჭარბის სახე და მათგან რომელი სიჭარბის აღმოფხვრით ხდება მოცულობის შემცირება. მაქსიმალური ეფექტი მიიღწევა ყველა სახის სიჭარბის მაქსიმალური შემცირებით, თუმცა ასეთი ალგორითმები რთულია. მარტივი ალგორითმები ამცირებენ სიჭარბის მხოლოდ ზოგიერთ, უფრო მნიშვნელოვან სახეს.
შეკუმშვის მეთოდების შეფასების ძირითადი კრიტერიუმებია:
1. ფარდობითი შეკუმშვა (გამომავალი და შემავალი ნაკადების ზომების ფარდობა);
2. შეკუმშვის კოეფიციენტი (შემავალი და გამომავალი ნაკადების ზომების ფარდობა);
3. შეკუმშვის ხარისხი (გამომავალი ნაკადის შეკუმშვის სიდიდე განმეორებითი შეკუმშვით იგივე ან სხვა ალგორითმით).
შეკუმშვის ალგორითმებისადმი წაყენებული მოთხოვნები უკავშირდება შეკუმშვის პროცესის და მუშაობის შედეგების ძირითად ტექნიკურ მახასიათებლებს [1]. ეს მოთხოვნებია:
1. სიმარტივე;
2. შეკუმშვის მაღალი ხარისხი (ეფექტურობა), ფასდება შეკუმშვის კოეფიციენტით;
3. შეკუმშვის მაღალი სიჩქარე. აქტუალური პროგრამებში, რომლებიც ახდენენ კოდირებას ციფრული ფოტო და ვიდეოკამერებით დროის რეალურ მასშტაბში;
4. აღდგენის მაღალი სიჩქარე. აქტუალურია თითქმის ყველა პროგრამისათვის;
5. სურათის მაღალი ხარისხი;
6. გამოსახულებათა მასშტაბირება (სურათის ზომების შეცვლის სიმარტივე არასასურველი არტეფაქტების წარმოქმნის მცირე ალბათობით);
7. უხეში (დაბალი გარჩევადობის) სურათის ასახვის შესაძლებლობა მთლიან ჩატვირთვამდე. (აქტუალურია ქსელის პროგრამებისათვის);
8. შეცდომებისადმი მდგრადობა (გადასაცემი ფაილის დაზიანების/ნაწილის დაკარგვის დროს ხარვეზების ლოკალიზაცია, ყველა მომდევნო კადრის სწორად ასახვა).
9. სურათის სპეციფიკის გათვალისწინება (შეკუმშვის ხარისხის შერჩევის შესაძლებლობა);
10. რედაქტირებადობა (აღდგენილი ფაილის რედაქტირების შემდეგ ხარისხის მინიმალური გაუარესება);
11. აპარატული რეალიზაციის სიმარტივე; პროგრამული რეალიზაციის ეფექტურობა;
12. საჭირო მეხსიერების ნაკლები მოცულობა.
მოცემულ პირობებში უპირატესობა ენიჭება კონკრეტულ მოთხოვნებს. პრიორიტეტები ყალიბდება პრაქტიკული ამოცანების გადაჭრის დროს.
მონაცემთა შეკუმშვისადმი განსხვავებული მიდგომები არსებობს. ზოგი მეთოდი ეფუძნება რთულ მათემატიკურ გარდაქმნებს, ზოგი – შემავალი მონაცემთა თვისებებს და მათი გარდაქმნის შედარებით მარტივ სქემებს.
შესაკუმში მონაცემების ტიპების, თვისებების, ალგორითმების აგების პრინციპების, ძირითადი ტექნიკური მახასიათებლების, ინფორმაციის აღდგენის სიზუსტის, მონაცემთა სიჭარბის გარდაქმნის მეთოდების, სიმეტრიულობის და სხვა ფაქტორების ანალიზის საფუძველზე გამოვყოთ შეკუმშვის მეთოდების კლასიფიკაციის ძირითადი ნიშნები [1, 2, 5, 6]:
1. შექცევადობა – განსაზღვრავს ინფორმაციის აღდგენის შესაძლებლობას, შეკუმშვის დროს მონაცემთა დაკარგვის ალბათობას. ამ ნიშნის მიხედვით არსებობს:
1.1. მეთოდები დანაკარგების გარეშე (შექცევადი შეკუმშვა, შეკუმშვა დამახინჯების გარეშე);
1.2. მეთოდები დანაკარგებით (შეუქცევადი შეკუმშვა, შეკუმშვა მონაცემთა დამახინჯებით).
შექცევადი ალგორითმების გამოყენება შეიძლება ნებისმიერი ტიპის მონაცემებისათვის. დანაკარგი მისაღებია მხოლოდ იმ მონაცემებში, რომლებისთვისაც ცნობილია როგორ და რა ხარისხით შეიძლება მონაცემთა შეცვლა სამომხმარებლო თვისებების დაკარგვის გარეშე.
შეუქცევადი მეთოდებით კუმშავენ გრაფიკას, ვიდეოს ან აუდიოს (მონაცემებს, რომელთაც ახასიათებთ სიჭარბე).
დანაკარგები საერთოდ დაუშვებელია: სიმბოლურ მონაცემებში, რომელთა შეცვლა იწვევს სემანტიკის შეცვლას (პროგრამები, ორობითი მასივები და სხვ.); სასიცოცხლოდ მნიშვნელოვან მონაცემებში, რომელთა შეცვლა იწვევს კრიტიკულ შეცდომებს, მაგ., სამედიცინო აპარატურით და კოსმოსური მოწყობილობების საკონტროლო ხელსაწყოებით მიღებული მონაცემები, გრაფიკული, ვიდეო და აუდიო მონაცემების მრავალსაფეხურიანი დამუშავების შუალედური მონაცემები და სხვ.
შეუქცევადი ალგორითმების მთავარი ღირსებებია: მაღალი შეკუმშვის კოეფიციენტი, ხარისხის გაუარესების დანაკარგების დასაშვები ზღვრები, მრავალი მეთოდის ფოკუსირება ადამიანის გრძნობის ორგანოების აგებულებაზე.
ნაკლოვანებები: განმეორებითი შეკუმშვისას ხარისხის გაუარესება, ხოლო დეკოდირების დროს ფაილის ზომის გაზრდა ხარისხის აღდგენის გარეშე.
2. გამოყენების სფერო – განპირობებულია შემავალი ნაკადის სპეციფიკით. უკავშირდება შესაკუმში ინფორმაციის შესახებ ცოდნის გამოყენება-არგამოყენებას და შექცევადობას. ამ ნიშნის მიხედვით გვაქვს:
2.1. უნივერსალური (საერთო დანიშნულების, მრავალმიზნობრივი) ალგორითმები;
2.2. სპეციალური ალგორითმები;
2.2.1. აუდიოს შეკუმშვა;
2.2.2. გამოსახულებების შეკუმშვა (ჯგუფური შეკუმშვა, ფრაქტალური შეკუმშვა, ფერის სიღრმის შემცირება, შეკუმშვა პროგნოზის საფუძველზე, wavelet-კომპრესია და სხვ.);
2.2.3. ვიდეოს შეკუმშვა;
2.2.4. ტექსტების შეკუმშვა.
უნივერსალური შეკუმშვის მეთოდები არ არიან დამოკიდებული შესაკუმში მონაცემების ფიზიკურ ბუნებაზე. გამოიყენება ტექსტების, პროგრამების, ბიბლიოთეკების და ობიექტური მოდულების კომპრესიისათვის.
სპეციალური მეთოდებით ოპერირებენ ცნობილი ბუნების მონაცემებზე (ხმა, სურათები და სხვ.). მონაცემების სპეციფიკის ცოდნის ხარჯზე მიიღწევა შეკუმშვის უკეთესი ხარისხი და/ან სიჩქარე უნივერსალურ მეთოდებთან შედარებით.
უნივერსალური მეთოდები შექცევადია, სპეციალური მეთოდები – შეუქცევადი.
ალგორითმის სირთულე განსაზღვრავს სისტემურ მოთხოვნებს. რაც ეფექტური და უნივერსალურია ალგორითმი, მით მეტი გამოთვლითი რესურსებია საჭირო.
3. მონაცემთა დამუშავების თანმიმდევრობა – განსაზღვავს შეკუმშის მოცემული ალგორითმით გავლების რაოდენობას. უკავშირდება შესაკუმში ინფორმაციის წარმოდგენას დროში. ამ ნიშნის მიხედვით გვაქვს:
3.1. ერთჯერადი გავლის ალგორითმები რომლებსაც შეკუმშული ფაილის მისაღებად სჭირდება მონაცემების მხოლოდ ერთხელ „დათვალიერება“;
3.2. მრავალჯერადი გავლის ალგორითმები.
4. უწყვეტობა – განსაზღვრავს ალგორითმის მუშაობის რეჟიმს, რომლის მიხედვით არსებობს:
4.1. უწყვეტი (ნაკადური) ალგორითმები;
4.2. პაკეტური (კადრობრივი) ალგორითმები.
უწყვეტი ალგორითმი იყენებს სიმბოლოების უწყვეტ ნაკადს ლექსიკონის შესაქმნელად და მხარდასაჭერად, პაკეტურში კი სიმბოლოების ნაკადი შემოიფარგლება ერთი პაკეტით.
ნაკადური ალგორითმებით კუმშავენ ვიდეოს ნაკადს, კადრობრივით – თითოეულ კადრს.
უწყვეტი რეჟიმი უზრუნველყოფს შეკუმშვის საუკეთესო კოეფიციენტს, მაგრამ ინფორმაციის მიღების დრო (შეკუმშვისა და დეკომპრესიის დროების ჯამი) მეტია პაკეტურთან შედარებით. კადრობრივი რეჟიმი აღდგენისას იძლევა უფრო მკაფიო სურათს.
5. შემავალი ნაკადის მოდელი – კავშირშია სიჭარბის ტიპებთან და მათ გარდაქმნასთან.
მოდელი შეკუმშვის ალგორითმის შემავალი მონაცემების პროგნოზირების (სიმბოლოების ალბათობათა გამოთვლის) მეთოდია. ამიტომ მოდელიორს უწოდებენ „პროგნოზატორს“ ან „პრედიკატორს“. პროგნოზატორში მონაცემთა წინა და/ან მომდევნო ანათვლები გამოიყენება მიმდინარე ანათვლის პროგნოზირებისათვის. კოდების ოპტიმალურობა და შეკუმშვის ეფექტი დამოკიდებულია სიმბოლოებს გამოვლენის ალბათობების შეფასების სიზუსტეზე [4, 6].
გამოიყენება მოდელების შემდეგი სახეები:
5.1. ლექსიკონური მოდელები;
5.2. სტატისტიკური მოდელები;
5.2.1. მარტივი სტატისტიკური მოდელები (ნულოვანი რიგის);
5.2.2. კონტექსტურ-შეზღუდული მოდელები (უმაღლესი რიგის სტატისტიკური მოდელები);
5.2.3. მდგომარეობების მოდელები;
5.3. მოდელები გარდაქმნების საფუძველზე;
5.1. ჯგუფური გარდაქმნებით;
5.2. სივრცული გარდაქმნებით.
ლექსიკონურ მეთოდებში მონაცემთა ფრაგმენტები ინახება „ლექსიკონში“ – მონაცემთა გარკვეულ სტრუქტურაში. თუ მონაცემების ახალი სტრიქონი იდენტურია უკვე ლექსიკონში არსებული ფრაგმენტის, გამომავალ ნაკადში ამ ფრაგმენტზე დაისმის მიმთითებელი.
სტატისტიკური მოდელები ეფუძნება საწყისი ტექსტის შესახებ შეგროვებულ სტატისტიკურ ინფორმაციას. ამიტომ ისინი წარმოადგენენ სხვა (მაგ., ლექსიკონური) მოდელების შემადგენელ ნაწილს. რთული სტატისტიკური ალგორითმები არსებობენ დამოუკიდებლადაც. სტატისტიკური მოდელები 2 სახისაა: ნაკადური და ბლოკური.
ნულოვანი რიგის სტატისტიკურ მოდელებში მომდევნო სიმბოლოს დადგომის ალბათობები წინამორბედებისაგან დამოუკიდებელია.
კონტექსტურ მოდელირებაში სიმბოლოს (ელემენტის, პიქსელის) ალბათობა ფასდება უშუალოდ მისი წინამორბედის ან კონტექსტის მიხედვით [6].
გარდამქმნელ ალგორითმებში ადგილი აქვს შემავალი ნაკადის გარდაქმნას (ფაქტიურად, ერთი სახის სიჭარბის გარდაქმნას სხვა, უფრო მარტივად მოდელირებად ფორმაში). შედეგად მიიღება უფრო ეფექტური შეკუმშვა.
ტრანსფორმაცია შეიძლება განხორციელდეს მთელი ფრეიმისათვის ერთდროულად (მაგ., სქემებში wavelet-გარდაქმნის საფუძველზე), ან ბლოკურად (მაგ., JPEG). შედეგი იკუმშება ენტროპიული მეთოდებით.
6. მონაცემთა წყაროს მოდელის აგების და განახლების ხერხის მიხედვით არსებობს:
6.1. სტატიკური (არაადაპტური) მოდელები;
6.2. დინამიკური (ადაპტური) მოდელები;
სტატიკური მოდელი იგება შესაკუმში მონაცემების ბუნების შესახებ აპრიორული წარმოდგენების საფუძველზე და უცვლელია მთელი შეტყობინებისათვის. სხვაგვარად, არ ხდება მოდელის ადაპტაცია შესაკუმშ მონაცემთა თავისებურებებისადმი.
მოდელის დადებითი მხარეა ცალსახა კოდირება-დეკოდირება, ნაკლოვანება – დაბალი ეფექტი. თუ საწყისი მონაცემები არ შეესაბამება მოდელს, ფაილის მოცულობა შეიძლება გაიზარდოს კიდეც. ამიტომ ასეთი სტრატეგია მხოლოდ სპეციალიზირებულ პროგრამებში გამოიყენება, როცა შესაკუმში მონაცემების ტიპი წინასწარაა ცნობილი.
ადაპტურ მოდელებში წყაროს მოდელის აგება ხდება ადაპტურად, მონაცემთა ნაკადის დამუშავების კვალდაკვალ ნაკადის მიმდინარე კონტექსტის გათვალისწინებით.
ადაპტური ალგორითმი ცდილობს გამოსცეს საუკეთესო შედეგები საწყისი მონაცემებისადმი მუდმივი გადაწყობით. იგი გამოიყენება, თუ ალგორითმის მუშაობის დაწყებამდე უცნობია საწყისი მონაცემების ალბათური შეფასება.
ადაპტურ მოდელირებას ახასიათებს საკმაოდ კარგი შეკუმშვა. მისი საშუალებით აგებენ სწრაფ, ერთჯერადი გავლის ალგორითმებს, რომლებიც არ საჭიროებენ შემავალი მონაცემების შესახებ აპრიორულ ცოდნას. საერთო დანიშნულების ალგორითმების უმრავლესობა ადაპტურია.
თუ თავისუფალი მეხსიერების მოცულობა შეზღუდულია, იყენებენ დინამიკურ მოდელებს, თუ თავისუფალი მეხსიერება საკმარისია – სტატიკურს.
ცალკე ჯგუფად განიხილება „ლოკალურად ადაპტური“ ალგორითმები. ისინი მოდელის აგებისას უპირატესობას ანიჭებენ მონაცემთა გარკვეულ თვისებებს, მაგ., ბოლოს შემოსულ სიმბოლოს.
მოდელის შეცვლა თითოეული სიმბოლოს დამუშავების შემდეგ შეიძლება იწვევდეს მთელ რიგ უსიამოვნო მოვლენებს, როგორიცაა:
• მდგრადობის დაკარგვა მოდელის ძალიან სწრაფი, „აგრესიული“ ადაპტაციის დროს;
• მოდელის განახლებაზე დიდი რესურსების საჭიროება;
• დიდი მოცულობის მეხსირების საჭიროება მონაცემთა სტრუქტურების შესანახად.
ამიტომ მიმართავენ ე. წ. ბლოკურ-ადაპტურ სტრატეგიას – მოდელის განახლებას ბლოკის დამუშავების შემდეგ.
7. კოდირების მეთოდი – ადგენს კოდებისა და სიმბოლოების შესაბამისობის წესს. გამოიყოფა კოდირების ორი მეთოდი:
7.1. პრეფიქსული კოდირება;
7.2. არითმეტიკული კოდირება.
კოდირება ხდება ალბათობათა განაწილების საფუძველზე. კოდირების მიზანია ინფორმაციის მოცულობის შემცირება ენტროპიის სიდიდემდე, ამიტომ კოდირებას უწოდებენ ენტროპიულს.
პრეფიქსული კოდირება იყენებს ბიტების მთელი რიცხვებისაგან შედგენილ კოდებს. პრეფიქსულობა ნიშნავს, რომ არც ერთი კოდი არ წარმოადგენს სხვა კოდის დასაწყისს (პრეფიქსს). დადებითი მხარეებია: გამოთვლების სიმარტივე და სწრაფქმედება, ნაკლოვანება: ალბათობის ზუსტი პროგნოზი უსარგებლოა [6].
არითმეტიკული მეთოდით კოდირება ხდება სიმბოლოების გამოვლენის ალბათობის პროპორციულად. იგი არის ოპტიმალური და მაღალეფექტური, განსაკუთრებით, სხვადასხვა სიმბოლოს გამოვლენის სიხშირეების მკვეთრი ცვალებადობის დროს. თუმცა კოდირების პროცედურა მოითხოვს საკმაო რესურსებს და არ გამოირჩევა დიდი სწრაფქმედებით [4], [6].
ალგორითმის სწრაფქმედებას განსაზღვრავს კოდირების მეთოდი. პრეფიქსული კოდირება უზრუნველყოფს შეკუმშვის მაღალ სიჩქარეს, სხვა სახის კოდირება – შედარებით დაბალს [2].
8. სიმეტრიულობა – მონაცემთა შეკუმშვა-აღდგენის ალგორითმების აგების პრინციპების მსგავსება და ურთიერთკავშირი. ახასიათებს კოდირება-დეკოდირების რესურსტევადობას. გამოიყოფა ორი სახის მეთოდოლოგია:
8.1. სიმეტრიული შეკუმშვა – აქვს მჭიდროდ დაკავშირებული, ერთმანეთთან ახლოს მდგომი შეკუმშვისა და აღდგენის ალგორითმები, კომპრესია/დეკომპრესიის თანაზომადი დრო);
8.2. ასიმეტრიული შეკუმშვა – ხასიათდება შეკუმშვა-აღდგენის სხვადასხვა დროებით.
საერთოდ, შეკუმშვა საჭიროებს გაცილებით მეტს დროს და სისტემურ რესურსებს, ვიდრე აღდგენა.
9. მონაცემთა კომპაქტურობის მიღწევის ხერხი. უკავშირდება შესაკუმში ინფორმაციის ხასიათს და ადგენს მონაცემთა გარდაქმნის, გადაწყობის წესს. ამ ნიშნის მიხედვით გვაქვს:
9.1. ლოგიკური შეკუმშვა;
9.2. ფიზიკური შეკუმშვა.
ფიზიკური შეკუმშვა გულისხმობს მონაცემთა გადაწყობას „ფორმალურად“, ე.ი. მოცემული ინფორმაციის ხასიათის გათვალისწინების გარეშე. ხდება მხოლოდ ბიტების სერიის გადაყვანა ერთი შაბლონიდან მეორეში (უფრო კომპაქტურში). იქმნება ერთი შეხედვით უაზრო სტრიქონები. ასეთი მექანიკური ხერხით შეკუმშულ მონაცემებს მართალია აქვთ უშუალო მიმართება ორიგინალურ მონაცემებთან და გარკვეული წესით ასახავენ საწყის მონაცემებში წარმოდგენილ ინფორმაციას, თუმცა, ეს ურთიერთკავშირი ჩვენთვის ცხადი არ არის.
ფიზიკური შეკუმშვის მეთოდებში ეფექტი მიიღწევა სიჭარბის აღმოფხვრის ხარჯზე.
ლოგიკური შეკუმშვის მეთოდოლოგია ლოგიკური ჩანაცვლების პროცესია, რომლის დროსაც ანბანური, ციფრული ან ორობითი სიმბოლოების ნაკრები იცვლება სხვა ნაკრებით. ამასთან, საწყისი მონაცემების აზრი, შინაარსი უცვლელია. ლოგიკური შეკუმშვის მაგალითია სიტყვათწყობის შეცვლა მისი აბრევიატურით, რომელიც მიიღება საწყისი სახელწოდებიდან და ინარჩუნებს აზრს. ლოგიკური შეკუმშვა არ გამოიყენება გამოსახულებათა შესაკუმშად.
ფიზიკური შეკუმშვის სახეებია:
9.2.1. მთელი ფაილის შეკუმშვა. ამ დროს პროგრამა კითხულობს ფაილის ყველა მონაცემს, იყენებს შეკუმშვის ალგორითმს და ქმნის ახალ ფაილს. ზომაში მოგება მნიშვნელოვანია, მაგრამ ფაილის გამოყენება დეკოდირებამდე არც ერთ პროგრამას არ შეუძლია. ამიტომ ასეთ შეკუმშვას იყენებენ ფაილების ხანგრძლივი შენახვის ან გადაგზავნისათვის.
9.2.2. ფაილის სტრუქტურაში ჩართული შეკუმშვა. ასეთი ფორმატის ფაილის წაკითხვის პროგრამებით მონაცემების წაკითხვა ხდება პირდაპირ ფაილის დეკომპრესიის დროს.
რასაკვირველია, აღნიშნული კლასიფიკაცია აბსტრაქტულია და პრაქტიკაში ხშირად იყენებენ ჰიბრიდულ სქემებს.

სტატიის გადმოწერა



——————————————————————–

Facebook Twitter Email Linkedin Google