パスワードを忘れた? アカウント作成
16697654 story
人工知能

gzipを使用した言語判定モデル、精度がほとんどのニューラルモデルを上回る 38

ストーリー by nagazou
高精度 部門より
言語判定には、ディープニューラルネットワーク(DNN)が広く使われているが、この方法は計算量が大きいことから大量のデータとリソースが必要であり、実際の利用時や最適化、新しいデータへの適用にはコストがかかるという問題が起きるそうだ。そこで、簡単で軽量かつ汎用的な代替手法がACL 2023で提案されたという。手法としてはタレコミにあるように、シンプルなコンプレッサ(gzipなど)とk近傍法を組み合わせたないようだという(ACL アンソロジーStephen Diehl氏のツイート)。

Patilise 曰く、

ACL 2023でk近傍法とgzipを組み合わせた言語判定モデルが発表された。軽量(大量のデータと処理能力が不要)、パラメータ調整不要でPythonスクリプトにして14行という簡素なものだったが、ほとんどのニューラルモデルと同程度または上回る精度となった。すべてのデータセットでgzipを上回る精度が得られたのはBERTだけだった。

情報元へのリンク

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2023年07月20日 7時42分 (#4497721)

    tarしてgzipしろと言われたものだが、意味があったんだな。

    • by nemui4 (20313) on 2023年07月20日 8時26分 (#4497732) 日記

      Excel bookも保存するときには毎回gzipしてるんでしたっけ

      親コメント
      • by Anonymous Coward

        deflate圧縮という意味では間違っていないがgzipじゃなくてzipだ。拡張子を.zipに変えればZipフォルダーとして開ける

        • by Anonymous Coward

          deflate圧縮という意味では間違っていないがgzipじゃなくてzipだ。拡張子を.zipに変えればZipフォルダーとして開ける

          初期のxlsxはしょっちゅう壊れるdestroy圧縮ってかんじだったなぁ

          # まぁ解凍した中身は生きていたから壊れるのはメタ情報だけなんだろうけど

    • by Anonymous Coward

      時代は変わったな
      こないだファイル送ろうとしたらwindowsPCに圧縮ツールが
      入ってなくてやむなくcygwinでtarしてgripして送った
      向こうは問題なく解凍できたようだが次はzipで送れって言われた

      • by Anonymous Coward

        何でわざわざCygwin?
        tarなんてWindowsに標準搭載されてるでしょ

        Windows 10のInsider Previewで標準コマンドラインツールにtarとcurlが追加される [srad.jp]

        • by Anonymous Coward

          ファイルorフォルダを右クリックして
          「送る → 圧縮 (zip形式) フォルダー」でzip圧縮できるから
          そっちの方が手軽よ

          • by Anonymous Coward

            空のzipファイル作って放り込むてもあるな。
            次の次はzipの中身が文字化けしてるから直して送り直せと言われそうだな。

            • by Anonymous Coward

              ファイル名が文字化けすることはあっても中身が文字化けはちょっと考えられないが

        • by Anonymous Coward

          何でわざわざCygwin?
          tarなんてWindowsに標準搭載されてるでしょ

          おまえ耳年増なだけで、実際使ったことねえだろ?

          $ bsdtar --version
          bsdtar 3.7.0 - libarchive 3.7.0 zlib/1.2.13 liblzma/5.4.3 bz2lib/1.0.8 liblz4/1.9.4 libzstd/1.5.5
           
          C:\>tar --version
          bsdtar 3.5.2 - libarchive 3.5.2 zlib/1.2.5.f-ipp

          Windowsのlibarchiveは一応入ってるってだけで、Linuxとかのと比べ極めて古いんだわ
          しかもどういう握り方したのかしらんが、gzipはともかく、.bz2や.xzすら扱えないんで正直使い物にならん

          だいたいlibarchive自体、そんなビルドされることを想定してないから

          • by Anonymous Coward

            しかもどういう握り方したのかしらんが、gzipはともかく、.bz2や.xzすら扱えないんで正直使い物にならん

            Windows 11のBuild 23493以降では改善していた。

            C:\>tar --version
            bsdtar 3.6.2 - libarchive 3.6.2 zlib/1.2.5.f-ipp liblzma/5.2.5 bz2lib/1.0.8 libzstd/1.5.4

            GUIがrar/7-Zipなどに対応した余録だな。ていうか元米はgzipで圧縮してるんだから.bz2や.xzサポートなんかどうでもいいじゃん。

            だからってCygwin使

            • by Anonymous Coward

              勝手にWSL入れられないのにCygwinなら入れられるという状況が理解できんな

              横からですが、WSL入れるにはWindowsの機能の有効化あたりでAdmin権限が必須だけど、CygwinはAdmin権限不要でインストールできるみたいな話なんじゃないかなと思います。

              • by Anonymous Coward

                管理者権限なしPCだとc:\cygwinにインストールできないので、1ユーザー専用でホームディレクトリ配下に入れることになると思うんだけど

                ナウなヤングが使ってるっていうwingetでユーザー領域に入れるアーカイバあったりしないかなあ(知らない)

    • by Anonymous Coward

      tarしてgzipしろと言われたものだが、意味があったんだな。

      古のおやじギャグとともに学んだな

      # tar玉しってーるか

  • by Anonymous Coward on 2023年07月20日 6時55分 (#4497702)

    将来gzip高速化の拡張命令セットがAI高速化命令としてCPUに搭載されるんかな

  • by Anonymous Coward on 2023年07月20日 9時59分 (#4497785)

    ニューラルネットも基本的に積和演算しまくるだけの簡単なお仕事で
    LZアルゴリズムの方があれこれ複雑な事してるような気もするが

    • by Anonymous Coward

      計算「内容」についてはLZアルゴリズムが積和演算より複雑とはあまり思えないが…
      この場合は参照データがスライド辞書のサイズなどで明確に制限されるdeflateと違って、ニューラルネットは学習が進むほど参照データが巨大になるため計算量が増えるってことじゃないかな?

      • by Anonymous Coward

        gzipの場合「データセット」は圧縮対象のファイルに制限されるが、ニューラルネットでは通常オープンエンドの巨大なデータセットを使うというのもあるな

  • by Anonymous Coward on 2023年07月20日 10時04分 (#4497791)

    スラド民のレベルに合わせた?

    • by Anonymous Coward

      「組み合わせたな、異様だ」と言う [誰が?]

  • by Anonymous Coward on 2023年07月20日 11時56分 (#4497854)

    例えば、そのテキストファイルで使用されている言語が判定できるってこと?
    ENかDEかとか?

    • by Anonymous Coward

      そうだよ。

    • by Anonymous Coward

      さすがに誰か書くかなと思って見守ってましたがいたたまれないので書きますが
      元論文ではtext classificationです
      やってる内容は普通のテキスト分類タスクです

      スラドではよくあるフェイクニュースです

      • by Anonymous Coward

        classificationができるならベクトル化もできるし、十分有用なのでは?

        • by Anonymous Coward

          #4498062です
          ベクトル化の意味が分かりませんがもちろん有用だと思いますよ
          言語判定よりさらに一般的なタスクをさせてるので

  • by Anonymous Coward on 2023年07月20日 12時02分 (#4497856)

    昔、小説の作者を推定するのにzip圧縮率が使えるという話があったような気がする

  • by Anonymous Coward on 2023年07月20日 12時37分 (#4497883)

    昔のスラドの投稿システムで、投稿をgzip圧縮してみて圧縮率が高すぎたらspamと判定するというのがあった気がする

  • by Anonymous Coward on 2023年07月20日 14時15分 (#4497943)

    っていう原理なのね。言語の判定以外にもいろいろ応用がききそうな…?

  • by Anonymous Coward on 2023年07月20日 15時39分 (#4497996)

    gzipとそれ以外で評価方法が違って、評価方法を揃えると順位落ちるって話や
    https://kenschutte.com/gzip-knn-paper/ [kenschutte.com]

    訓練用データとテスト用データに重複があるって話
    https://github.com/bazingagin/npc_gzip/issues/13 [github.com]

    があって、現状はいまいち。

    • by Anonymous Coward

      >訓練用データとテスト用データに重複があるって話
      こっちは今回のgzip手法の評価が不利な状況で良い評価出したってことでは?
      kNNは影響受けないけど事前学習必要なDNNは重複あったほうが有利になってるはずだから
      (自信ないから間違ってたらおしえてください)

      • by Anonymous Coward on 2023年07月20日 18時42分 (#4498139)

        極端なケースでテストデータと訓練データが同じなら1近傍で正解率100%になるし、この論文は2近傍(と言いつつTop-2)なので有利になってると思う。

        親コメント
        • by Anonymous Coward

          #4498077です
          確かにkNNも普通に影響受けますね
          何でこんな誤解したのか自分でもわからなくて恥ずかしい

          trainとtestが完全同一で2近傍だと2つのうち1つが確定で正解してますね
          kNNとDNNどっちのほうが有利な影響を受けてるかですが
          この状況だと直感的にはデータ構造が複雑であればあるほどkNNのほうがDNNに比べてアンフェアに有利になってしまう感じします

          直感だけど

          • by Anonymous Coward

            しかもkNNのほうだけ2-NNじゃなくてTop-2になってるならtrainとtestが完全同一なら
            正解率100%になるのでは?
            trainとtestの重複が指摘されてるOODのほうはkNN有利になる気がしますね

            • by Anonymous Coward

              https://github.com/bazingagin/npc_gzip/issues/3 [github.com]

              >3. This strategy is used for all non-parametric methods like W2V and SentenceBERT.
              と主張してるのでkNNだけTop-2になってるってのは違うっぽいのかな?

              何にせよTop-2だとtrainとtestの重複が無かったとしても、単純にリークになってるような気がします

typodupeerror

吾輩はリファレンスである。名前はまだ無い -- perlの中の人

読み込み中...