トップページ⇒tech
992コメント329KB

【2ch】圧縮アルゴリズム【オリジナル】

■ このスレッドは過去ログ倉庫に格納されています
00011NGNG
おい、おまえら圧縮ソフト作ってみませんか?
中途半端に圧縮されて拡張子が.2ch
0152デフォルトの名無しさんNGNG
>>150
うわー、おっかなーい。藁
0153デフォルトの名無しさんNGNG
>>150
はいはい。怖い怖い。
ぶるぶる〜



藁
0154 NGNG
いや、まじめに考えようYO!
0155デフォルトの名無しさんNGNG
>>151=>>152=>>153
0156デフォルトの名無しさんNGNG
>>155
151と152と153を同一フレーズに圧縮したら非可逆になっちまうだろうが。
まあ展開結果は「クソレス3件」だけでも構わんがな。
0157デフォルトの名無しさんNGNG
>>156
真面目に考えんなYO。
つーか思いついた。
2ch語を特定の数字に置き換えんの。
1,オマエモナー 2,YO 3,逝ってよし 4,1よ 5,藁・・・・・(2ch語続く)

だれか作ってくださいお願いします。,5,
0158デフォルトの名無しさんNGNG
>>157
>>95
0159デフォルトの名無しさんNGNG
どうやら小学生がいるな。
特定の文字を数字にしたら
今度は数字を符号化しないといけなくなるじゃん。
0160不マジレスNGNG
予約語が256個あって、1バイトで置き換え。
それ以外は原文字のままで1バイトずつ。
で、それら8個集めて別のフラグバイトにどっちかを示すビットを立てていく。
0161デフォルトの名無しさんNGNG
>>160
全部 9bits にするぐらいなら予約語を escape した方が縮むんじゃ…
よっぽど頻繁に出てくればともかく、平文が 9/8 に膨らむと大きそう。
0162デフォルトの名無しさんNGNG
>>155
お前は自作自演を見破れないのか?
0163がいしゅつだったらスマソNGNG
LZSSベース。
ただし、ファイルの先頭より前の部分に2chで頻出する文脈を詰めておき、
そこを初期のスライド窓の位置とする。

圧縮・展開ソフトが固定データを持ってなきゃいけないのが重大な欠点か。
0164デフォルトの名無しさんNGNG
>>163の方法でいいと思うよ
0165デフォルトの名無しさんNGNG
           ___
    .      |(・∀・)|
     .      | ̄ ̄ ̄   ジサクジエン共和国
         △
        △l |
   __△|_.田 |△_____
      |__|__門_|__|_____|_____
0166デフォルトの名無しさんNGNG
共和政なのか…
0167デフォルトの名無しさんNGNG
>>138 辺りみたいに、不可逆にしてみるとか…
圧縮時はその時点での 2ch から頻度表作って詰めて、
展開時には初期の辞書で置き換えられた部分は無視するの。
…無視するなら、圧縮前に削除しちゃった方がいいか…
0168デフォルトの名無しさんNGNG
というか全部あぼーん
0169デフォルトの名無しさんNGNG
万一のときに聞いておきたいんですが
圧縮アルゴリズムを発見(発明)した時、
特許とかの申請はどういう風になるんですか?
0170デフォルトの名無しさんNGNG
トウキョウトッキョキョカキョク
0171デフォルトの名無しさんNGNG
リャクシテT.T.K.
0172デフォルトの名無しさんNGNG
http://tmp.2ch.net/test/read.cgi/sisou/1032255483/l50
0173デフォルトの名無しさんNGNG
>>169
「情報処理」にソフトウェアやアルゴリズムの特許についての話が連載中。読め。
0174デフォルトの名無しさんNGNG
別に圧縮しなくても 2ch ってヘッダ付けるだけでいいじゃん
0175 NGNG
>>169
そんなことも知らない奴には発明なんて無理
0176デフォルトの名無しさんNGNG
>165-166 ワラタ
0177デフォルトの名無しさんNGNG
>169
とりあえず2chにアルゴリズムをUP汁。そして各所からリンクを張られろ。
どこかの香具師が勝手に特許とっても申請前に既に一般に知られていれば
特許を無効にできると思われ。
0178デフォルトの名無しさんNGNG
           ___
    .      |(・∀・)|
     .      | ̄ ̄ ̄   ジサクジエン民主主義人民共和国
         △
        △l |
   __△|_.田 |△_____
      |__|__門_|__|_____|_____

0179デフォルトの名無しさんNGNG
>>177
>>とりあえず2chにアルゴリズムをUP汁。
これが一番危険と思うんですよね
2chに書き込んだのはすべて2chのものってことになってますから。
まずどっかのサーバーにウプした時点で著作権だけは保持できるはずなんですので
そのあとここに書き込むかもしれません。(まぁ無理かな、いちをおテスト中です)
0180177NGNG
>179
>2chに書き込んだのはすべて2chのものってことになってますから。
そうなのか、知らなかったよ。
じゃあジオとかを避けて適当にUPしてそのURLを2chに晒すのがいい鴨な。

以前、会社でPGやってる香具師が、退職時に自分の作ったコードを
自由に使えるようにする為に、会社で使う前に自分のHPにUPしてた
という話を聞いたことがあるよ。
0181デフォルトの名無しさんNGNG
>2chに書き込んだのはすべて2chのものってことになってますから。

んなわけねーだろ。というわけで晒しあげ。
0182デフォルトの名無しさんNGNG
掲示板の書き込みの著作権は管理人に帰属するとか。
0183デフォルトの名無しさんNGNG
そんな訳ねーだろ、って判例出てなかったっけ?>>182
0184デフォルトの名無しさんNGNG
著作権は作った時点でお前のものだアフォ。中学からやりなおして来い。

それに今話してるのは特許の話しだろ。小学生からやりなおして来い。
0185デフォルトの名無しさんNGNG
確認したいんですが
圧縮アルゴリズムが違うものでの圧縮は一回は効果ありますよね?
たとえばlzh形式をbzip2で圧縮できたりとか、、。
0186デフォルトの名無しさんNGNG
>>185
圧縮に関するすべての勉強をやり直せ。話はそれからだ。
0187デフォルトの名無しさんNGNG
ん〜
あほばっか

指摘されてるほうねw
0188デフォルトの名無しさんNGNG
>>178
タモンって誰よ?
0189EXE系の人NGNG
>>185
確かに効果あるが
その効果はバイト単位(一部を除き)でしか確認できないと思う
逆に増えることもある思う

0190デフォルトの名無しさんNGNG
>>189
オマエも勉強を…
0191デフォルトの名無しさんNGNG
$ md5sum.exe xyzzy-0.2.2.230.lzh
9ca53116f068eed6de59ac6540f1a036 xyzzy-0.2.2.230.lzh
$ bzip2 xyzzy-0.2.2.230.lzh
$ ls -l xyzzy-0.2.2.230.lzh.bz2
-rw-r--r-- 1540494 xyzzy-0.2.2.2lzh.bz2
$ bunzip2 xyzzy-0.2.2.230.lzh.bz2
$ md5sum.exe xyzzy-0.2.2.230.lzh
9ca53116f068eed6de59ac6540f1a036 xyzzy-0.2.2.230.lzh
$ ls -l xyzzy-0.2.2.230.lzh
-rw-r--r-- 1544223 xyzzy-0.2.2.230.lzh

>>190
んじゃこれをわかりやすいように馬鹿に説明してみてください。
0192デフォルトの名無しさんNGNG
>>191
KB単位で効果があるように見受けられるが?
ってゆーか何でわざわざMD5?
0193デフォルトの名無しさんNGNG
LZHはヘッダ部分が随分冗長な構成になっている。
そのため、SOLID圧縮が有効であることからわかるように、
bzip2などで再圧縮すると、そのヘッダ部分でわずかながら圧縮される。

しかし圧縮部分自体は、LZSS+Huffmanという構成で、
特にHuffmanがエントロピー符号であることから、再圧縮効果は期待できない。
0194193じゃないけどNGNG
>>191は、>>193でわかったのだろうか
0195デフォルトの名無しさんNGNG
わかりました。
サンクスです。理論的に意味がないというわけですね
0196デフォルトの名無しさんNGNG
脳みそが圧縮されてる人の集うスレ
0197デフォルトの名無しさんNGNG
俺の脳は8bit
0198デフォルトの名無しさんNGNG
俺の脳は140億ビット(人間はこれぐらいだって言われてなかったっけ?
0199デフォルトの名無しさんNGNG
脳みそなんて2bitあれば十分なんです。偉い人にはそれがわかるのです。
0200デフォルトの名無しさんNGNG
>>198
記憶容量と処理能力は別物だと思われ。
もし、しなぷすの結合のオンオフが1ビットに等価ならば、
2^140億の組み合わせがあるわけで・・・
0201デフォルトの名無しさんNGNG
それなりの会社にはimidasが置いてある筈です。
imidas2002のパソコンカテゴリに答えが書いてあったはず
0202デフォルトの名無しさんNGNG
ところで本題に戻すけど、

AAの圧縮なら、その絵のキャラクタインデックスとポーズを符号化するのはどう?
意味が通じればいいので、非可逆でよいわけだし、
キャラクタインデックスに20ビット、ポーズに12ビットもあれば十分。
セリフ部分やその他の特殊効果に費やすビット数を除けば、
32ビットから48ビットもあれば、AAを表現できそうだ。

例:
(ギコ猫、左向き、セリフ「逝ってよし」)
とか、
(モナー、上半身と下半身分離、ポインタ>>1)+(斬鉄剣モナー、左右、擬音「ザシュッ」)
とか。
0203デフォルトの名無しさんNGNG
大体誰が、非可逆でいいって言ったんだ?
0204デフォルトの名無しさんNGNG
>>193
エントロピー符号という用語は初めて知ったよ。

ちょっとぐぐってみたんだけど定義が良く分からないので
もしよければ教えて下さい。
0205デフォルトの名無しさんNGNG
>>204
エントロピーを達成するような符号を、エントロピー符号という。
エントロピーとは、理論的に達成可能な圧縮限界のこと。
確率 p[i] が与えられているときに H(P) = -Σp[i] log p[i] がエントロピー。

エントロピーレートを漸近的に達成する符号で、
a priori な知識なしに達成するものを、ユニバーサル符号という。
エントロピーレートとは、1記号当たりの漸近的なエントロピー。

Shannon情報理論を扱った本なら、一番最初に書いてあるから読むべし。
つーか、圧縮を知りたいなら、まずエントロピーありきだから、
エントロピーを知らないと、「1/100圧縮」や「何でも圧縮」といった、
とんでも圧縮法を提案してたたかれることになる。
0206知ったか厨NGNG
エントロピーは常に増大する
0207デフォルトの名無しさんNGNG
>>206
それは物理学の方だね!
局所的にエントロピーを減らすことは出来ても、
系全体では必ず単調非現象にあるんだね!
0208デフォルトの名無しさんNGNG
もしかしてここは学生さんしかいませんか?
0209デフォルトの名無しさんNGNG
>>205
サンクスコ

でもハフマン法の平均符号長(L)ってエントロピー(H)に対して
H≦L<H+1
だからエントロピーを達成できない場合もあるのでは?
0210デフォルトの名無しさんNGNG
>>209
対象が無限長なら大丈夫。
0211デフォルトの名無しさんNGNG
>>210
対象が無限長、という条件だけでは不十分と思われ。
例えばAとBという二つの記号からなる情報源を符号化すると
0と1になって圧縮しようがない罠。
0212デフォルトの名無しさんNGNG
昨日、講義でエントロピーを習ったよ! 情報理論だっけかな?
そんときは -p*log_2 p は情報量みたいな言い方してた.

まだ,勉強してないからあれだけど
「エントロピーとは、理論的に達成可能な圧縮限界のこと。」
なんていわれると激しく違和感を感じる.


0213デフォルトの名無しさんNGNG
世界を震撼させるかもしれない圧縮アルゴリズム
をあと一週間で発表します、今デコーダーの作成中です
期待してください。
0214デフォルトの名無しさんNGNG
>>211
Huffman符号は整数長の符号しか構成できないので、
メール欄にある通り、アルファベット拡大が必要ですな。こりゃまた失礼。
0215デフォルトの名無しさんNGNG
あげ
0216デフォルトの名無しさんNGNG
どんなの?良かったらすぽんさーになるよー

>>213
0217デフォルトの名無しさんNGNG
>>213
単語に分割して重み付けによって符号化する手法ですか?
それって、LZ77とLZ78まぜた方法LZFG,LZYGとは違うのですか?
(LZ77の一致位置を、単語の区切りにしか設定できない制限を置くというやつ?)
0218デフォルトの名無しさんNGNG
どんなデータでも1バイトに収まります。
0219学生NGNG
すべてのデータを1バイトで納めた人間は
天才をはるかに超えた存在だ
0220デフォルトの名無しさんNGNG
この40年で、人類が生みだしたデータは18エクサバイトになるらしい。
しかし、後18ヶ月もするとさらに18エクサバイト増えるらしい。

>>219
「天才をはるかに超えた存在」・・・つまり馬鹿ってことだな
0221デフォルトの名無しさんNGNG
>>218
但し、復元できません……ですか?
0222デフォルトの名無しさんNGNG
>>221 いや、
「あらゆるデータをまるで乱数のように復号しますので、
必要なデータを見つけるまで復号しつづけてください」
って感じだろ・・・
0223デフォルトの名無しさんNGNG
GCAで使われとるらしい
RangeEncoderってなんじゃらほい
0224デフォルトの名無しさんNGNG
>>223
マイクロ波で加熱する圧縮方法
0225デフォルトの名無しさんNGNG
>>224
なるほど、GCAってすごいですね。
だから糞重いのか
0226213 ◆2m/csy02kQ NGNG
圧縮したものを圧縮するとか、
むちゃくちゃ圧縮とかいう話ではありません。
むしろ圧縮率は極端にわるいです。
ただハフマンかブロックソーティングと組み合わせれば
使いものになるかもしれません。
私は科学畑の人間でないので
既出の概念かどうかをここで確認させてもらおうという話です。
0227デフォルトの名無しさんNGNG
>>226
圧縮の基礎だけでも勉強しておいた方が良い。
圧縮は、「圧縮 = モデル化 + 確率統計(確率推定) + 符号化」で構成される。
算術符号やHuffman符号は、(それ単体が「圧縮」を構成するものだが)符号化。
モデルはn次マルコフ連鎖とか、実装で言えばPPMやMTF、ブロックソーティングも該当する。
確率推定はモデル化や符号化に統合されていることが多いが、
次に a の出る確率は 1/2 である、と計算すること。

>>226の何かを X としよう。>>226が考えているのは、

「X + 符号化」あるいは「モデル化 + X」となる。
上記の「圧縮」の概念図に照らし合わせると、Xは確率推定を含む部分に相当する、
と推測される。

・・・で、>>226のアイデアって何?
0228デフォルトの名無しさんNGNG
>>223
rangecoder は算術符号の一種で、
Jonesの考案した整数による算術符号を改善したものに相当する・・・のか?

参考にしたところ:
ttp://www.compressconsult.com/rangecoder/
ttp://www.tomozo.ne.jp/yamazaki/download/doc_basic_compression.htm#RangeCoder
ttp://www.isl.cs.gunma-u.ac.jp/~shingo/labo/algo.html
0229デフォルトの名無しさんNGNG
ウワーン
0230デフォルトの名無しさんNGNG
先生
暗記しておくってのはダメですか?
0231デフォルトの名無しさんNGNG
不可逆圧縮でよければ

意見、賛成、反対、AA、get、煽り、荒らし、長文、吉野家

くらいに圧縮できるな。

例:
1 名前:デフォルトの名無しさん 投稿日:01/01/01 01:01
意見
2 名前:デフォルトの名無しさん 投稿日:01/01/01 01:02
2get
3 名前:デフォルトの名無しさん 投稿日:01/01/01 01:03
>>1 反対
意見
4 名前:デフォルトの名無しさん 投稿日:01/01/01 01:04
>>3 荒らし

こんな感じじゃだめか?
0232デフォルトの名無しさんNGNG
不可逆でいいんならレスを自動生成しろよ。データは1のレスだけにできるぜw
0233デフォルトの名無しさんNGNG
どうして2chは、こうもアフォばかりが集うのか…。
まぁ、アフォを社会から隔離しておくにはちょうど良いシステムかもな。

おまいら、もっと学習しる!!データ圧縮に関してあまりにも無知すぎる。
まずは、ぐぐれ!
0234デフォルトの名無しさんNGNG
レスを茶筅(or案山子)で分割
↓
使用頻度の高い単語を文字コードで使われていないコードに置換
※例. 逝って→0x7743(コードは適当)
↓
2chのスレを解析して作った頻度表を初期状態として
動的レンジコーダで圧縮。
↓
(゜Д゜)ウー
0235デフォルトの名無しさんNGNG
>>234
それはLZ77+78から派生するアルゴリズムとか、
7bit-ASCII(0-127)の単語を(128-255)に割り当てる手法などで、
すでに提案されている。
0236デフォルトの名無しさんNGNG
>>234
言葉遣いが滅茶苦茶なので、形態素解析が満足に出来ない罠。
「うつだしのう」ひとつとっても、変換がばらばらなので統計情報も偏らない・・・
0237デフォルトの名無しさんNGNG
>>212
>まだ,勉強してないからあれだけど
>「エントロピーとは、理論的に達成可能な圧縮限界のこと。」
>なんていわれると激しく違和感を感じる.

なぜ? まさかお前はエントロピー以上に圧縮できるとでも主張する気か?
0238デフォルトの名無しさんNGNG
思うに計算機の0101の概念を作った人が
言ってる理論を覆すのは無理と思われ。
0239デフォルトの名無しさんNGNG
>>237
エントロピーは無記憶情報源モデルとして求めた値なので
それ以外のモデルを使って圧縮すればエントロピー以上に圧縮できる。
0240しぃ豆 ◆hGFTP/i/.A NGNG
山奥のしぃ先生を見てると
ランレングスも効きそうな気がする。
0241デフォルトの名無しさんNGNG
>>239
お前もうちょっと勉強してから発言しろよな。
無記憶情報源以外のモデルを使ったら、そのモデルの上での
エントロピーがあるだろうが。
0242デフォルトの名無しさんNGNG
某大学のデンパ中間発表
ttp://isweb43.infoseek.co.jp/art/dempzone/up/2002101123025890.pdf
0243デフォルトの名無しさんNGNG
やめろってのw
0244デフォルトの名無しさんNGNG
>>240
ここでそのスレタイを聞くとは
0245デフォルトの名無しさんNGNG
>>237
うまく言えないんだが, 212 は例えば 205 の
>エントロピーを達成するような符号を
のような言葉の使い方に違和感を覚えてるんだと思う.

俺も知りたいんだけど, こういう言い方ってするんだっけ ?
0246デフォルトの名無しさんNGNG
>245
するよ。
0247デフォルトの名無しさんNGNG
>>245
俺の周辺だけ?と思ったのでぐぐってみた。「エントロピー 達成する 符号」
あ、大丈夫そうだ。
誤り率とか、冗長度についても「〜を達成する符号」ということが確認できた。
0248デフォルトの名無しさんNGNG
すると未知のモデルを発明(発見?)すれば、既知のモデルによるエントロピーを上回って圧縮できるのか。
究極のモデルを使えばどんなデータも0bitに圧縮できるな。
0249デフォルトの名無しさんNGNG
>>233
いうだけいって、何も説明できない
アホの大将

こいつ以上のアホは、そうは居ない
0250デフォルトの名無しさんNGNG
どうして2chは、こうもアフォばかりが集うのか…っ…!
まぁ、アフォを社会から隔離しておくにはちょうど良いシステムかもなっ…!

おまいら、もっと…!もっと…!学習しる!!データ圧縮に関してあまりにも無知すぎるっ…!
まずは、ぐぐれ!
0251デフォルトの名無しさんNGNG
つーかさ、いくらでも小さく圧縮することは可能なんだよ。問題は

ち ゃ ん と 元 に 戻 せ る か ど う か

だということに気づけ。そうすれば、元に戻せるためには
もともと持っていた情報量(エントロピー)より小さくできない
こともわかるだろ。
0252213 ◆2m/csy02kQ NGNG
かなり中途半端ですが
手元のエンコーダー、デコーダーでデータの整合性がとれたので公開します。
わからないところがあれば説明します。
http://www61.tok2.com/home/jnc/

サンプルのjnc.plはまだ4Kバイトを越えたファイルを処理できません。
使い方は、
jnc.pl -e filename エンコード->*.jncファイル生成
jnc.pl -d *.jnc デコード ->D*ファイル生成

エラー吐きまくりますが処理に問題はないはずです。
■ このスレッドは過去ログ倉庫に格納されています