IT & AIテクノロジー

[AI数理]徹底的に交差エントロピー(1)

AI数理

[AI数理]徹底的に交差エントロピー(1)

おはようございます!(株) Qualiteg 研究部です。 今日からは交差エントロピーについて、徹底的に学んでいきたいとおもいます。 交差エントロピー関数の式は2つあるの? 本シリーズではは、機械学習で分類問題の損失関数としてよく使用される交差エントロピー関数をとりあげます。 実はこれまで学んできた 指数関数や対数関数の微分法は、この交差エントロピー関数を深く理解するためのものでした。 交差エントロピーがどのような性質をもっていて、どのように導かれていくのかを理解するのは今後のLLMの仕組み解明でも大いに役立つのでしっかりみていきたいとおもいます! さて、さっそくですが、 下の \((1)\) は 交差エントロピー関数 です $$ \ - \frac{1}{N} \sum_{i}^{N} \sum_{k}^{K} t_{ik} \log y_{ik} \tag{1} $$ 下の \((2)\) も、 交差エントロピー関数 です。 $$ \ - \frac{1}{N} \sum_{i}

By Qualiteg 研究部
逐次生成されるトークンのバッファリング

日々の開発Tips

逐次生成されるトークンのバッファリング

こんにちは! (株)Qualiteg プロダクト開発部 です! 今日は、推論シーンでよくある、トークン細切れ問題に対処する方法をご紹介します。 ストリーミングチャットで使用する逐次生成のとき、文章は1トークンずつ生成されますが、1トークンは”単語単位”でもなければ”1文字”単位でもなく、学習時使われていたトークナイザーの処理に依存します。 一般的には 形態素解析→サブワード→語彙リスト構築 を行いますが、このとき、後で文章生成するときに重要なタグ、たとえば "<NL>" というタグが重要な意味をもつにもかかわらず、細切れにされてトークナイズされてしまうことがあります。たとえば、 "<" "N" "L>" のように粉砕されてしまうようなパターンです。 (これを避ける方法はあるのですが、今回は、学習済のモデルをあからじめ与えられた状態でどうするか、を考えます) こういうパターンが発生してしまったとき逐次生成で "

By Qualiteg プロダクト開発部
[自作日記10] マザーボードにCPU、メモリ、SSDを装着する

GPUマシン自作

[自作日記10] マザーボードにCPU、メモリ、SSDを装着する

マザーボードまわりをセットアップしていきます 1.マザーボード 開封の儀 今回購入したマザーボードは 【ASRock Z690 Steel Legend WiFi 6E/D5】です。 早速開封していきましょう! 箱をあけると、ケーブル類とマニュアル類が上段の小箱にはいっています。 つぎに、中箱をあけます。 おーマザーボードが見えてきました 美しい! ワクワクしてきました~ 写真左側中央部は LGA 1700 ソケットにカバーがかかった状態です。ここにCPUを設置します。 また LGA 1700 ソケットの上側にはメモリモジュールを挿入する DDR5 のメモリスロット4つがみえます。 そして水平中央付近に SSD を設置する M.2 スロットがあります。(写真ではヒートシンクがありますが、その下にスロットがあります) そこからやや右側にグラボを挿す PCI Express x16 スロットがあります。 ざっとこんな感じで主要部品を設置していきましょう。 2.マザーボードの配線図はあらかじめ印刷しておくと便利 付属のマニュアルに配線図がついている

By Qualiteg Boot Camp
[AI数理]対数関数の微分法・後編

AI数理

[AI数理]対数関数の微分法・後編

おはようございます!(株) Qualiteg 研究部です。 本日は対数関数の微分法の後編です! 今回で、対数関数の微分法をマスターしましょう! 2. 対数関数の公式 まず、対数関数の公式をおさえておきます。あとで対数関数の微分法の導出で使用します \(a^{0} = 1\) 、つまり \(a\) を \(0\) 乗すると \(1\) となるため $$ \log_a 1 = 0 \tag{2.1} $$ \(a^{1} = a\) 、つまり \(a\) を \(1\) 乗すると \(a\) となるため $$ \log_a a = 1 \tag{2.2} $$ 積の対数 $$ \log_a (X

By Qualiteg 研究部
[自作日記9] AI研究用GPUマシンパーツと組み立て開始!

GPUマシン自作

[自作日記9] AI研究用GPUマシンパーツと組み立て開始!

昨日、秋葉原で合計41.5万円分のGPUマシンのパーツを購入してきましたのでご報告します! GPUマシンパーツ * マザーボード: ASRock Z690 Steel Legend 約4万円 * メモリ: Crucial デスクトップ用 DDR5 32G x 2 = 約3万円 * CPU: Intel Core i7 12700 約5万円 * GPU:MSI SUPRIM X GeForce RTX 3090 Ti 約20万円 * SSD:SAMSUNG 980 PRO 2T 約3万円 * 電源:850W OWLTECH PC電源 850W /ATX /Titanium 約4.5万円 * ケース:Fractal

By Qualiteg Boot Camp
[ChatStream] rinna/nekomata-14b-instruction 用の ChatPromptクラス

ChatStream Guide

[ChatStream] rinna/nekomata-14b-instruction 用の ChatPromptクラス

2023/12/21 に発表された rinna/nekomata-14b-instruction 用の ChatPrompt をご紹介します nekomataシリーズは Qwen をベースモデルしているおり、語彙サイズが 15.2万とこれまでより大幅に大きいため、日本語対応にもおおいに期待できそうですね 今回はInstructionチューニングされたモデルをChatStreamのチャットモードで利用するためのChatPromptを作りました。 設計思想としましては、あるタスクとChatPrompt を対応させる、という考え方です。簡単にいうと、1つのChatPromptは1つの仕事に特化させる、というところでしょうか。 たとえば、今回は、「翻訳」というタスクに特化した ChatPrompt の例です。 これにより 翻訳 というタスクに対して、 「入力」と「出力」というをチャットインタフェースを通して行います。 from chatstream import AbstractChatPrompt from chatstream.chat_prompt.prompt_ttl im

By Qualiteg プロダクト開発部
[自作日記8] 電源、SSD、ケースは?

GPUマシン自作

[自作日記8] 電源、SSD、ケースは?

今日は電源、SSD、ケースの購入です! Junです。 残りは電源とSSD、ケースをゲットすれば一通り揃いそうです。 また、置手紙をみてみます。 ⑥ SSD は 1T以上。 ⑦ 電源は 800W 以上、 80Plus Titanium ⑧ ケースはグラボがちゃんと入ることを確認すること! SSDの選定 SSDは、1T以上ということで、 3万円の SAMSUNG 980 PRO 2T を購入。 電源の選定 電源装置は 800W 以上ということで 850W OWLTECH PC電源 850W /ATX /Titanium PRIMETX850S を 4.5万円で購入しました。 ケースの選定 さて、残るはケースです。 ⑧ ケースはグラボがちゃんと入ることを確認すること! この意味がよくわからなかったので、店員さんに相談することにしました。 今回は ATX サイズのケースを購入する予定ですが、 ATX

By Qualiteg Boot Camp
[AI数理]対数関数の微分法・前編

AI数理

[AI数理]対数関数の微分法・前編

おはようございます!(株) Qualiteg 研究部です。 本日から2回にわたって対数関数について学んでいきましょう。 正確にいうと、対数関数の微分法を学びます。 対数関数って何だっけ? まず、対数関数というのは、「ある数 \( x \) が別の数 \( b \) を何回かけると \( x \) になるか」を調べる方法です。例えば、\( b \) が 2 で \( x \) が 8 の場合、2 を 3 回かけると 8 になります。この場合、数学的には「\( b \) の \( x \) に対する対数」と言います。 これを数式で表すと、次のようになります: $$ \log_b(x) = y $$ ここで \( b \) は底(

By Qualiteg 研究部
[自作日記7’] コラム:コンシューマ用GPUとプロ用GPUの違い

GPUマシン自作

[自作日記7’] コラム:コンシューマ用GPUとプロ用GPUの違い

今回は、コンシューマー用GPUは本格的なAI計算に使用できるのか、プロ用GPUとの違いは何か。比較も交えながら考えてみたいと思います。 私たちAI ベンチャー(ベンチャーじゃなくても)でGPUを使うシーンは3つあります。 1. AI研究:最新モデルや論文のちょっとしたお試し 小規模な学習。小規模な推論。 2. 学習:いわゆるディープラーニングのトレーニング。 長いと数週間、数か月におよぶ。 3. 商用運用:お客様が使用するサービスのバックエンドとしての AIエンジンの商用運用 今回 Jun さんが作ろうとしている GPU マシンは 1.AI研究 のためのものです。 というのも、たとえば、コンシューマー用GPUやコンシューマー用の自作パソコンの場合は長時間にわたるディープラーニングのトレーニングには向いていません。 やってる人もたまにみかけますが、心配になります。 なぜなら、学習させたいネットワークにもよりますが、1回の学習にかかる時間は数日から数週間、長いと数か月にわたります。その間、GPUをドライブするソフトウェアが安定

By Qualiteg Boot Camp
[AI数理] 指数関数

AI数理

[AI数理] 指数関数

おはようございます!(株) Qualiteg 研究部です。本日は指数関数を学びましょう。 対数関数の微分公式の導出でお役立ちなので、今回の出番となりました。 指数関数とは 指数関数は、繰り返しの掛け算を表す数学の式です。例えば、「2を3回掛ける」を考えると、これは \(2 \times 2 \times 2\) となり、結果は \(8\) です。数学的には、これを \(2^3 = 8\) と表現します。ここで \(2^3\) の形が指数関数であり、「 \(2\) 」が底、「\(3\)」が指数です。 指数関数は多くの自然現象や科学技術で見られる現象を表すのに非常に重要です。例えば、銀行の複利計算や細菌の増殖など、時間とともに増加する速度が速くなるような現象です。 指数関数はまた、数学において他の多くの概念や公式の基礎ともなっています。特に、対数関数の微分公式の導出には指数関数が不可欠です。対数関数の微分は、対数関数のグラフの傾きを求める計算方法です。この微分公式を理解するためには、指数関数の性質が重要です。 指数関数の重要な性質の一つに、

By Qualiteg 研究部
[自作日記7] AI用GPUの選定

GPUマシン自作

[自作日記7] AI用GPUの選定

今回は、AIに適したグラフィックボード(GPU)の選定をします。 本編に行く前に、グラフィックボードとGPUの違いについて整理しておきましょう グラフィックボードは、コンピューターで画像処理やAIの計算を担当する重要なハードウェアで パソコンのPCI Express のスロットに挿入して使用するのが一般的です。 一方 GPU はグラフィックボードの主要な構成要素の1つで、グラフィックボードは以下のようなコンポーネントで構成されています。 1. GPUチップ - グラフィック処理の中心で、複雑な数学的計算を高速に実行します。 2. VRAM(ビデオRAM) - GPUが直接アクセスする専用メモリで、ディープラーニングでは、パラメータ(重みやバイアス)や計算過程を保持する役割があり非常に高速に動作します。 3. 冷却システム - GPUが生成する熱を効果的に放散するためのファンやヒートシンク。 グラフィックボードとGPUを同一視して書いている記事も多く、私たちもあまり厳密に分けて書いていないですが、実体としては↑のような感じですね。 さて、それでは Jun さんの買い物の

By Qualiteg Boot Camp
[自作日記6] メモリ選定

GPUマシン自作

[自作日記6] メモリ選定

今回は、メモリや周辺パーツを選定しましょう。 メモリ選定にも落とし穴があり、Junさんは見事落とし穴にハマってしまいました。さっそくみていきましょう。 ふー。やっとCPUとマザーボードが買えました。 あと何を買えばいいんだっけ。ということで、もう一度、先輩の置手紙をみてみます ① CPUは 12世代か13世代のどちらでもよい。 ② GPU中心でつかうため、CPU側の能力は i5程度で問題ない。 ③ マザーボードのチップセットは CPUが12世代ならZ690 か CPUが13世代ならZ790。ATX。 ④ CPUメモリは 64GB 以上。DDR4でもDDR5でもどちらでもOK ⑤ グラボはコンシューマー向けでOKだけど、最上位モデルに近いもの。 ⑥ SSD は 1T以上。 ⑦ 電源は 800W 以上、 80Plus Titanium ⑧ ケースはグラボがちゃんと入ることを確認すること! ①~③までは無事かえましたので、あとはメモリ、グラボ、SSD、電源、ケースを買わないといけません。まだまだ、買い物ありますね。 おなかもすいてきたので、CP

By Qualiteg Boot Camp
AI数理は Minecraftの夢を見る?

AI数理

AI数理は Minecraftの夢を見る?

みなさまこんにちは、(株) Qualiteg 研究部です。 LLM関連の論文を読んでいると、なぞの数式、なぞの記号がたくさんでてきて、めまいがすることはないでしょうか? 私も学生時代ニューラルネットを研究していましたが、それを理解するための数学的背景がミルフィーユのように多層になっており、面食らった記憶があります。 現代のLLMは、パーセプトロンや初期のニューラルネットの研究にくらべると、いや、分析系のディープラーニングベースAIの頃からみてもミルフィーユの層が10倍くらい厚く、LLMの仕組みを数学的に理解するには、その何重、何百という数学的理論基盤を理解しなければいけません。 (LLMを利用するだけなら、ミルフィーユをまるごと食べて「おいし~」って言っている状態ですが、じゃあ、その多層(の数理)になったミルフィーユを1層ずつ理解しながら作っていくのは食べるのにくらべてどれだけ大変か、ですね。) このように、LLMの実現には、機械学習の基礎編としての確率統計の話や、クラシックな機械学習の理論から、ディープラーニングで使う微分や離散化、RNN,LSTMなどを経てそこからトラ

By Qualiteg 研究部
[自作日記5] マザーボードはどれがいい?

GPUマシン自作

[自作日記5] マザーボードはどれがいい?

今回は、マザーボードの選定をします。 Junさんの買い物の続きをみるまえにもう一度チップセットについておさらいしておきましょう。 インテルの CoreシリーズCPUは 12世代、13世代ともに、CPUソケットが LGA 1700 となっており、多くの場合、12世代用のチップセットは13世代のCPUとも互換性がありますが、最新の機能や最適な性能を得るには、対応する世代のチップセットを使用することが推奨されます。 たとえば、12世代のインテルCoreシリーズCPU用に設計されている チップセットには以下のようなものがありますが、AI用途であればGPUを使いますので、Z690,H670のようなハイエンドチップセットを選ぶのが安全でしょう。 * Z690: 高性能チップセットで、オーバークロッキングサポート、PCIe 5.0 x16スロット、多数のPCIe 4.0レーン、高速なUSB 3.2 Gen 2x2接続、および高速ストレージのための複数のM.2スロットが提供されています。 * H670: オーバークロッキングはサポートしていませんが、それ以外の機能はZ690に近いチップセッ

By Qualiteg Boot Camp
[自作日記4] いざ秋葉原! CPU選び

GPUマシン自作

[自作日記4] いざ秋葉原! CPU選び

こんにちは、さっそく自作PCを作っていきましょう。 ここでは、Qualitegの若手社員 Jun さんにご登場いただき、GPUマシン自作体験記を赤裸々に語っていただくストーリーとして進めていきます! Junです。ソフトウェアエンジニアです。 ある日、出社すると、席に1枚の封筒がおいてありました。 なんだこれ? 開いて見ると、中に便箋がはいっており、 今時手書きで、しかも太めのマッキーで、こんなことが書いてありました。 Junさんへ、 Qualiteg へようこそ! 当社ではメンバーは必ず1台はGPUマシンを自作するのが掟(おきて)となっています。 そこの封筒に45万円ありますので、これをもって秋葉原に行ってパソコンのパーツを買ってきてください。 以下にヒントを書いておきますので、よろしくおねがいします。 ① CPUは 12世代か13世代のどちらでもよい。 ② GPU中心でつかうため、CPU側の能力は i5程度で問題ない。 ③ マザーボードのチップセットは CPUが12世代ならZ690 か CPUが13世代ならZ790。ATX。 ④ CPUメ

By Qualiteg Boot Camp
[自作日記3] グラボ2枚挿しの夢

GPUマシン自作

[自作日記3] グラボ2枚挿しの夢

こんにちは! 今日の話題はレーン分割とグラボ2枚挿しについてです。 前回みてきたとおり、インテル Core シリーズCPUでは、CPUから接続されるPCI Express は PCIe gen5 で x 16(16レーン分)使えました。 PCIe gen5 は非常に高速で、そのレーンを16レーン使えるので、実質的にこの PCIe gen5 x 16 がグラフィックボード(GPU)用です。 実はマザーボードによっては、 PCIe gen5 x16 を2分割して使えるものがあります。 さて、ここで、もう1回、 z690 チップセットのブロック図をみてみましょう。 この左上の↓ですが、2つのボックスがあり、それの中間にORとかいてあります。 これは、「以下の2つのパターンのうち、どちらかを選択することができるよ」という意味になります 1. 1x16

By Qualiteg Boot Camp