味見のためにユニットテストを行うことはできません

2026/06/24 17:54

味見のためにユニットテストを行うことはできません

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

著者は「In the Long Run」というアプリケーションを開発し、過去に歴史的名所を表示しようとした試みにおいて直面した重大なスケーラビリティの問題を解決するため、特定のルートを基盤として厳選された全世界の興味深いポイントを重ね合わせることで旅行地図を強化しています。本プロジェクトは、クリエイティブ・コモンズライセンスの下で提供される大規模な地理参照機能レポジトリである GeoNames を基盤としています。開発には Apache Parquet をストレージに使用し、クエリには DuckDB を使用する Python パイプラインが採用されており、開発支援として Claude AI コーディングエージェントも活用されました。このシステムは行政区分を除外し、公園、城館、山岳といった特定の機能コードのみを選択することで、生データを全球的に約 1300 万行から約 72.5 万件に削減しています。候補地点は GeoJSON バウンディングボックスとデフォルトの 50km の距離閾値を用いて特定のルート(例:アイスランドのリングロード、ケープタウン〜マグダガン)に対してマッチングされ、地図が単なる人口ヒートマップになることを防ぐために過疎地フィルタリングなどのルート固有のパラメータも追加的に適用されます。標準的なフィルタは客観的データを処理しますが、本アプリの独自の価値は、Anthropic の Haiku AI モデルを統合してランドマークに対する主観的な「味(テイスト)」評価を生成することにあります。このアプローチが重要な立ち止まり場所の特定に有用であることが証明されたものの、ハルシネーション(例:セントラルパークを誤分類)といった精度上の問題や、高いコスト(大きなルートバッチあたり約 10 ドル)の問題も発生しました。したがって、LLM を介したテキスト生成は見直されましたが、完全にユニットテスト化することが困難な主観的な評価には引き続きモデルが使用されます。最終的に、このオープンソースのパイプラインは、データ駆動型の精度と主観的な洞察の双方で地図を強化する方法を提供し、将来の反復版では手動でのオーバーライドやコミュニティフィードバックに依存することで改善が行われることを通じて、生地理情報と厳選された旅行体験との間のギャップを効果的に橋渡しします。

本文

アプリ「In the Long Run」開発ブログ:GeoNames 活用と LLM の適切な使い所を探る

「人生は短走ではなくマラソン」。私たちはランナーが世界各地の著名コースを仮想走行し、ストライダー(Strava)データを基に全距離での進行度を可視化するアプリを構築中です。長期的な動機付けこそが私たちのミッションです。

しかし、ユーザー自らが探索を楽しめる対話型地図を実現するにあたり、魅力的な景勝地や歴史的地点のデータ収集は大きな課題となりました。趣味への偏見や大規模言語モデル(LLM)による幻覚との格闘を経て、「AI は万能薬ではなく、補助的な道具の一つである」という結論に至りました。

本記事では、その開発プロセス、データパイプラインの構築、そして LLM をどう扱ったかについて振り返ります。


1. データ収集パイプラインの構築

プロジェクトをスケールさせるため、大規模な場所データのインテグレーションと処理に着手しました。Python と DuckDB という新しい技術スタックを採用し、学習曲線の管理を行いました。

技術スタック

  • プログラミング言語: Python(ライブラリサポートが充実)
  • データストレージ: Apache Parquet(ローカル保存)
  • クエリ層: DuckDB(SQL クエリによる処理)
  • LLM モデル: Anthropic の Haiku(コスト・速度のバランス重視)

開発方針:AI の適切な位置づけ

当初は AI が中核を担うことを想定していましたが、**「AI は既存ツールの一つに過ぎない」**という認識へ変化しました。主要な技術スタックを自分で理解しておくことで、エージェントを適切に操縦し、盲目に従うことなく情報に基づいた判断を下すことができました。

計画と反復改善

  • プロジェクト当初から Claude(Anthropic)との連携で詳細な計画図を作成。
  • 各マイルストーンごとに新しいエージェントセッションを開始し、前のステップの結果を短く要約して次へ文脈を渡す手法を採用。
  • これにより、大きなコンテキスト依存による品質劣化を防ぎつつ、迅速で高品質なレスポンストライプを得ています。

2. データ前処理:注目性とバイアスの制御

GeoNames というクリエイティブ・コモンズライセンスのオープンデータソースを起点として、フィルタリングとバッチ処理を行いました。

ステップ 1:基本データの選定

ダウンロードした生データを結合し、不要なノイズを取り除く処理を実行。

  • 除外対象: 国・州・地域などの行政区画情報。
  • 選択対象(フィーチャーコード): パーク、歴史的建造物、城砦、記念碑、山岳など「興味深い地点」のみ。
  • フィルター条件:
    • 居住地:人口閾値を設定。
    • 山岳:標高閾値を設定(偽陰性発生リスクありが許容)。

ステップ 2:注目性の指標追加

alternateNames.txt
ファイルに含まれる Wikipedia リンクを活用しました。

  • 利用方法: リンクの存在を「信号/関連性」の指標とし、Wikipedia 要約を文章データとして利用。
  • 検証例: ストーンヘンジのような史跡も一時的に誤検知しましたが、フィルタリング設定を微調整することで改善。

成果: 当初の 1,300 万行から大幅削減され、約 72 万 5 千行のグローバル景勝地データを得ました。

ステップ 3:ルートの境界内フィルタリング

保有する各ルートと候補地点を一致させました。

  1. ルート用の GeoJSON から境界ボックスを作成し、遠い地点を除外。
  2. 残った地点に対して「ルート座標との距離」を計算(デフォルト 50km)。
  3. Shapely
    Pyproj
    を使用し、ランナーが表示すべきタイミングの算出を実施。

取得結果の偏り:

  • イスラエント環状道路 (1,321km): 511 ポイント
  • ケープタウン〜マガダン (23,257km): 約 1 万点
  • ルート 66 (3,787km): 約 14 千点

問題: Wikipedia ベースの指標は**「英語話者が居住し、ウィキペディアを編集している地域」へのバイアス**が強いことが早期から明らかとなりました。


3. LLM の活用:幻覚と主観性の天秤

データを補完し評価スコアを生成する段階で、LLM の能力とその限界(幻覚)に直面しました。

スコアリングの経緯

  • 初期試み: Wikipedia 要約や Wikidata を LLM に入力し、各地点の評価スコアを自動生成。
  • 出力形式: Anthropic Markup Language (antml) など、ツール呼び出しの結果に奇妙なフォーマットが混入する等の不具合あり。
  • コスト: バッチ処理を実施し、最大 50% の割引を利用。大規模ルート(1 万点以上)でも約 10 ドル程度で完結。

幻覚の発生と対策

初期プロンプトでは位置情報の制限が緩く、**「セントラルパークをイリノイ州デカターにある場所に誤認」**するなどの大きな幻覚が発生。

  • 第 2 パス: 位置情報や行政データ(国・都市)を追加し、システムプロンプトで文脈を厳格に固定化。
  • それでもなお: Haiku は町の人件変更や山の高さの誇張(90 年代映画『ビュータイ』のハUGH グラント演じるキャラクターのような挙動)が見られることが確認され、**「正確性よりも読みやすさを優先した LLM テキストは不適切」**と判断。
  • 結論: 事実確認を重視し、LLM の要約テキスト生成自体を取りやめ、あくまでスコアリングのみでの活用に戻りました。

「主観的」評価の意義

事実誤認を防ぐために Wikipedia 要約を使用しましたが、**「重要性スコア」**の算出には依然として LLM を使用しています。

  • 手法: フィーチャーコードと Wiki の言語版数(客観的指標)に加え、LLM による主観的評価を併用。
  • 理由: 純粋に Wikidata に依存すると、150 の言語版を持つ小さな町すべてが重みなされすぎるため。
  • 効果: LLM の「主観的な感覚」が、特に英語圏以外のルートにおいて**「より興味深い見どころ」を選別する助け**となりました。

注意点: 首都(レイキャビクなど)や巨大氷河であっても、プロンプトに明示的に指示されない限り、LLM はその重要性を過大評価しないよう慎重に対処しました。


4. 主観性の検証とパラメータ調整

完成したデータは JSON ファイルとしてバージョン管理対象となりましたが、「正解」と明確な単体テストが存在しないのが最大の課題です。

地域ごとの差異

  • アイスランド: 自然・歴史・居住のバランスが良いルート。
  • 人口密集地(都市部): ポイントがすべて都市部と集落に集中し、事実上「人口分布マップ」と化す傾向あり。

パラメータ調整の導入

この問題に対処するため、以下の調整を行いました。

  1. 人口フィルター: 極端な過密地域の除外。
  2. スコア相対評価: 「主観的」LLM スコアに対して、「客観的」Wiki リンク数を重み付け。
  3. 地理的重みづけ: ある半径内(例:都市圏)で見どころが飽和する場合は、郊外への表示バランスを調整。

検証の難しさ

  • 困難点: 「機能か不機能か」で判断できる単純な指標にはならず、特定のルートに過剰最適化すると他の領域での劣化を招きやすい。
  • アプローチ: データサイエンティストが用いる評価フレームワークや、手動によるオーバーライド(補正)による反復改善を継続。

まとめ:AI は道具である

開発を通じて得られた最も重要な教訓は、**「AI が問題を解決するのではなく、ツールボックスの中に新しい道具を追加されるに過ぎない」**という視点でした。

  • 事実を捏造するリスクがあるため、LLM を事実確認ツールとして排除しました。
  • その一方で、人間の直感を補完し「面白さ」を数値化するスコアリングツールとして活用しました。
  • Ironyとして:このプロジェクト自体も、仕様書を提供してから AI に実装コードを書かせ、それを人間がレビュー・承認するという工程を経て完成しています。

現在、開発は V1 リリースへと至っており、

InTheLongRun.app
において一部のルートで利用可能となりました。複雑な現実世界のデータを扱いながら、ランナー一人ひとりに新しい発見をもたらすことを目指してまいります。

同じ日のほかのニュース

一覧に戻る →

2026/06/26 6:44

「パスポート查验」の時代におけるインターネットはあなたのプライバシーを破壊する

## Japanese Translation: **:16歳未満に対するオーストラリアの新しいSNS禁止措置は、2025年12月に施行されるものの、アクセスの大幅な抑制には至っておらず、調査では制限があるにもかかわらず退会せずにプラットフォームを利用し続ける子供が約70%いることが示されています。この法律は、主に学校の授業時間外におけるインターネット利用において機器の使用自体が禁止されている場合に適用され、年齢確認が不十分であることを踏まえ、退会を強制します。コンプライアンスの確保のために生体情報や政府発行の身分証の収集を義務付けていますが、曖昧なガイダンスにより、機密情報の過剰収集が生じ、結果としてオーストラリア人の個人データを約7万人に及ぶ大規模な漏洩を引き起こしました。連邦法に従うために当局は、シンガポール拠点の k-ID を含む第三者による検証ツールを利用しており、オーストラリアを同様の禁止措置を採用する英国、EU およびその他の国々に見られる世界的な潮流に合わせることになりました。高い回避率への対応として、公式は VPN の使用に対する「年齢制限ゲート」を導入を検討しています。しかし、これら厳格な対策には重大な欠点があり、広範な生体情報による検査を通じてオーストラリアが中国やイランと類似した権威主義的な監視モデルを採用するリスクがあります。結論として、未成年者を中毒性の高いフィードや成人向けコンテンツから守ろうとする一方、現在のアプローチはオンライン上の匿名性を脅かし、将来的なプライバシー侵害の可能性を増大させており、米国における各州レベルでの取り組みの違いに反映されるこの懸念も、連邦レベルの法案である「キッズ・オンライン・セーフティ法(KOSA)」を含む案にも見られます。

2026/06/26 0:48

エルコラネオの巻物が初めて全文解読された

## 日本語翻訳: 2026年6月25日、研究者は物理的に切断することなくシールされたエルコーラネオムの巻物PHerc. 1667のギリシャ語原文を仮想的に解開し、完全に読み解くという画期的成果を達成した。これらの炭化した巻物は過去2000年間、ヴェスビオ火山(西暦79年)の噴火から生き残ったのは、外層を開けるには極めて脆くなってしまったからである。19世紀、1969年および1980年代に行った以前の試みでは外層が損傷し、元の高さが19〜24cmあった中で、保存状態を保っていたのは高さわずか8cmの内核のみであった。 ヨーロッパシンクロトロン放射施設(ESRF)で実施された高分解能位相コントラストX線マイクロCT走査により、チームは巻物の幾何学的形状を再構成し、表面をデジタル的に平坦化し、機械学習を用いて微弱なインクの痕跡を回復させた。この非侵襲的アプローチにより、1.4メートルの完全な記述面上に存在する約22コラム分のテキストが成功裏に解読された。ブレント・シールス教授によるエデュクレボラブの研究成果や、ヴェスビウスチャレンジチーム(元参加者を含む)に基づくこの研究では、PHerc. 1667には紀元前2世紀のもう一人のアリストクロン(クリッソッポスの甥)に帰属する道徳哲学に関する論説が含まれていることが明らかとなった。また、巻物1(PHerc. パリ4)やPHerc. 139など、他の巻物も読めることが確認され、タイトルへの帰属のために改良されたものもある(例えばフィルデモスの『神について』第8巻)。 この拡張可能な手法は、脆弱な状態を保ちつつシールされたパピルスが完全に解読可能であることを証明し、古代のストア派およびエピックュレオス主義者の哲学、詩、プロザを含む数百の残存巻物へのアクセスを可能にした。scrollprize.org/data において、すべてのデータ、テキスト転写、コード(GitHub)、再構成された表面をオープンなクリエイティブ・コモンズライセンスの下で公開することで、このプロジェクトは代替不可能なこれらの遺物が新たな研究のために利用可能であり続ける一方で、さらなる損傷を引き起こさずアクセスできることを確保している。

2026/06/26 5:50

Un-0:結合振動子による画像生成

## Japanese Translation: Unconventional AI による Un-0 プロジェクトは、エネルギーを大量に消費する GPU 深層学習から、結合振子を用いた物理学に基づく計算への画期的な転換点を示しています。2026 年 6 月 25 日にリリースされ、このアプローチは従来のニューラルネットワークに依存せず、常微分方程式(ODE)を解くことで、およそ 1,000 倍のエネルギー効率を実現します。アーキテクチャは学習可能な振子パラメータ——具体的には Kuramoto フレームワーク内の結合強度と固有周波数——を活用し、明示的なオイラー積分スキームを使用してエンドツーエンドで訓練を行います。 パフォーマンスに関しては、ImageNet 64×64 モデル(Un-0.n16384)は FID スコア 6.74 を達成しました。この品質は DCGAN や BigGAN などの初期の従来型ジェネレーターと重なるものの、現在では EDM のような最新の最先端モデルには及びません。アブレーションの結果は、訓練されたダイナミクスが多様性と汎化能力を維持し、低パラメータの従来型デコーダーが画像の忠実度を担当することを確認しています。CIFAR-10 および ImageNet での訓練において、最大のモデル(学習可能なパラメータ 322.44M、6.21M パラメータのデコーダーを含む)には 640 B200 GPU アワーが使用されました。オープンソースツールのうち、重みおよびスクリプトも利用可能で、研究の促進に役立ちます。今後の展望として、チームは高度なアルゴリズムによって残りの品質ギャップを埋め、CMOS チップなどの物理ハードウェアでの展開に向けて準備を進める計画です。これは AI のエネルギー消費を大幅に削減することによって持続可能な未来を約束します。 ## Text to translate: The Un-0 project by Unconventional AI marks a pivotal shift from energy-intensive GPU deep learning to physics-based computation using coupled oscillators. On release on June 25, 2026, this approach achieves roughly 1,000 times better energy efficiency by solving Ordinary Differential Equations (ODEs) rather than relying on traditional neural networks. The architecture leverages learnable oscillator parameters—specifically coupling strengths and natural frequencies within a Kuramoto framework—and trains end-to-end using an explicit Euler integration scheme. Regarding performance, the ImageNet 64×64 model (Un-0.n16384) achieves an FID score of 6.74. While this quality overlaps with early conventional generators like DCGAN or BigGAN, it currently trails modern state-of-the-art models like EDM. Ablation results confirm that the trained dynamics preserve diversity and generalization, while a low-parameter conventional decoder handles image fidelity. Training on CIFAR-10 and ImageNet used 640 B200 GPU-hours for the largest model, which includes 322.44M trainable parameters and a 6.21M parameter decoder. Open-source tools, including weights and scripts, are available to accelerate research. Looking ahead, the team plans to close the remaining quality gap through advanced algorithms and prepare for deployment on physical hardware like CMOS chips, promising a sustainable future for AI by drastically reducing energy consumption.