TECHNOLOGY NLP AI

【日本語訳】The Bitter Lesson【苦い教訓】【Rich Sutton】

2023年6月2日

悩んでいる人

Rich Suttonの「The Bitter Lesson」の日本語訳を教えて!

こういった悩みにお答えします.

本記事の信頼性

  • リアルタイムシステムの研究歴12年.
  • 東大教員の時に,英語でOS(Linuxカーネル)の授業.
  • 2012年9月~2013年8月にアメリカのノースカロライナ大学チャペルヒル校(UNC)コンピュータサイエンス学部で客員研究員として勤務.C言語でリアルタイムLinuxの研究開発.
  • プログラミング歴15年以上,習得している言語: C/C++PythonSolidity/Vyper,Java,Ruby,Go,Rust,D,HTML/CSS/JS/PHP,MATLAB,Assembler (x64,ARM).
  • 東大教員の時に,C++言語で開発した「LLVMコンパイラの拡張」,C言語で開発した独自のリアルタイムOS「Mcube Kernel」GitHubにオープンソースとして公開
  • 2020年1月~現在はアメリカのノースカロライナ州チャペルヒルにあるGuarantee Happiness LLCのCTOとしてECサイト開発やWeb/SNSマーケティングの業務.2022年6月~現在はアメリカのノースカロライナ州チャペルヒルにあるJapanese Tar Heel, Inc.のCEO兼CTO.
  • 最近は自然言語処理AIイーサリアムに関する有益な情報発信に従事.
    • (AI全般を含む)自然言語処理AIの論文の日本語訳や,AIチャットボット(ChatGPT,Auto-GPT,Gemini(旧Bard)など)の記事を50本以上執筆.アメリカのサンフランシスコ(広義のシリコンバレー)の会社でプロンプトエンジニア・マネージャー・Quality Assurance(QA)の業務委託の経験あり.
    • (スマートコントラクトのプログラミングを含む)イーサリアムや仮想通貨全般の記事を200本以上執筆.イギリスのロンドンの会社で仮想通貨の英語の記事を日本語に翻訳する業務委託の経験あり.

こういった私から学べます.

AIのプログラミング言語「C++/Python言語」を学べるおすすめのWebサイトを知りたいあなたはこちらからどうぞ.

独学が難しいあなたは,AIを学べるオンラインプログラミングスクール3社で自分に合うスクールを見つけましょう.後悔はさせません!

国内・海外のAIエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

国内・海外のプロンプトエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

2019年3月13日に公開されたRich Sutton「The Bitter Lesson」(苦い教訓)の日本語訳を紹介します.

AIは計算性能の向上がブレークスルーの要因だとわかります.

※内容の著作権はRich Suttonに帰属します.

また,The Bitter Lessonに続く以下の記事の日本語訳も紹介します.

それでは,The Bitter Lesson,A Bitter Lesson,Do we still need models or just more data and compute?の本文を読みすすめましょう!

Rich Suttonの「The Bitter Lesson」の日本語訳

70年にわたるAI研究から読み取れる最大の教訓は,計算を活用した一般的な手法が最終的に最も効果的であり,その差は歴然としているということである.

その究極の理由は,ムーアの法則,つまり,単位計算量あたりのコストが指数関数的に低下し続けるという汎化である.

ほとんどのAI研究は,エージェントが利用できる計算量が一定であるかのように行われてきた(その場合,人間の知識を活用することが性能を向上させる唯一の方法となる).

しかし,通常の研究プロジェクトよりも少し長い時間をかけて,必然的に大量の計算量が利用可能となる.

研究者は,短期的に違いをもたらす改善を求めて,ドメインに関する人間の知識を活用しようとするが,長期的に重要なのは,計算の活用だけである.

この2つは互いに相反するものである必要はないが,実際にはそうなりがちである.

一方に費やす時間は,他方に費やす時間ではない.

どちらかのアプローチに投資しようとする心理的なコミットメントがある.

また,人間の知識によるアプローチは,計算を活用した一般的な手法の活用に向かないような形で手法を複雑にする傾向がある.

AI研究者がこの苦い教訓を遅ればせながら学んだ例は数多くあり,その中でも最も顕著なものをいくつか振り返ってみると参考になる.

コンピュータチェスにおいて,1997年に世界王者カスパロフを破った手法は,大規模な深層探索に基づくものであった.

当時,チェスの特殊構造に対する人間の理解を生かした手法を追求してきたコンピュータチェスの研究者の大多数は,これを呆れ顔で見ていた.

特殊なハードウェアとソフトウェアによる,よりシンプルな検索ベースのアプローチが圧倒的に効果的であることが証明されたとき,これらの人間の知識をベースとしたチェス研究者は,良い敗者にはならなかった.

彼らは,「ブルートフォース」検索が今回は勝ったかもしれないが,それは一般的な戦略ではないし,とにかくそれは人々がチェスをする方法ではなかったと言った.

これらの研究者は,人間の入力に基づく方法が勝つことを望み,そうでなかったときに失望した.

コンピュータ囲碁でも同様の研究進展パターンが見られたが,さらに20年遅れている.

当初は,人間の知識やゲームの特殊性を利用して探索を回避することに多大な努力が払われたが,探索が大規模に効果的に適用されるようになると,こうした努力はすべて無意味になるか,あるいはさらに悪化することが判明した.

また,価値関数を学習するためのセルフプレイによる学習も重要だった(他の多くのゲームやチェスでもそうでしたが,1997年に初めて世界チャンピオンを倒したプログラムでは,学習は大きな役割を果たさなかった).

セルフプレイによる学習,そして一般的な学習は,大規模な計算をもたらすことを可能にするという点で,探索と似ている.

探索と学習は,AI研究において大量の計算を利用するための2つの最も重要な技術クラスである.

コンピュータ囲碁では,コンピュータチェスと同様に,研究者の初期の努力は,人間の理解を利用することに向けられ(検索を少なくするため),検索と学習を取り入れることで,はるかに大きな成功を収めることができた.

音声認識では,1970年代にDARPAが主催する初期のコンペティションがあった.

単語や音素,声道の知識など,人間の知識を活用した特殊な手法が数多く採用された.

一方,より統計的で計算量の多い,隠れマルコフモデル(HMMs:Hidden Markov Models)に基づく新しい手法もあった.

ここでも,統計的な手法が人間の知識に基づく手法に勝った.

このため,数十年かけて徐々に自然言語処理全体が大きく変化し,統計と計算がこの分野を支配するようになった.

最近の音声認識におけるディープラーニングの台頭は,この一貫した方向性を示す最も新しいステップである.

ディープラーニングは,人間の知識に頼ることなく,さらに計算量を増やし,膨大な訓練セットで学習することで,劇的に優れた音声認識システムを実現する.

ゲームと同じように,研究者は常に,研究者が自分の頭の中で考えているように動くシステムを作ろうとした,つまり,その知識をシステムに入れようとした.

しかし,ムーアの法則によって大規模な計算が可能になり,それを有効に活用する手段が見つかったとき,それは結局逆効果であり,研究者の時間の膨大な浪費であることが判明した.

コンピュータビジョンにおいても,同様のパターンがあった.

初期の手法は,エッジを探すとか,汎化された円筒を探すとか,SIFT特徴量でビジョンを考えていた.

しかし,今日ではこれらはすべて破棄されている.

現代の深層学習ニューラルネットワークは,畳み込みとある種の不変性という概念だけを使い,はるかに優れた性能を発揮する.

これは大きな教訓である.

我々は,同じような過ちを犯し続けているため,分野として,まだそれを徹底的に学んでいない.

これを見抜き,効果的に抵抗するためには,こうした間違いの魅力を理解する必要がある.

我々は,考え方の構築は長い目で見るとうまくいかないという苦い教訓を学ばなければならない.

この苦い教訓は,次のような歴史的な観察に基づいている.

  1. AI研究者は,しばしばエージェントに知識を組み込もうとした.
  2. これは短期的には常に役に立ち,研究者にとっては個人的に満足のいくものである.
  3. しかし,長い目で見れば,それは停滞し,さらなる進歩を阻害する.
  4. 探索と学習による計算のスケーリングに基づく正反対のアプローチによって,最終的に画期的な進歩がもたらされる.

最終的な成功は苦味を帯びており,しばしば不完全に消化される.

なぜなら,それは好意的な,人間中心のアプローチよりも成功だからである.

この苦い教訓から学ぶべきことの一つは,汎用的な手法,つまり利用可能な計算量が非常に大きくなっても計算量の増加に応じてスケールし続ける手法の大きな力である.

このように任意にスケールするように見える2つの方法は,検索と学習である.

この苦い教訓から学ぶべき2つ目の一般的なポイントは,実際の心の中身はとてつもなく,救いようのないほど複雑なことである.

心の中身について考える簡単な方法,たとえば空間,物体,複数のエージェント,対称性などについて考える簡単な方法を見つけようとするのはやめるべきである.

これらはすべて,恣意的で本質的に複雑な外界の一部である.

その複雑さは果てしなく大きいので,作り込むべきものではない.

その代わりに,この恣意的な複雑さを発見し,捉えることのできるメタ方法(Meta-Methods)のみを組み入れるべきである.

これらの方法に不可欠なのは,良い近似を見つけることができるということだが,その探索は,我々ではなく,方法によって行われるべきである.

我々が求めるのは,我々と同じように発見できるAIエージェントであって,我々が発見したものを取り込むAIエージェントではない.

我々の発見を組み込んでも,その発見プロセスがどのように行われるかを理解するのが難しくなるだけである.

Rodney Brooksの「A Better Lesson」の日本語訳

ちょうど先週,Rich Suttonは「The Bitter Lesson」と題した非常に短いブログ記事を発表した.

このレビューは,彼の投稿よりも短くしようと思っている.

Suttonは,強化学習への長期的かつ持続的な貢献でよく知られている.

彼の投稿では,70年にわたるAIの歴史の中で,人工知能システムを構築する最善の方法として,より多くの計算とより少ない内蔵の知識が常に勝ってきたと,多くの良い例を用いて論じている.

これは,AIに新しく参入した人たちの多くが考える,学習ネットワークを設計し,大量のコンピュータパワーを投入する方が,そのタスクに少しでも特化した計算構造を設計しようとするよりも良いという現在の考え方と共鳴するものである.

しかし,先週,米国科学アカデミーで開催されたディープラーニングに関する2日間のワークショップでは,後者の考え方の方がはるかに多く,まさにSuttonが主張していることに対する反発のようなものがあった.

Suttonはいろいろな理由で間違っていると思う.

  1. ディープラーニングの最も有名な成功例の1つは,畳み込みニューラルネットワーク(CNNs:Convolutional Neural Networks)を使った画像のラベリングだが,CNNの本質は,ネットワークのフロントエンドが,並進不変性(オブジェクトがフレーム内のどこにでも現れるという考え)を管理するために人間によって設計されていることである.ディープラーニングのネットワークにそれを学習させることは,極端に言えばペダンチック(衒学的(げんがくてき))であり,学習の計算コストを何桁も押し上げることになる.
  2. 画像ラベリングには他にも,現在のCNNには人間の性能に重要であることがわかっているものが組み込まれていないため,大きな被害を受けるものがある.例えば,色の恒常性である.このため,自動運転車用に訓練されたあるCNNは,テープが貼られた交通停止標識が時速45マイルの速度制限標識に見えるという有名な例がある.停止標識は赤で,速度制限標識は白だと知っているから,そんな間違いをする人間はいない.CNNはそれを知らない.なぜなら,カメラの画素の色と物体の実際の色の関係は非常に複雑で,アルゴリズムが訓練するわずか数千万枚の訓練画像では解明されないからである.「将来的には実行可能な訓練セットができるだろう」と言うのは,人間の作業負荷を,膨大な訓練セットを作成し,システムに学習させたいことをラベルに符号化することにシフトさせることである.これは,色の恒常性ステージを直接構築するのと同じように,知識を組み込むことである.人間の知的作業を別の場所に移動させるという手際の良さなのである.
  3. 実際,今日,ほとんどの機械学習の問題では,学習をうまく進めるために,人間が特定のネットワークアーキテクチャを設計する必要がある.つまり,人間が特定の知識を組み込むのではなく,人間が特殊で適切なネットワークと,使用する特定の学習方法を構築することが求められている.またしても,人間がループに入ることなくAIが成功するというのは,手品のような話である.むしろ,我々は人間に,別の場所と形でアルゴリズムに知性を注ぎ込むよう求めている.
  4. 大量のデータセットは,人間が物事を学ぶのに必要なものではないため,何かが欠けている.今日のデータセットには何十億もの例があるが,人間が同じことを学ぶのに必要なのはほんの一握りかもしれない.さらに悪いことに,今日見られるようなネットワークの多くを訓練するのに必要な計算量は,非常に大きな予算を持つ大企業にしか提供できない.したがって,すべてを学習可能にしようとするこの動きは,AIのコストを個人や大学の大きな学部にさえも押し上げることになる.これは,知的システムをさらに発展させるための持続可能なモデルとは言えない.機械学習の問題によっては,学習段階で消費される電力が原因で,かなりのカーボンフットプリントが発生することが分かってきている.
  5. ムーアの法則は減速しており,コンピュータアーキテクトの中には,1チップの計算量が2倍になるまでの時間が1年から20年になると報告している人もいる.さらに,2006年にデナード則が破綻したことで,マシンの性能が上がれば上がるほど,消費電力も上がる.そのため,機械学習の結果(実際の学習はともかく)さえも,多くの小型ロボットに搭載する余裕はない.自動運転車の計算には約2,500ワットの電力が必要だが,人間の脳は20ワットしか必要ない.つまり,Suttonの主張は,これをさらに悪化させ,AIやMLの利用を非現実的なものにしてしまう.
  6. コンピュータアーキテクトは現在,訓練されたネットワークをランタイムで使用するための特別な目的のチップを構築することによって,これらの問題を補おうとしている.しかし,ハードウェアを特定のネットワーク構造に固定し,計算結果を変えずにどのようなトリックが可能かについての人間の分析を生かしつつ,電力バジェットを大幅に削減する必要がある.これには2つの欠点がある.第一に,特定の解法に特化したハードウェアを固定してしまうため,新しいML問題が発生するたびに,新しいハードウェアを設計する必要がある.第二に,MLを実用化するために人間の知能を適用する場所を変えただけで,人間が設計に関わる必要性を全くなくしたわけではないということである.

つまり,Rich Suttonの記事を読んだ私の感想は,「過去70年間のAI研究から学ぶべき教訓は,より多くの計算をすれば必ず勝てる」ということでは全くないということである.

むしろ,どのような解決策を講じるにしても,その総コストを考慮しなければならず,これまでのところ,すべて人間の多大な工夫が必要だったということが,より良い教訓になるのではないだろうか.

ある解決策が,ある種の人間の創意工夫を最小化するものであり,その解決策が人間の創意工夫(とカーボンフットプリント)を必要とする他のすべての場所を考慮に入れないというのは,世界をひどく近視眼的に見ていることになるのではないだろうか.

このコメントも含めて,このレビューはSuttonの投稿より76ワード(訳注:原文の英語でカウント)も短い.

Max Wellingの「Do we still need models or just more data and compute?」の日本語訳

この問題,あるいはその一部は,AIのコミュニティを二分しているようである.

ベイズ派とフリークエンティスト派のように,この問題に対して強い両極端な意見を持っている.

質問は,記号的AIか統計的AIか,ホワイトボックスAIかブラックボックスAIか,モデル駆動型AIかデータ駆動型AIか,生成型AIか識別型AIか,などなど,さまざまなものがある.

Rich Suttonの最近のブログでは,コンピュータ駆動型AIと人間知識ベースAIが追加されている.

この議論は,魅力的であると同時に,深く根源的なものである.

我々は皆,これらの疑問について考える必要がある.

最初に,私は計算の力とMLとの関連性を強く信じていることを述べたいと思う.

私がクアルコムでパートタイムとして働いている理由の1つは,まさにAIを進歩させる最速の方法の1つは,AI計算のための専用ハードウェアを作ることだと信じているからである.

また,私はディープラーニングの強力な推進者でもある.

私の研究ポートフォリオの多くは,現在DLをベースにしている.

これまで生み出した最大のハンマーだと思うし,そのインパクトを毎日目撃している(だからGary Marcus,この記事を読んだ後に,私がDLの反対派だと書かないでほしい).

Rich Suttonのブログ「The Bitter Lesson」には,次のようなことが書かれている.

計算機を最大限に活用できるスケーラブルな手法に取り組み,世界をモデル化することは忘れるべきである.

この主張を裏付ける例として,人間の戦略ではなく,検索と学習を活用したDeep BlueやAlphaGO,音声認識,視覚的物体認識などが説明されている.

さらに,メラノーマ検出や腫瘍検出,統計的機械翻訳など,いくつか追加できる.

ここに無視できないトレンドがあるのは間違いない.

しかし,Richの議論には,1つだけ本当に重要な要素が欠けている.

機械学習では,計算のほかに,データがより基本的な材料となる.

上記の例には,ある重要な性質を共有している.

というのも,自分でデータを生成できるか(例:AlphaGO),十分なデータが利用できるか(例:音声),非常にうまく,かつかなり狭く定義された問題だからである.

このような環境では,DLのようなデータ駆動型,識別型,ブラックボックス型の手法が輝く.

これを補間問題と見なすことができる.

入力ドメインは十分に区切られており,その入力ドメインをカバーするのに十分なデータがあり,点と点の間を補間することができる.

問題は,外挿が必要になったときに始まる.

私がMLで学んだ中で,最も鮮明に覚えていることがある.

仮定なしに予測することはできないし,帰納的バイアスなしに汎化することもできない.

DLのようなデータ駆動型の手法でさえ,推定しようとする関数の滑らかさ,CNNの翻訳不変性,概念の階層的構成といった仮定を使用している.

最近の進歩は,例えば,畳み込みに対称性の種類を増やすなどして,これらの弱い仮定を基礎にしようとする.

MLの最も基本的な教訓は,バイアス(偏り)とバリアンス(分散)のトレードオフである.

十分なデータがあれば,人間が作った帰納的なバイアスをモデルにかける必要はない.

「データに語らせる」ことができる.

しかし,十分なデータがない場合は,そのギャップを埋めるために人間の知識を使う必要がある.

これがまさに,外挿をするときに起こることである.

新しい入力ドメインに入り,データが非常にまばらな場合,訓練したモデルは失敗し始めるだろう.

チェスや囲碁の学習など,ある種のRL問題では,入力ドメインが非常に単純であるため,ほぼ完璧なシミュレータを簡単に作ることができ,現実世界を見ることなく無限のデータセットを生成できることに注意されたい.

この場合,最も制約となるのはデータではなく,計算機である.

しかし,シミュレータは世界のモデルだから,人間の知識を問題に埋め込んだモデルベースのRLアプローチであると言えるだろう.

ただ,この場合,世界は非常にシンプルである.

しかし,ここで問題が自動運転車であることを考える.

この場合,非常にまれな交通状況のロングテールが存在するため,データセットに現れない.

この場合,世界をモデル化しようとしない純粋なデータ駆動型の手法は,私の意見では絶望的である.

そして実際,こうした「例外」は,現在でもルールベースのシステムで捉えられている.

世界の物理的な仕組みと,そこに住む人々の心理や社会学を理解する必要がある.

その世界で(学習する)計画を立て,未知の状況に対応するためには,シミュレータの中にそのすべてが凝縮されている必要がある.

しかし,問題は,新しい状況があまりにも多すぎて,すべての状況について十分なデータを得ることができないということである.

しかし,希望はある.

重要な洞察は,世界は「前方,生成,因果の方向」で動いているということである.

これは,出来事が他の出来事を引き起こし,我々のセンサーに記録される方向である.

この世界を表現するために必要なパラメータは,驚くほど少ない.

物理法則は,驚くほどコンパクトに符号化される.

この世界はモジュール式に構成されており,およそ独立してモデル化できる因子と行為者から構成されている.

この世界では,安定した物理法則に従って,ある事象が別の事象を引き起こす.

生成モデルは,新しい未知のドメインへの汎化においてはるかに優れている.

因果関係によって,予測因子をあるドメインから次のドメインに簡単に移すことができる.

事故はオランダでは黒い車と相関があるが,アメリカではおそらく赤い車と相関がある.

色を予測因子として使っても汎化しないが,男性のテストステロン値のような因果関係因子があれば非常によく汎化する.

生成モデルでは,1つの例から学習することができる.

なぜなら,その例を背景知識の海に埋め込むことができるからである.

生成方向の単純さを利用しないのは愚かなことである.

人間は,決して実現しないが頭の中に存在しうる反実仮想の世界をシミュレーションする驚くべき能力を持っている.

我々は,自分の行動の結果を,その行動の下で展開される世界をシミュレーションすることで想像することができるし,現在の出来事を引き起こした原因を,その原因となった可能性のある世界をシミュレーションすることで導き出すことができる.

この能力は,物理学や心理学の直感的な理解に依存していることは明らかである.

識別的方法は,その逆方向で動作する.

これは,観察結果から考えられる原因に直接マッピングするものである.

マイクの音波の原因となる言葉を予測する,カメラの画素値の原因となる物体を予測する.

この方向では,物事は単純ではなく,すべてが高度に絡み合って複雑になっている.

意味のある予測をするためには,まず入力を解きほぐすことが必要である.

しかし,狭義のドメインでは,予測に使いたいマップを学習するため,これらの方法はとてもうまく機能する.

これに対して,生成モデルの逆引きは,しばしば難解で計算量が多くなる.

その中間を見つける必要があるようである.

狭義のドメインで,十分なデータがあるか,非常に正確なシミュレータがあれば,識別モデルを訓練して非常にうまくいくだろう.

しかし,新しいドメインに汎化する必要がある場合,つまり,データから外挿する必要がある場合は,生成モデルが必要になる.

生成モデルは,世界に関する特定の仮定に基づいているが,より優れた汎化が期待できる.

さらに,ラベルを必要としない教師なし学習で訓練やファインチューニングを行うことができる.

新しいドメインでより多くの(ラベル付き)データを収集するにつれて,逆生成モデルを徐々に識別モデルに置き換えていくことができる.

なお,私はルールベースの記号的なAIが,生成モデルの構築と同じだと主張しているわけではない.

知識グラフや,その確率的なvariantsなどの構造は,人間の知識をモデルに注入する方法のひとつに過ぎない.

(因果関係のある)グラフィカルモデルや物理ベースのシミュレータは,他の例である.

これらはすべて,さまざまなタスクに役立つ可能性がある.

結論として,もし我々が人工知能(AGI:Artificial General Intelligence)を解決したいのであれば,モデルベースのRLが必要になると思う.

そして,そのモデルは,教師なし学習を使って,人間の事前知識をほとんど必要とせず,多くの計算資源で学習することができるかもしれない.

その意味で,私はRichのBitter Lessonに同意する.

しかし,データの利用可能性を語ることなしに,人間が設計したモデルが必要かどうかという問いに答えることはできない.

私の考え

私はAIの研究開発をしていたわけではないですが,ロボットや自動車で利用される「リアルタイムシステム」の研究開発をしていました.

ロボットや自動車ではAIを利用していることや,自然言語処理AIに関する多くの論文を読んだ経験から,AIに関する知見があります.

これらを踏まえて,The Bitter Lesson,A Better Lesson,Do we still need models or just more data and compute?を読んだ上で,2023年6月現在における私の考えを語ります.

私の考えでは,基本的にはニューラルネットワークの性能はスケーリング則に基づくため,AIの計算性能の向上がブレークスルーの要因になっているので,Bitter Lessonには賛成しています.

しかし,最近話題のChatGPTの開発には,Reinforcement Learning from Human Feedback(RLHF)が重要な要素であることが,GPT-4 Technical Reportで語られています.

つまり,人間のフィードバックも重要な要素なので,計算性能だけが重要とは限りません.

また,AIモデルのコストも解決すべき課題です.

今後AIモデルを改善する方法は以下になります.

  • AIモデルを現在のChatGPTを超える方法でスケールさせる(基本的にはスケーリング則に従う)
  • 人間のフィードバックを強化する(アイデアや多様性が重要になる)
  • AIモデルの作成コストや運用コストを削減する(ChatGPTの開発には1億ドル以上の費用がかかっている)

GPT-4 Technical Reportの日本語訳を知りたいあなたはこちらからどうぞ.

ChatGPTの始め方・使い方を知りたいあなたはこちらからどうぞ.

まとめ

Rich Suttonの「The Bitter Lesson」の日本語訳を紹介しました.

また,Rodney Brooksの「A Better Lesson」,Max Wellingの「Do we still need models or just more data and compute?」,私の考えも解説しました.

AIのプログラミング言語「C++/Python言語」を学べるおすすめのWebサイトを知りたいあなたはこちらからどうぞ.

独学が難しいあなたは,AIを学べるオンラインプログラミングスクール3社で自分に合うスクールを見つけましょう.後悔はさせません!

国内・海外のAIエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

国内・海外のプロンプトエンジニアのおすすめ求人サイトを知りたいあなたはこちらからどうぞ.

-TECHNOLOGY, NLP AI
-, ,