
Appleの研究者グループが新たな研究で、オープンソースモデルにSwiftUIで優れたユーザーインターフェースコードを構築する方法を自ら学習させるという、非常に興味深いアプローチをとったことを明らかにしました。その方法をご紹介します。
論文「UICoder: Finetuning Large Language Models to Generate User Interface Code through Automated Feedback」の中で、研究者たちは、LLM(大規模言語モデル)はクリエイティブライティングやコーディングを含む複数のライティングタスクにおいて向上しているものの、「UI用の構文的に正しく、適切に設計されたコードを確実に生成する」ことに依然として苦労していると説明しています。彼らはその理由についても明確な見解を示しています。
厳選された、または手動で作成された微調整データセットであっても、UI コードの例は非常にまれであり、場合によってはコード データセットの全体的な例の 1% 未満を占めることもあります。
これに対処するため、彼らはコーディングに特化したオープンソースのLLMであるStarChat-Betaから着手しました。彼らはStarChat-BetaにUI記述のリストを与え、それらの記述からSwiftUIプログラムの大規模な合成データセットを生成するよう指示しました。
次に、すべてのコードを Swift コンパイラーで実行して実際に実行されることを確認し、続いて、コンパイルされたインターフェースと元の記述を比較する視覚言語モデルである GPT-4V による分析を行いました。
コンパイルに失敗した出力、関連性がないように思われる出力、重複した出力はすべて破棄されました。残った出力は高品質なトレーニングセットとなり、モデルの微調整に使用されました。

彼らはこのプロセスを複数回繰り返し、反復するごとに改善されたモデルが以前よりも優れたSwiftUIコードを生成することに気づきました。その結果、データセットはさらにクリーンになりました。
5 ラウンドを経て、彼らはほぼ 100 万の SwiftUI プログラム (正確には 996,000) と、UICoder と呼ばれるモデルを作成しました。このモデルは、開始モデルよりもプロンプトに非常に近いインターフェイスを一貫してコンパイルして生成しました。

実際、彼らのテストによれば、UICoder は自動化されたメトリクスと人間による評価の両方において、ベースの StarChat-Beta モデルを大幅に上回りました。
UICoder は全体的な品質でも GPT-4 に近づき、コンパイル成功率では実際に GPT-4 を上回りました。

問題は、元のデータセットが誤ってSwiftUIコードを除外していたことです。
この研究で得られた興味深い事実の一つは、ちょっとしたミスから生まれたものでした。オリジナルのStarChat-Betaモデルは、主に以下の3つのデータコーパスを用いて学習されていました。
- TheStack、許容ライセンスのコードリポジトリの大規模なデータセット(2500億トークン)
- クロールされた Web ページ。
- OpenAssistant-Guanaco、小さな命令調整データセット。
Apple の研究者が説明した問題は次の通りです。
特筆すべき点として、StarChat-BetaのトレーニングデータにはSwiftUIデータがほとんど、あるいは全く含まれていません。TheStackデータセットの作成時にSwiftコードリポジトリが誤って除外されてしまい、手動で調査したところ、OpenAssistant-Guanacoデータセットには、レスポンスフィールドにSwiftコードが含まれる例が1万件中1件しか含まれていないことが判明しました。StarChat-Betaがトレーニング中に確認したSwiftの例は、クロールされたWebページからのものである可能性が高いと考えられます。これらのWebページは、リポジトリコードよりも品質が低く、構造化されていない可能性があります。
つまり、UICoder の成果は、単にすでに見た SwiftUI の例を再利用したことから生まれたものではなく (元のトレーニング データにはほとんどなかったため)、Apple が自動フィードバック ループを通じて構築した自己生成のキュレーションされたデータセットから生まれたものなのです。

ストックフォトとアイコンを手動で追加しました。モデルによって生成されたコードは、画像アセット名を更新する以外、一切変更されていません
。」
このことから研究者たちは、自分たちの方法が SwiftUI を使用して UI を実装するのに効果的であることが証明されたとしても、「おそらく他の言語や UI ツールキットにも一般化できるだろう」という仮説を立てました。これもまた非常に興味深いことです。
研究「UICoder: 自動フィードバックを通じてユーザー インターフェイス コードを生成する大規模言語モデルの微調整」は、arXiv で公開されています。
Amazonで期間限定のApple Watchセール
- 40mm Apple Watch SE 2: 169ドル (以前は249ドル)
- 42mm Apple Watch Series 10: 299ドル (以前は399ドル)
- 46mm Apple Watch Series 10: 329ドル (以前は429ドル)
- 49mm Apple Watch Ultra 2: 649ドル (旧価格799ドル)
youfre.com を Google ニュース フィードに追加します。
FTC: 収益を生み出す自動アフィリエイトリンクを使用しています。詳細はこちら。