本記事にはアフィリエイト広告(Amazon アソシエイト)が含まれます。
実測日: Tue Nov 03 2026 09:00:00 GMT+0900 (Japan Standard Time)
2026 年 11 月 3 日に測定。数値は各条件 1 回の測定です。
まとめ
- RADXA 製 Fogwise AirBox Q900(Qualcomm IQ-9075)で、音声認識モデル SenseVoiceSmall に日本語 100 文を認識させ、CPU・NPU(Hexagon)・M5Stack 製の増設 AI カード LLM8850 の 3 通りで、速さ(RTF)と精度(CER / WER)を同じ物差しで比べました。
- NPU は CPU の約 3 倍速く(RTF 0.033 対 0.081〜0.097)、精度は CPU と同じでした。
- LLM8850 はさらに少し速い(RTF 0.029)一方、今回の条件では誤りが CPU・NPU の約 2 倍でした(文ごとの平均 CER 0.044 対 0.024〜0.025)。
- GPU(Adreno 663)は、今回の Linux ドライバーの組み合わせでは認識結果が壊れ、評価できませんでした。
RTF は「処理時間 ÷ 音声の長さ」です。0.033 は、10 秒の音声を約 0.33 秒で認識できることを意味します。
測定の条件
機器
| 項目 | 内容 |
|---|---|
| 本体 | RADXA 製 Fogwise AirBox Q900(Qualcomm IQ-9075、CPU は Cortex-A78C 8 コア、GPU は Adreno 663、NPU は Hexagon) |
| 増設カード | M5Stack 製 LLM8850(M.2 の AI アクセラレーター) |
| 台数 | Fogwise AirBox Q900 を 2 台。CPU と NPU は 2 台とも測定 |
比べた経路
| 経路 | 内容 |
|---|---|
| CPU | SenseVoiceSmall の GGUF 版(Q8 と f16)を llama.cpp 系の実行環境で CPU 8 スレッドで実行 |
| NPU | 同じ GGUF 版を llama.cpp の Hexagon バックエンドで実行。モデルの全演算が NPU 上で動作 |
| LLM8850 | LLM8850 向けに変換済みの SenseVoice を、カードの実行環境で実行 |
| GPU | 同じ GGUF 版を Vulkan で実行(評価できず) |
評価データと指標
- 評価データは、命令・あいさつ・日時・金額・電話番号・固有名詞などを含む日本語 100 文(3〜20 秒、合計約 15 分)の自作セットです。音声は音声合成で作った女声で、人の自然な発話や雑音のある録音ではないため、実運用より良い値が出やすい点に注意してください。評価データそのものは公開していません。
- CER(文字誤り率): 主な指標。表記の正規化と句読点・空白の除去のあと、文字単位で数えます。
- WER(単語誤り率): 正解と認識結果を形態素解析で単語に分けてから数えます。
- それぞれ「全体をまとめた値」と「文ごとの値の平均」を示します。
- RTF(処理): モデル読み込み後の、音声の読み込み・特徴量計算・推論・復号の時間 ÷ 音声長。
- RTF(起動込み): 1 文ごとにプログラムを起動し直し、モデル読み込みも含めた時間 ÷ 音声長(常駐させない使い方の目安)。
結果
| 経路 | RTF(処理) | RTF(起動込み) | CER(全体) | CER(文平均) | WER(全体) | WER(文平均) | 完全一致 |
|---|---|---|---|---|---|---|---|
| CPU・Q8 | 0.096〜0.097 | 0.120 | 0.0192 | 0.0250 | 0.0298 | 0.0386 | 60/100 |
| CPU・f16 | 0.081 | 0.122 | 0.0195 | 0.0237 | 0.0314 | 0.0364 | 61/100 |
| NPU・Q8 | 0.034 | 0.064 | 0.0192 | 0.0250 | 0.0306 | 0.0389 | 61/100 |
| NPU・f16 | 0.033 | 0.071 | 0.0195 | 0.0237 | 0.0314 | 0.0364 | 61/100 |
| LLM8850 | 0.029 | 0.029(常駐) | 0.0416 | 0.0437 | 0.0526 | 0.0515 | 53/100 |
| GPU | — | — | 評価不能 |
CPU と NPU は 2 台でほぼ同じ値でした(差は RTF で 0.001 程度)。
読み取れること
- NPU で約 3 倍速く、精度は変わらない。 NPU 部分の計算だけなら、4.4 秒の音声 1 文あたり約 120 ms です。CPU と NPU で認識結果の文字列が異なったのは f16 版で 2 文(空白の位置だけ)、Q8 版で 9 文で、Q8 版でも文字が変わったのは 2 文(1 文は NPU のほうが正しく、1 文は NPU のほうが誤り)でした。NPU の結果は 2 台で完全に一致しました。
- CPU では f16 版のほうが Q8 版より速い。 Q8 は計算のたびに重みを戻す処理が入るためと考えられます。NPU ではほぼ同じ速さでした。
- LLM8850 は速いが、今回の条件では誤りが多い。 モデルの変換方法(量子化)と前後処理の実装が異なるためと考えられ、ハードウェアそのものの優劣を示すものではありません。
- 誤りの多くは表記の揺れと同音語。 例: 「千五百円」→「1500 円」、「三個」→「参個」、「貴社の記者が汽車で帰社しました」。数字の表記をそろえれば CER はさらに下がります。
つまずいた点
- GPU: 計算は 0.5〜1.2 秒で終わるものの、出力が毎回異なる意味のない文字列になりました。精度に関わる設定を変えても直らず、今回のオープンソースの GPU ドライバーとの組み合わせの問題とみています。
- NPU の安定性: 1 台では、1 文ごとに NPU の利用を開始し直す測り方を長く続けたところで、NPU 側の異常終了と応答なしがそれぞれ 1 回ありました。もう 1 台では 200 回とも問題ありませんでした。実運用では NPU を常駐させる形にし、長時間の連続試験で確かめる予定です。
今後
- 雑音・電話帯域・実録音での比較
- NPU を常駐させた形での速さと長時間の安定性
- 他社の NPU(Hailo-10H / Hailo-8)との比較(別途測定中)
この記事で扱った機材
ASUS UGen300(Hailo-10H USB AI アクセラレータ)
Hailo-10H を USB 3.1 Gen2 で外付けにした製品。8 GB の LPDDR4 を載せる。本サイトの Hailo-10H の実測はすべてこの個体で行った。