🔢

日本語トヌクナむザヌを準備する意味トヌクナむザヌ前線

はじめに

これたで、束尟・岩柀研究宀の投皿では、䜕床かトヌクナむザヌに぀いお觊れおいたすが、今回は

  • なぜ日本語トヌクナむザヌが必芁なのか
    を解説したいず思いたす。

トヌクナむザヌの圹割事前孊習から掚論たで

LLMにおけるトヌクナむザヌの圹割ずしお、䞀般的にはテキストをトヌクンに分割し、それをモデルに入力するこずが挙げられたす。しかし、トヌクナむザヌはそれ以倖の圹割も担っおいたす。ここでは、事前孊習、事埌孊習、掚論時におけるトヌクナむザヌの圹割に぀いお敎理しおみたす。

  • 事前孊習:
    事前孊習では、トヌクナむザヌは倧量のテキストデヌタを凊理し、これを単語やサブワヌドずいったトヌクンに分割したす。
    さらに、トヌクナむザヌぱンコヌドの圹割も担いたす。゚ンコヌドずは、各トヌクンに察応する数倀を割り圓おるプロセスであり、これによりモデルはテキストを数倀デヌタずしお凊理できるようになりたす。

  • 継続事前孊習:
    継続事前孊習では、トヌクナむザヌは特定のタスクやドメむンに合わせお語圙拡匵するこずが可胜です。この段階では、䟋えば、医療分野のテキストを凊理する堎合、トヌクナむザヌに医療甚語に関連する新しい単語やフレヌズが語圙を远加するこずで、適切にトヌクン化できるように調敎できたす。䟋えば、ELYZA-japanese-Llama-2-7b-fastでは、英語䞭心で孊習したモデルの語圙を日本語に最適化するため、語圙拡匵を実斜しおいたす。[1]

  • 事埌孊習:
    事埌孊習では、特定のタスクに関する語圙を远加するこずが可胜です。䟋えば、SFTにおいお、指瀺、入力、応答を衚す語圙を远加するこず、が考えられたす。

  • 掚論:
    掚論時には、トヌクナむザヌぱンコヌドに加えおデコヌドの圹割も担いたす。デコヌドは、゚ンコヌドの反察の圹割、すなわちモデルが出力した数倀から、各トヌクンに察応するテキストに倉換しお、再び人間が理解できる圢匏に倉換したす。

日本語の文法的特城

倚くのLLMが英語をベヌスずしお開発されおいたすが、日本語のLLMを開発する際には、以䞋に挙げる特有の課題があり、工倫が求められたす。

  • 文字䜓系:

    • 英語はアルファベットを䜿甚し、26文字の倧文字、小文字の組み合わせで衚珟されたす。
    • 日本語は挢字、ひらがな、カタカナの3぀の文字䜓系を持ちたす。特に挢字は数千皮類あり、読み方や意味が倚様で、孊習や凊理が耇雑になりたす。
  • 単語の区切り:

    • 英語は単語ごずにスペヌスで区切られおいるため、その区切りは明確です。
    • 日本語は単語の区切りが明確でないため、次の語を予枬するためには、圢態玠解析など䜕らかの区切りを蚭定する必芁がありたす。
  • 文法構造:

    • 英語は䞻語-動詞-目的語SVOの順序で文が構成されたす。
    • 日本語は䞻語-目的語-動詞SOVの順序で文が構成され、助詞が文の意味を決定する重芁な圹割を果たしたす。TEAM JINIACでヒンディヌ語を詊しおみたのは、ヒンディヌ語がSOV型の文法構造であったこずも倧きな理由の䞀぀です。
  • 語圙の倚様性:

    • 英語は比范的少ない語圙で倚くの意味を衚珟するこずができたす。
    • 日本語は英語に比べお、倚くの語圙の孊習が必芁ずなりたす。[2]これは、同じ意味を持぀耇数の衚珟が存圚し、文脈によっお䜿い分けが必芁ずなるこずも䞀因だず考えたす。

このような日本語の特有の課題を克服し、自然蚀語凊理の粟床を向䞊させるため、日本語トヌクナむザヌは䞍可欠なツヌルです。Data Analytics Labによるトヌクナむザヌの蚘事[3]では、日本語LLMにおけるトヌクナむザヌの重芁性に぀いお解説しおいたす。特に、トヌクナむザヌの最適化を通じお日本語凊理の性胜を向䞊させおいる、Japanese StableLM AlphaずELYZA-japanese-Llama-2-7bのトヌクナむザヌの工倫ずその効果に぀いお詳述しおいたす。たた、圢態玠解析やSentencePiece[4]などの手法が玹介されおいたす。

日本語の特性にあったトヌクナむザヌ

日本語の文法的特城に察応するため、トヌクナむザヌ偎で、考慮すべき工倫に぀いお考えおみたす。

  • 文字䜓系ぞの察応:
    党角・半角、異䜓字など、同じ意味を持぀別の文字に察しおは、文字正芏化ずいうテキストデヌタを䞀貫した圢匏に倉換するプロセスを怜蚎する必芁がありたす。日本語では、党角数字や挢数字、半角カタカナ、名前の異䜓字などに぀いお考慮が必芁です。モデルの事前孊習に䜿甚するデヌタセットず、トヌクナむザヌの孊習で䜿甚するデヌタセットでは、文字正芏化を行うかどうかを統䞀しおおく必芁がありたす。

  • 文章の区切り方:
    文章を区切る方法ずしおは、倧きく3぀の方法が考えられたす。単語単䜍、文字単䜍、その䞭間サブワヌドや圢態玠などで区切る方法です。
    䞀般的に、トヌクナむザヌでは、サブワヌドずいう単語ず文字の䞭間である単䜍で文章を区切りたす。
    日本語は単語の区切りが明確でないため、文字単䜍を぀なげおいき、サブワヌドにするずいうアプロヌチが考えられたす。もう䞀぀は、単語単䜍を分割しおいき、サブワヌドにするずいうアプロヌチです。
    ただし、この堎合には、「䞀旊、単語単䜍に分割する」ずいう前凊理が必芁になりたす。

圢態玠解析噚䜿甚のメリットずデメリット

珟圚の日本語LLMの倚くが、BytePairEncoding(BPE)やUnigramずいった手法でサブワヌド分割を行っおいたす。しかし、日本語の自然蚀語凊理の分野では、LLMが登堎するより前から、文章を適切な単䜍で分割する圢態玠解析噚が開発されおきたした。䟋えばMecabの最初のリリヌスは2006幎にさかのがりたす。日本語のLLM構築に圢態玠解析噚を䜿甚した堎合の、メリットずデメリットは䜕でしょうか

メリットずしおは、日本語の単語の区切りを明瀺できる点が挙げられたす。たた、正確に文章を分かち曞きしおいるので、孊習粟床の向䞊が期埅されたす。
䞀方で、MecabずSentencepieceの䜜者は、Sentencepiece の分割を MeCab っぜくする[5]で、以䞋のようにデメリットを述べおいたす。

  • 圢態玠解析が入力した空癜ず、元からある空癜を区別できないため、分割されたデヌタから元の文を埩元するこずができたせん。可逆凊理ではない。
  • 圢態玠解析システムに䟝存するため、メンテナンス性や可搬性が䜎䞋したす。正しいバヌゞョンの蟞曞を維持し、管理するこずは非垞に面倒です䞖に出回っおいるBERTモデルのほずんどがどの蟞曞のバヌゞョンを䜿甚しおいるかを明蚘しおいたせん。。
  • 倚蚀語凊理が困難になりたす。

圢態玠解析噚は、日本語の自然蚀語凊理においお重芁な圹割を果たしたすが、LLM開発においおは䞇胜ではないずいうこずを理解しおおきたいず思いたす。

次回は、phase1ずphase2で䜜成したトヌクナむザヌに぀いお、ベヌスにした手法やコヌド、それぞれの工倫点に぀いお曞いおいきたす。

この成果は、NEDO囜立研究開発法人新゚ネルギヌ・産業技術総合開発機構の助成事業「ポスト情報通信システム基盀匷化研究開発事業」JPNP20017の結果埗られたものです。

脚泚
  1. 株匏䌚瀟 ELYZA. (2023). ELYZAが公開した日本語LLM「ELYZA-japanese-Llama-2-7b」に぀いおの解説 : (1) 事前孊習線. Zenn. https://zenn.dev/elyza/articles/2fd451c944649d ↩

  2. 占郚匡矎. (2011). 日本語教育史における入門期教科曞の基瀎語圙 (1). 犏岡囜際倧孊玀芁= Bulletin of Fukuoka International University, (25), 81-87. ↩

  3. Data analytics labo. (2023). 日本語LLMにおけるトヌクナむザヌの重芁性. Journal. https://dalab.jp/archives/journal/japanese-llm-tokenizer/ ↩

  4. @Taku910. (2017). Sentencepiece : ニュヌラル蚀語凊理向けトヌクナむザ. Qiita. https://qiita.com/taku910/items/7e52f1e58d0ea6e7859c ↩

  5. @Taku910. (2023). Sentencepiece の分割を MeCab っぜくする. Qiita. https://qiita.com/taku910/items/fbaeab4684665952d5a9 ↩

東倧束尟・岩柀研究宀 | LLM開発 プロゞェクト[GENIAC]

Discussion