HackerRankデータセット作成方法

Last updated: June 23, 2025

このドキュメントは、HackerRankがどのようにデータセットを設計、構築、提供し、SDLC全体を通じて顧客のソフトウェア開発を加速させるかを説明しています。 

以下のワークフローダイアグラムは、HackerRankのデータセット作成方法論を示しています。

エンゲージメントキックオフ

各エンゲージメントは、あなたのビジネスコンテキスト、技術的な目標、データ要件、セキュリティ制約の理解に焦点を当てて始まります。これにより、HackerRankはすべてのプロジェクト作業が始まる前に完全に整合します。

目的と範囲の整合性

最初のステップは、あなたのモデルのユースケースと成功基準を理解することです。これにより、個々のタスクから評価データセットまで、すべての成果物が最終目標と一致することが保証されます。

  • ユースケースの定義: HackerRankの機械学習(ML)科学者は、あなたのチームと協力して、改善したい特定の能力を定義します。例えば:

    • コード生成

    • バグ検出または修正

    • コードの要約または説明性

    • コードのリファクタリングまたは最適化

    • テストケースの生成

    • セキュアコーディングまたはリンティングの自動化

  • モデルのコンテキスト: 技術的な詳細をキャプチャします。例えば:

    • モデルのアーキテクチャ(例:エンコーダーデコーダー、デコーダーのみ、命令調整済み)

    • ファインチューニングまたはポストトレーニングの方法(例:完全なファインチューニング、LoRA、SFT、RLHF、DPO)

    • トークン予算、レイテンシターゲット、コンテキストウィンドウの制約

  • 成功指標: 定量的および定性的な目標を定義します。例えば:

    • BLEU、CodeBLEU、正確な一致精度またはコードの正確性(ユニットテストの合格率)

    • 幻覚率または失敗率の削減

    • レイテンシまたはトークンあたりの推論コスト

主要なパフォーマンス指標(KPI)とモデルの動作目標を定義することで、HackerRankはタスクの選択や評価形式などの下流の意思決定をあなたのビジネスの優先順位に合わせて調整します。

タイムラインとマイルストーンの計画

プロジェクトは、透明性と追跡可能な実行をサポートするために、明確なフェーズに分かれています。

  • 納品のタイムラインは共同で定義され、明確なマイルストーンに分割されます:

    • データセット構造の最終決定

    • タスクのサンプリングまたはパイロットレビュー

    • 評価の設定とベースライン化

    • 最終データセットの納品と承認

  • 各フェーズには、透明性を維持するためのフィードバックチェックポイントが含まれています。

  • 週次の同期と共有プロジェクトトラッカーにより、責任と可視性が確保されます。

セキュリティとデータの居住性

HackerRankは業界標準の データプライバシーとセキュリティの慣行 に準拠しています。プロジェクトのキックオフ時に、HackerRankはあなたのセキュリティとコンプライアンスの要件を最終決定します。

  • データ処理: エンゲージメントに独自のソースコードやモデルアーティファクトが含まれる場合、以下がサポートされます:

    • NDAに基づくアクセス制御

    • リージョン内データ処理(例:EUのみ、インドのみ)

    • 保持しないポリシー

    • 安全なクラウド引き渡し(例:Amazon S3、アクセスキー制限付き)

  • PIIの編集: 本番データ(例:チケットやログからのコードスニペット)を扱う際に、カスタムパイプラインが使用されます:

    • 個人識別情報(PII)の編集(例:名前、メールアドレス、トークン、IPアドレス)

    • 敏感なパターンのマスキング(例:APIキー、データベースの資格情報)

  • ツールの隔離: すべてのデータセット作成は、アクセスログ、バージョン管理、監査可能性のある隔離された環境で行われます。

ステークホルダーのオンボーディング

ステークホルダーの役割は、各エンゲージメントの開始時に両側で明確に定義されます。

  • あなたの組織:

    • 技術的連絡窓口(例:モデル所有者、MLエンジニア)

    • ビジネスリード(例:プロダクトオーナー、CTO)

    • セキュリティまたはコンプライアンス担当者

  • HackerRank側:

    • エンゲージメントマネージャー

    • サブジェクトマターエキスパート(SME)マネージャー

    • 品質保証(QA)リード

    • ML科学者

HackerRankは、リアルタイムの更新とステータスレポートのために、共有のコミュニケーションチャネル(Slackまたはメール)とオプションの共有ドライブを設定します。

データセットの準備

HackerRankのコアの強みは、厳選された専門家(SMEs)のグローバルネットワークと、実用レベルの多様なコードデータセットを作成する実証済みの方法論にあります。このプロセスは、ドメインの専門知識、構造化されたワークフロー、多層の品質保証を統合し、すべてのデータポイントが正確で説明可能であり、あなたの目標に沿っていることを保証します。

専門家監修のコンテンツ生成

  • SME選定: 各データセットの取り組みは、対象言語、フレームワーク、ドメイン(例:バックエンド開発、データエンジニアリング、DevOps)において検証済みの専門知識を持つ専任のSMEパネルの選定から始まります。

  • 現実的なタスク設計: 各SMEは、REST APIの実装、並行性バグのデバッグ、レガシーコードのリファクタリングなど、ソフトウェア開発で見られる本物の課題を反映したオリジナルのプログラミングタスクを設計する責任があります。タスクは顧客の目的(例:コード生成、バグ修正、要約)に沿っており、複雑さや形式(関数、クラス、スクリプト、プロジェクト)によって異なります。SMEは、フォーマットの準拠、タグ付け、完全性に関するリアルタイムのフィードバックを提供する内部作成ツールを使用します。ダッシュボードでは、作成者のパフォーマンスやデータセットのカバレッジも追跡されます。

  • タスク作成ガイドライン: SMEは、詳細で標準化された指示に従ってトレーニングを受けています。これには以下のルールが含まれます:

    • 問題のフレーミングと明確さ

    • 期待される入力/出力

    • エッジケースのカバレッジ

    • テストケースの設計

    • メタデータの要件(例:実行時間の制約、期待されるパフォーマンス)

  • タスクのレビューと承認: すべてのタスクは、SMEマネージャー(ドメインの専門知識を持つシニアコンテンツエンジニア)が主導する構造化されたレビュー過程を経て、データセットに含まれる前に評価されます。レビューには、技術的正確さ、指示の明確さ、実世界の関連性、作成基準への準拠の確認が含まれます。
    内部ツールセットは、レビューとフィードバックのプロセスを合理化し、タスクの品質と責任を確保します。

    • ターゲットを絞ったフィードバック: SMEマネージャーは、タスク内で直接ラインレベルのコメントを提供できます。

    • リビジョンループ: 拒否されたタスクは、詳細なフィードバックと改善案とともに作成者に返されます。作成者はタスクを修正し、再提出します。

    • バージョン管理: すべての編集は、監査証跡付きのバージョン管理システムで追跡されます。

    • パフォーマンス追跡: 作成者ごとのパフォーマンス(例:各タスク作成にかかった時間)やデータセットのカバレッジを追跡するダッシュボードを維持します。

  • 受け入れ基準: タスクは、レビューを通過し、ブロッキング問題がない場合にのみ承認されます。厳格な品質チェックにより、次のことが保証されます:

    • 完全に承認されたタスクのみが生産データセットに含まれる

    • 部分的に受け入れられたまたは「十分良い」タスクは除外される
      この構造化されたレビュー プロセスにより、各タスクが洗練され、曖昧さがなく、大規模言語モデル(LLMs)のトレーニングや評価に適していることが保証されます。

  • タスクごとの複数の解答: トレーニングデータの多様性と堅牢性を向上させるために、各タスクは少なくとも3人の異なるSMEによって独立して解決されます。これにより、さまざまな解決スタイルが提供され、モデルが多様な推論アプローチから学習できるようになります。必要に応じて、タスクごとに必要な解答の数を設定することも可能です。

メタデータとコンテキストのキャプチャ

各タスクと解答の組み合わせには、以下を含む詳細なメタデータが付与され、下流の使用をサポートします:

  • ビルドと実行の指示

  • 言語バージョンと依存関係リスト

  • 時間と空間の複雑性分析(該当する場合)

  • エッジケースと予想される失敗モード

  • パフォーマンスチューニングのメモ

このメタデータは、再現性、簡単なフィルタリング、およびデータセットのスライス(例:難易度、長さ、バグの種類)に対するより良い制御を保証します。

自動および人間のQA

高い提出基準を維持するために二層のQAプロセスが適用されます:

  • サニティチェック: すべての提出物は、自動化されたパイプラインを通じて検証され、テストケースの実行、スタイルと構文のリント、各問題とその解答の一貫性の検証を行います。

  • ピアレビュー: 提出物は、別のSMEによるピアレビューを受け、正確性、明確さ、および定義された基準への準拠を確認します。意見の不一致は、最終決定前に構造化された仲裁を引き起こします。

  • スタイルとドキュメントのチェック: 機能的な正確性に加えて、各解答は慣用的なコーディングスタイルに従い、有用なコメントを含み、アンチパターンを避けます。これらのチェックは、開発者アシスタントやコード解説モデルの微調整に不可欠です。

2ndimage.png

モデル評価

データセットが確定したら、微調整後のモデルのパフォーマンスを評価するための構造化された評価フェーズに入ります。

微調整と初期評価

  • モデル統合: 顧客の基盤モデルまたは選択した基盤モデルを、キュレーションされたデータセットを使用して微調整します。これには:

    • 完全微調整

    • 指示調整

    • Few-shotプロンプト構築

    • 監督またはRLHFスタイルのトレーニング、文脈に応じて

  • ベンチマーク: モデルのパフォーマンスは次を用いて評価されます:

    • HumanEval、MBPP、CodeXGlueなどの標準ベンチマーク

    • HackerRankのASTRAベンチマーク、あなたのユースケースに合わせてカスタマイズ

    • あなたの運用ユースケースから派生したカスタムテストスイート

    • BLEU、正確一致精度、機能的正確性、レイテンシ、幻覚率など、あなたの目標に沿った評価指標

適切な公開ベンチマークが存在しないタスク(例:ドメイン固有の言語、リファクタリング)の場合、HackerRankは顧客と共同でカスタム評価スイートを設計し、意味のある評価を保証します。

評価設計(該当する場合)

オープンソースのベンチマークがユースケースを十分にカバーしない場合、カスタム評価スイートを開発します。これには:

  • 既存のコードベースからキュレーションされたタスクセット

  • HackerRank SMEによる手動評価のゴールドラベル

  • 可読性、安全性、テストカバレッジなど、ビジネス目標に合わせた指標

  • エッジケースと敵対的例

  • 将来の反復のための回帰安全なサブセット

パフォーマンスフィードバックループ

モデルが事前に定義された成功基準を満たさない場合、構造化されたフィードバックプロセスが開始されます。

  1. エラー分析: 定性的および定量的分析が行われ、次のことが含まれます:

    • 問題タイプ別の失敗ケースのクラスタリング

    • ラベルまたは出力に関する混同行列

    • コードの正確性の内訳(例:構文エラーとロジックバグ)

    • 必要に応じたモデル出力の人間によるレビュー

  2. 診断と帰属: パフォーマンスギャップの根本原因を特定し、それが次の結果によるかどうかを評価します:

    • データセットのカバレッジ不足

    • 曖昧なタスク指示

    • モデルのアンダーフィッティングまたはオーバーフィッティング

    • 評価の不一致

  3. データセットの反復: 特定された問題は次の方法で対処されます:

    • 既存のタスクの改善(例:不明瞭な問題の書き直し)

    • 弱点分野をターゲットに新しい例を追加

    • 解決スタイルやテストシナリオの多様化

継続的改善ループ

評価と調整のプロセスは反復的です:

  • モデルは最新のデータセットを使用して継続的に微調整されています。

  • 新しいモデルの出力はベンチマークと比較して再評価され、以前のバージョンと回帰テストされます。

  • データセットまたはモデルのバージョンは、次の条件を満たした場合にのみ展開が承認されます:

    • ターゲットの主要指標が達成されている

    • 二次指標に回帰が見られない

    • 顧客の承認を得ている

目標は、モデルの挙動とデータセットの設計の間のループを閉じることであり、投資したデータが実世界のパフォーマンスの測定可能な改善につながることを保証することです。

3rdimage.png

品質レビュー

納品前に、各データセットは構造化された多段階の品質レビューを受け、すべてのタスクと解決策が正確さ、明確さ、一貫性の基準を満たしていることを確認します。

最終人間レビュー

すべてのタスクと関連する解決策は、タスク作成に関与していなかった上級SMEレビュアーによる最終手動監査を受けます。この偏りのないチェックポイントは、データセット全体の整合性を保証します。

次の基準が検証されます:

  • ビジネスロジックと技術的正確性: このタスクは現実的で意味のあるプログラミングの課題を表していますか?すべての解決策は、述べられた問題に正しく対処していますか?

  • コードスタイルとフォーマット: 解決策は慣用的で読みやすく、言語固有のスタイル規則に沿っていますか?フォーマットは一貫しており、指導的ですか?

  • 説明の明確さと完全性: データセットにインラインコメントや外部説明が含まれている場合、それらはLLMが学習するのに明確で正確ですか?

  • テストカバレッジと実行挙動: エッジケースはテストされていますか?テストケースは正しい実装と誤った実装の両方を検証していますか?時間と空間の制約は守られていますか?

ルーブリックに基づく評価

レビュアーは、各タスクを主要な次元(例:明確さ、正確さ、完全性、フォーマット)に分解し、合格/不合格の基準とレビュアーノートを定義したスコアリングルーブリックを使用します。これにより、レビュアー間で一貫性のある透明な評価システムが提供されます。

  • 客観的なスコアリングは顧客の期待と整合します。

  • レビュアーノートは追跡性と継続的改善のために各タスクごとに記録されます。

紛争解決と仲裁

複数のレビュアーが意見を異にする場合:

  • 構造化された仲裁ワークフローが開始されます。

  • 各レビュアーは自分の評価と根拠を提示します。

  • SMEマネージャーが調停し、合意に達します。

  • すべての懸念が解決され、結果が記録された後にのみタスクが最終化されます。 

このプロセスは主観的な不一致を避け、未解決の問題を持つタスクが進行しないようにします。

バージョン管理と監査証跡

すべてのタスク編集、フィードバックサイクル、レビュアーコメント、承認は内部ツールを使用して追跡されます。

  • 変更履歴は各タスクごとに維持されます。

  • すべてのレビューはタイムスタンプと属性付けが行われます。

  • タスクの進化過程と理由を示す完全な改訂履歴がリクエストに応じて提供されます。

ツールと自動化

人間のレビュアーがプロセスをリードしますが、最終的な自動化の段階も実行され、次のことを行います:

  • テストケースと実行時の挙動を再検証する

  • フォーマットのずれやファイルの不整合を検出する

整合性ハッシュ(例:SHA-256)を検証し、再現性をサポートします。

4thimage.png

データセット配信

データセットがすべての品質チェックに合格し、必要な承認を受けた後、HackerRankは安全で検証可能な配信プロセスを開始します。配信のワークフローは、追跡性、再現性、およびMLパイプラインとのシームレスな統合を目的としています。

パッケージングと最終化

配信前に、データセットのすべてのコンポーネントがパッケージ化され、持ち運びや検証、自己完結性が確保されます。

  • 署名済みコンテンツ

    • すべてのタスク、ソリューション、およびメタデータはQAプロセスを通じて承認されています。

    • 該当するテストファイル、ビルドスクリプト、および実行時の指示が含まれています(該当する場合)。

    • 必要に応じてタスクからSMEへの帰属が含まれます(必要に応じて匿名化)。

  • バージョニングと整合性

    • データセットは、構造化されたアーカイブ(例:.tar.gz、.zip)としてパッケージ化され、一貫したファイルパスを持ちます。

    • 整合性ハッシュ(例:SHA-256)がすべてのファイルとアーカイブ全体に含まれています。

    • データセットのバージョン間の変更追跡のためのGitベースの差分。

  • ドキュメントバンドル

    • データセットの構造と使用方法の説明を含むREADMEファイル。

    • データスキーマまたはアノテーションフォーマットの定義が含まれています。

    • セキュリティノートと取り扱い指示が記録されています。

配信チャネル

HackerRankは複数の安全で企業準拠の配信チャネルをサポートしています:

  • 暗号化されたクラウドハンドオフ(例:AWS S3事前署名URL、GCSセキュアバケット、Azure Blobリンク)

  • 顧客指定の安全なFTPまたはVPNエンドポイント

すべての配信は記録され追跡可能です。

顧客のウォークスルー

リクエストに応じて、HackerRankはあなたのチームとともにウォークスルーセッションを提供し:

  • データセットの構造と評価設定をレビュー

  • メタデータ、ラベリング規則、または予想される使用パターンを明確化

  • データサイエンティストやMLエンジニアからの統合に関する質問に対応

  • 今後のデータセットの反復のためのフィードバックを収集

アーカイブと保持

配信が確認されたら:

  • HackerRankは、データセットと配信ログのコピーを30日から90日間(設定可能)保持します。

  • 保持期間終了後、特に合意がない限り、データセットは安全に削除されます。

  • 正式な配信完了報告書が発行され、以下を含みます:

    • 配信のタイムスタンプ

    • 整合性検証記録

    • QAカバレッジの概要