OpenAIを退社して無職だったカルパシー氏が大規模モデルを使った新プロジェクトに取り組み、1日で星の数が1000を突破

OpenAIを退社して無職だったカルパシー氏が大規模モデルを使った新プロジェクトに取り組み、1日で星の数が1000を突破

じっとしていられないアンドレイ・カルパティに新しいプロジェクトが!

OpenAIはここ数日、非常に忙しい。まずAI界の巨人、アンドレイ・カルパシー氏が正式に辞任を発表し、その後、動画生成モデルSoraがAI界を揺るがした。

カルパシー氏はOpenAIからの退社を発表した後、「今週は休暇を取る」とツイートした。

画像出典: https://twitter.com/karpathy/status/1757986972512239665

この何もすることがない状態は、マスク氏も羨むほどです(私も羨ましいです)。

しかし、もし本当にカルパシーが怠惰になると考えているなら、あなたは少し「若すぎるし、海軍すぎる」のです。

現在、鋭い目を持つネットユーザーが、Karpathy 氏の新しいプロジェクトminbpe を発見しました。これは、LLM 単語分割で一般的に使用される BPE (バイトペアエンコーディング) アルゴリズム用の最小限かつクリーンで教育的なコードを作成することに専念しています

わずか 1 日で、プロジェクトの GitHub スターが 1.2k に達しました。

画像出典: https://twitter.com/ZainHasan6/status/1758727767204495367

誰かが、カルパシーがみんなのために「豪華な食事を作った」ことを示すために写真をフォトショップで加工した。

画像出典: https://twitter.com/andrewcyu/status/1758897928385561069

カルパティが戻ってきたと歓声を上げる人もいた。

画像出典: https://twitter.com/fouriergalois/status/1758775281391677477

「minbpe」プロジェクトが具体的に何について語っているのか見てみましょう。

プロジェクト紹介

GitHub アドレス: https://github.com/karpathy/minbpe

BPE アルゴリズムは「バイトレベル」であり、UTF-8 でエンコードされた文字列で動作することがわかっています。このアルゴリズムは、GPT-2 論文と GPT-2 関連コードを通じて、大規模言語モデル (LLM) で一般化されました。

現在、すべての最新の LLM (GPT、Llama、Mistral など) は、トークナイザーのトレーニングに BPE アルゴリズムを使用しています。

Karpathy の minbpe プロジェクト リポジトリには 2 つのトークナイザーが用意されており、どちらもトークナイザーの 3 つの主な機能 (1) トークナイザー語彙のトレーニングと指定されたテキストとのマージ、2) テキストからトークンへのエンコード、3) トークンからテキストへのデコードを実行できます。

詳細なリポジトリ ファイルは次のとおりです。

  • minbpe/base.py: 基本クラスである Tokenizer クラスを実装します。トレーニング、エンコードおよびデコードのスタブ、保存/読み込み関数、およびいくつかの一般的なユーティリティ関数が含まれています。ただし、このクラスは直接使用することを意図したものではなく、継承することを意図したものです。
  • minbpe/basic.py: テキストを直接操作する BPE アルゴリズムの最も単純な実装である BasicTokenizer を実装します。
  • minbpe/regex.py: 正規表現パターンによって入力テキストをさらに分割する RegexTokenizer を実装します。前処理段階として、トークン化の前に入力テキストをカテゴリ (文字、数字、句読点など) 別に分割します。これにより、クラス境界を越えたマージが発生しなくなります。これは GPT-2 の論文で導入され、GPT-4 でも引き続き使用されています。
  • minbpe/gpt4.py: GPT4Tokenizer を実装します。このクラスは RegexTokenizer の軽量ラッパーであり、tiktoken (OpenAI オープンソース単語分割アーティファクト) ライブラリの GPT-4 の単語分割を正確に再現します。ラッパーは、リカバリ トークナイザーでの正確なマージに関する詳細を処理し、1 バイトのトークンの順列を処理します。パリティ チェックはまだ完全には完了しておらず、特殊なトークンは処理されないことに注意してください。

スクリプト train.py は、入力テキスト tests/taylorswift.txt で 2 つの主要なトークナイザーをトレーニングし、視覚化のために語彙をディスクに保存します。 Karpathy 氏は、このスクリプトを MacBook (M1) で実行すると約 25 秒かかると述べました。

カルパシー氏はまた、すべての文書が非常に短く、よく注釈が付けられており、使用例も含まれていると述べた。以下は、BPE の Wikipedia 記事からの再現例です。

 from minbpe import BasicTokenizer tokenizer = BasicTokenizer()text = "aaabdaaabac" tokenizer.train(text, 256 + 3) # 256 are the byte tokens, then do 3 merges print(tokenizer.encode(text))# [258, 100, 258, 97, 99] print(tokenizer.decode([258, 100, 258, 97, 99]))# aaabdaaabac tokenizer.save("toy")# writes two files: toy.model (for loading) and toy.vocab (for viewing)

また、GPT4Tokenizer の実装方法と Tiktoken との比較についても説明します。

 text = "hello123!!!? (안녕하세요!) 😉" # tiktoken import tiktoken enc = tiktoken.get_encoding("cl100k_base")print(enc.encode(text))# [15339, 4513, 12340, 30, 320, 31495, 230, 75265, 243, 92245, 16715, 57037] # ours from minbpe import GPT4Tokenizer tokenizer = GPT4Tokenizer()print(tokenizer.encode(text))# [15339, 4513, 12340, 30, 320, 31495, 230, 75265, 243, 92245, 16715, 57037]

もちろん、Karpathy 氏は GitHub プロジェクトを立ち上げるだけでは満足せず、ビデオもすぐに公開する予定だと述べています。

<<: 

>>:  AIシミュレーターが物理シミュレーションで新たなSOTAを達成!

ブログ    
ブログ    

推薦する

機械学習は株式市場を正確に予測できるのでしょうか?

株式市場が始まって以来、人々はシステムを悪用し、市場に勝とうとしてきました。長年にわたり、人々は何千...

...

...

最新のMLPerfランキング:アリババのAIコンピューティングパワーが多くの分野で1位を獲得

4月7日、権威あるAIベンチマーク評価組織MLPerfが最新の推論パフォーマンスリストを公開した。 ...

ジェフ・ディーンの長文記事の展望: 2021 年以降の機械学習の 5 つの潜在的トレンド

過去数年間、機械学習 (ML) とコンピュータサイエンスの分野では多くの変化が見られました。この長い...

スタンフォードNLPコースXCS224Uのビデオが公開されました。実用的な情報が満載です。ぜひ聞いてください。

会話エージェントから検索クエリまで、自然言語理解 (NLP) は今日の最もエキサイティングなテクノロ...

...

...

自然言語処理: 人工知能の重要な要素

自然言語処理 (NLP) により、コンピューターは人間の言語のニュアンスを理解できるようになります。...

ユビキタス「AI+」人工知能はこのように私たちの生活を変える

人工知能(略して AI)は、コンピュータサイエンスの重要な分野として、1956 年にダートマス協会で...

...

Facebookは、数億のノードでタスクを迅速に完了できる大規模なグラフ埋め込みアルゴリズムをオープンソース化しました。

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...

Google X、手作業でラベル付けすることなく一目で対象部品を見つけられるグリッパーアームをオープンソース化

この記事はAI新メディアQuantum Bit(公開アカウントID:QbitAI)より許可を得て転載...