0
0

[BigQuery API(V2)] JavaでBigQuery ML モデルの情報を取得する

Posted at

BigQuery API V2(Java)を使用して、
BigQueryMLモデルの情報を取得する方法
についてご紹介します。

BigQuery ML
BigQuery上で機械学習モデル(ML)を作成、評価、実行ができるサービスです。
専門知識がなくとも機械学習ができるようになっています。


MLモデル取得にはデータセットに対しIAM権限が付与されている必要があります。

権限付与に関しては
⧉[BigQuery API(V2)] JavaでBigQueryを使う(2.権限付与)
を参照ください。

APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[BigQuery API(V2)] JavaでBigQueryを使う
を参照ください。

No 目次
1 モデル一覧を取得
1 スコープ
2 実行
3 レスポンスの内容
2 モデルを取得
1 スコープ
2 実行
3 レスポンスの内容

1. モデル一覧を取得

指定したデータセットのMLモデル一覧を取得します。

1.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

BigqueryScopes.BIGQUERY
BigqueryScopes.CLOUD_PLATFORM
BigqueryScopes.CLOUD_PLATFORM_READ_ONLY
https://www.googleapis.com/auth/bigquery.readonly

⧉[BigQuery API(V2)] JavaでBigQueryを使う(3.2. BigQueryインスタンスを取得)
でスコープを指定してください。

1.2. 実行

public static void main(String[] args) throws Exception{
    Bigquery bigquery = getBigquery();
    Bigquery.Models models = bigquery.models();
    
    Bigquery.Models.List list = models.list("プロジェクトID","データセットID");
    
    ListModelsResponse res = list.execute();
    System.out.println(res);
}

1.2.1. HTTPリクエスト

GET: https://bigquery.googleapis.com/bigquery/v2/projects/{プロジェクトID}/datasets/{データセットID}/models
が実行されます。

1.2.2. クエリパラメータ

Bigquery.Models.Listのsetメソッドにより、クエリパラメータを追加できます。

メソッド 引数 説明
setMaxResults Integer 結果の最大数
setPageToken String 取得するページトークン

1.3. レスポンスの内容

ListModelsResponse

メソッド 戻り値 説明
getNextPageToken String 次のページトークン
getModels List<Model> モデルリスト

Model

メソッド 戻り値 説明
getEtag String ハッシュ値
getModelReference ModelReference モデルの一意の識別子
getCreationTime Long モデルが作成された時刻(ミリ秒)
getLastModifiedTime Long モデルが最後に変更された時刻(ミリ秒)
getDescription String 説明
getFriendlyName String 説明する名前
getLabels Map<String,String> モデルに関連付けられたラベル
getExpirationTime Long モデルの有効期限が切れる時刻(ミリ秒)
getLocation String モデルが存在する地理的位置
getEncryptionConfiguration EncryptionConfiguration カスタム暗号化構成の情報
getModelType ModelType(enum) モデルリソースのタイプ
getTrainingRuns List<TrainingRun> トレーニング実行の情報
getFeatureColumns List<StandardSqlField> モデル推論用の入力特徴列
getLabelColumns List<StandardSqlField> モデルのトレーニングに使用された列のラベル
getTransformColumns List<TransformColumn> トレーニング情報
getHparamSearchSpaces HparamSearchSpaces ハイパーパラメータ検索スペース
getDefaultTrialId Long デフォルトのTrialId
getHparamTrials List<HparamTuningTrial> TrialIdでソートされたハイパーパラメータ調整モデル情報
getOptimalTrialIds List<Long> 単一目的のハイパーパラメータ調整モデルの場合のTrialIdリスト
getRemoteModelInfo RemoteModelInfo リモートモデル情報

ModelReference

メソッド 戻り値 説明
getProjectId String プロジェクトID
getDatasetId String データセットID
getModelId String モデルID

EncryptionConfiguration

メソッド 戻り値 説明
getKmsKeyName String CloudKMS暗号化キーの説明

TrainingRun

メソッド 戻り値 説明
getTrainingOptions TrainingOptions トレーニングオプション情報
getStartTime String トレーニング実行の開始時刻
getResults List<IterationResult> 各反復実行の出力
getEvaluationMetrics EvaluationMetrics 評価データに対する評価メトリクス
getDataSplitResult DataSplitResult トレーニング実行のデータ分割結果
getModelLevelGlobalExplanation GlobalExplanation モデルレベルの主要な機能の情報
getClassLevelGlobalExplanations List<GlobalExplanation> クラスレベルの主要な機能の情報
getVertexAiModelId String VertexAIモデルレジストリ内のモデルID
getVertexAiModelVersion String VertexAIモデルレジストリ内のモデルバージョン

TrainingOptions

メソッド 戻り値 説明
getMaxIterations Long トレーニングの最大反復数
getLossType LossType(enum) トレーニングの実行中に使用される損失関数のタイプ
getLearnRate Double トレーニングでの学習率
getL1Regularization Double L1正則化係数
getL2Regularization Double L2正則化係数
getMinRelativeProgress Double トレーニング停止とする精度
getWarmStart Boolean 最後のチェックポイントからモデルをトレーニングするか
getEarlyStop Boolean 損失がこれ以上大幅に改善しない場合に早期に停止するか
getInputLabelColumns List<String> トレーニングデータの入力ラベル列の名前
getDataSplitMethod DataSplitMethod(enum) トレーニングと評価のためのデータ分割タイプ
getDataSplitEvalFraction Double 入力データ全体に対する評価データの割合
getDataSplitColumn String データを分割する列
getLearnRateStrategy LearnRateStrategy(enum) 現在の反復の学習率を決定する戦略
getInitialLearnRate Double ライン探索学習率戦略の初期学習率
getLabelClassWeights Map<String,Double> トレーニングデータのバランスを再調整するためのラベル
getUserColumn String 行列分解モデルに指定されたユーザー列
getItemColumn String 行列分解モデルに指定された項目列
getDistanceType DistanceType(enum) クラスタリングモデルの距離タイプ
getNumClusters Long クラスタリングモデルのクラスターの数
getModelUri String モデルURI
getOptimizationStrategy OptimizationStrategy(enum) 線形回帰モデルをトレーニングするための最適化戦略
getHiddenUnits List<Long> dnnモデルの隠しユニット
getBatchSize Long dnnモデルのバッチサイズ
getDropout Double dnnモデルのドロップアウト確率
getMaxTreeDepth Long ブーストされたツリーモデルのツリーの最大深さ
getSubsample Double ブーストされたツリーモデルの過学習を防ぐために、トレーニングデータの一部をサブサンプリング
getMinSplitLoss Double ブーストされたツリーモデルの最小分割損失
getBoosterType BoosterType(enum) ブーストされたツリーモデルのブースタータイプ
getNumParallelTree Long ブーストされたツリーモデルの各反復中に構築された並列ツリーの数
getDartNormalizeType DartNormalizeType(enum) Dartboosterを使用したブーストされたツリーモデルの正規化アルゴリズムのタイプ
getTreeMethod TreeMethod(enum) ブーストされたツリーモデルのツリー構築アルゴリズム
getMinTreeChildWeight Long ブーストされたツリーモデルの子に必要なインスタンスの重みの最小合計
getColsampleBytree Double ブーストされたツリーモデルの各ツリーを構築するときの列のサブサンプル比
getColsampleBylevel Double ブーストされたツリーモデルの各レベルの列のサブサンプル比
getColsampleBynode Double ブーストされたツリーモデルの各ノードの列のサブサンプル比
getNumFactors Long 行列分解モデルに指定された因数の数
getFeedbackType FeedbackType(enum) 行列分解に実行するアルゴリズムを指定するフィードバックタイプ
getWalsAlpha Double 暗黙的なフィードバックタイプが指定されている場合の行列因数分解のハイパーパラメーター
getKmeansInitializationMethod KmeansInitializationMethod(enum) kmeansアルゴリズムの重心を初期化するために使用されるメソッド
getKmeansInitializationColumn String kmeansアルゴリズムの初期重心を提供するために使用される列
getTimeSeriesTimestampColumn String ARIMAモデルの時系列タイムスタンプとして指定される列
getTimeSeriesDataColumn String ARIMAモデルの時系列データとして指定する列
getAutoArima Boolean 自動ARIMAを有効にするか
getNonSeasonalOrder ArimaOrder ARIMAモデルの非季節部分の仕様
getDataFrequency DataFrequency(enum) 時系列のデータ頻度
getCalculatePValues Boolean モデルに対してp値検定を計算するか
getIncludeDrift Boolean ARIMAモデルをフィッティングするときにドリフトを含めるか
getHolidayRegion HolidayRegion(enum) 時系列モデリングで休日が考慮される地理的地域
getHolidayRegions List<HolidayRegion(enum)> 時系列モデリングに使用される地理的地域のリスト
getTimeSeriesIdColumn String ARIMAモデルのトレーニング中に使用された時系列ID列
getTimeSeriesIdColumns List<String> ARIMAモデルのトレーニング中に使用された時系列ID列
getHorizon Long 予測する必要がある今後の期間の数
getAutoArimaMaxOrder Long 非季節性のpとqの合計の最大値
getAutoArimaMinOrder Long 非季節性のpとqの合計の最小値
getNumTrials Long このハイパーパラメータ調整ジョブを実行するための試行回数
getMaxParallelTrials Long 並行して実行する試行の最大数
getHparamTuningObjectives List<HparamTuningObjective(enum)> ハイパーパラメータを最適化するターゲット評価メトリクス
getDecomposeTimeSeries Boolean 時系列の分解を実行して結果を保存するか
getCleanSpikesAndDips Boolean 入力時系列のスパイクとディップをクリーンアップするか
getAdjustStepChanges Boolean ステップ変化を検出して入力時系列でデータ調整をするか
getEnableGlobalExplain Boolean トレーニング中にグローバル説明を有効にするか
getSampledShapleyNumPaths Long サンプリングされたShapleyExplainメソッドのパスの数
getIntegratedGradientsNumSteps Long 統合勾配Explain法の積分ステップの数
getCategoryEncodingMethod EncodingMethod(enum) カテゴリ特徴エンコード方式
getTfVersion String Dockerイメージを使用して外部モデルをトレーニングするTFバージョン
getInstanceWeightColumn String トレーニングデータのインスタンスの重み列の名前
getTrendSmoothingWindowSize Long トレンドコンポーネントのスムージングウィンドウサイズ
getTimeSeriesLengthFraction Double 時系列トレンドコンポーネントのモデル化に使用される時系列の内挿された長さの割合
getMinTimeSeriesLength Long 時系列の傾向コンポーネントのモデル化に使用される時系列内の時点の最小数
getMaxTimeSeriesLength Long 時系列の傾向コンポーネントのモデル化に使用できる時系列内の時点の最大数
getXgboostVersion String XGBoostモデルのトレーニング用にユーザーが選択したXGBoostバージョン
getApproxGlobalFeatureContrib Boolean グローバルExplainのXGBoostモデル説明で近似特徴寄与法を使用するか
getFitIntercept Boolean モデルのトレーニング中にモデルに切片を含める必要があるか
getNumPrincipalComponents Long PCAモデルに保持する主成分の数
getPcaExplainedVarianceRatio Double PCAモデルによって指定される必要がある累積説明分散の最小比率
getScaleFeatures Boolean 特徴の標準偏差を除算して特徴の値をスケーリングするか
getPcaSolver PcaSolver(enum) PCAのソルバー
getAutoClassWeights Boolean 各ラベルの人気に基づいてクラスの重みを自動的に計算するか
getActivationFn String ニューラルネットの活性化機能
getOptimizer String ニューラルネットのトレーニングに使用されるオプティマイザー
getBudgetHours Double AutoMLトレーニングの予算の時間単位
getStandardizeFeatures Boolean 数値特徴を標準化するか
getL1RegActivation Double 活性化に対するL1正則化係数
getModelRegistry ModelRegistry(enum) モデルレジストリ
getVertexAiModelVersionAliases List<String> VertexAIモデルレジストリに適用するバージョンエイリアス

ArimaOrder

メソッド 戻り値 説明
getP Long 自己回帰部分の順序
getD Long 差分部分の順序
getQ Long 移動平均部分の順序

IterationResult

メソッド 戻り値 説明
getIndex Integer 反復のインデックス(0開始)
getDurationMs Long 反復の実行にかかった時間(ミリ秒単位)
getTrainingLoss Double 反復の終了時にトレーニングデータに基づいて計算された損失
getEvalLoss Double 反復の終了時に評価データに基づいて計算された損失
getLearnRate Double この反復に使用される学習率
getClusterInfos List<ClusterInfo> クラスタリングモデルの上位クラスターに関する情報
getArimaResult ArimaResult arimaの結果
getPrincipalComponentInfos List<PrincipalComponentInfo> 主成分の情報

ClusterInfo

メソッド 戻り値 説明
getCentroidId Long 重心ID
getClusterRadius Double クラスター半径
getClusterSize Long クラスターに割り当てられたポイントの総数

ArimaResult

メソッド 戻り値 説明
getArimaModelInfo List<ArimaModelInfo> arimaモデルの情報
getSeasonalPeriods List<SeasonalPeriodType(enum)> 季節限定の情報

ArimaModelInfo

メソッド 戻り値 説明
getNonSeasonalOrder ArimaOrder 季節外の注文
getArimaCoefficients ArimaCoefficients arima係数
getArimaFittingMetrics ArimaFittingMetrics arimaフィッティングメトリクス
getHasDrift Boolean arimaモデルがドリフトに装着されているか
getTimeSeriesId String timeSeriesId
getTimeSeriesIds List<String> timeSeriesIdsのタプル
getSeasonalPeriods List<SeasonalPeriodType(enum)> 季節限定の情報
getHasHolidayEffect Boolean holiday_effectは時系列分解結果の一部か
getHasSpikesAndDips Boolean spikes_and_dipsは時系列分解結果の一部か
getHasStepChanges Boolean step_changesは時系列分解結果の一部か

ArimaCoefficients

メソッド 戻り値 説明
getAutoRegressiveCoefficients List<Double> 自己回帰係数
getMovingAverageCoefficients List<Double> 移動平均係数
getInterceptCoefficient Double インターセプト係数

ArimaFittingMetrics

メソッド 戻り値 説明
getLogLikelihood Double 対数尤度
getAic Double AIC
getVariance Double 分散

PrincipalComponentInfo

メソッド 戻り値 説明
getPrincipalComponentId Long 主コンポーネントID
getExplainedVariance Double 分散の主成分
getExplainedVarianceRatio Double 合計説明分散
getCumulativeExplainedVarianceRatio Double 累積説明分散比

EvaluationMetrics

メソッド 戻り値 説明
getRegressionMetrics RegressionMetrics 回帰モデルおよび明示的フィードバックタイプの行列因数分解モデルの情報
getBinaryClassificationMetrics BinaryClassificationMetrics バイナリ分類/分類子モデルの情報
getMultiClassClassificationMetrics MultiClassClassificationMetrics マルチクラス分類/分類子モデルの情報
getClusteringMetrics ClusteringMetrics クラスタリングモデルの情報
getRankingMetrics RankingMetrics 暗黙的フィードバックタイプの行列分解モデルの情報
getArimaForecastingMetrics ArimaForecastingMetrics ARIMAモデルの情報
getDimensionalityReductionMetrics DimensionalityReductionMetrics 評価メトリクスの情報

RegressionMetrics

メソッド 戻り値 説明
getMeanAbsoluteError Double 平均絶対誤差
getMeanSquaredError Double 平均二乗誤差
getMeanSquaredLogError Double 平均二乗対数誤差
getMedianAbsoluteError Double 中央値絶対誤差
getRSquared Double R^2スコア

BinaryClassificationMetrics

メソッド 戻り値 説明
getAggregateClassificationMetrics AggregateClassificationMetrics 分類メトリック集約情報
getBinaryConfusionMatrixList List<BinaryConfusionMatrix> 複数のしきい値での二値混同行列
getPositiveLabel String 陽性クラスを表すラベル
getNegativeLabel String ネガティブクラスを表すラベル

AggregateClassificationMetrics

メソッド 戻り値 説明
getPrecision Double 実際の精度
getRecall Double 再現率
getAccuracy Double 精度
getThreshold Double メトリクスが計算されるしきい値
getF1Score Double 再現率と適合率の平均
getLogLoss Double 対数損失
getRocAuc Double ROC曲線の下の領域

BinaryConfusionMatrix

メソッド 戻り値 説明
getPositiveClassThreshold Double 次の各メトリックを計算するときに使用されるしきい値
getTruePositives Long 真として予測された真のサンプルの数
getFalsePositives Long 真として予測された偽サンプルの数
getTrueNegatives Long 偽として予測された真のサンプルの数
getFalseNegatives Long 偽として予測された偽サンプルの数
getPrecision Double 正の実際のラベルを持つ実際の正の予測の割合
getRecall Double 陽性予測が与えられた実際の陽性ラベルの割合
getF1Score Double 再現率と適合率の均等加重平均
getAccuracy Double 正しいラベルが与えられた予測の割合

MultiClassClassificationMetrics

メソッド 戻り値 説明
getAggregateClassificationMetrics AggregateClassificationMetrics 分類メトリックを集約情報
getConfusionMatrixList List<ConfusionMatrix> さまざまな閾値での混同行列

ConfusionMatrix

メソッド 戻り値 説明
getConfidenceThreshold Double 混同行列のエントリを計算するときに使用される信頼しきい値
getRows List<Row> 行情報

Row

メソッド 戻り値 説明
getActualLabel String この行の元のラベル
getEntries List<BigqueryEntry> 予測されたラベル分布を説明する情報

BigqueryEntry

メソッド 戻り値 説明
getPredictedLabel String 予測されたラベル
getItemCount Long このラベルとして予測されるアイテムの数

ClusteringMetrics

メソッド 戻り値 説明
getDaviesBouldinIndex Double デイビス・ボールディン指数
getMeanSquaredDistance Double 各サンプル間のクラスター重心までの二乗距離の平均
getClusters List<Cluster> すべてのクラスター情報

Cluster

メソッド 戻り値 説明
getCentroidId Long 重心ID
getFeatureValues List<FeatureValue> このクラスターの非常に多様な特徴の値
getCount Long 割り当てられたトレーニングデータ行の数

FeatureValue

メソッド 戻り値 説明
getFeatureColumn String 特徴列の名前
getNumericalValue Double 数値的な特徴値
getCategoricalValue CategoricalValue カテゴリ特徴量

CategoricalValue

メソッド 戻り値 説明
getCategoryCounts List<CategoryCount> カテゴリ特徴のすべてのカテゴリの数

CategoryCount

メソッド 戻り値 説明
getCategory String カテゴリの名前
getCount Long クラスター内のカテゴリーに一致するトレーニングサンプルの数

RankingMetrics

メソッド 戻り値 説明
getMeanAveragePrecision Double すべてのユーザーの精度平均
getMeanSquaredError Double 評価からの出力
getNormalizedDiscountedCumulativeGain Double 予測された信頼度から計算されたランキングの良さを判断するための指標
getAverageRank Double ランキングの良さの指標平均

ArimaForecastingMetrics

メソッド 戻り値 説明
getArimaSingleModelForecastingMetrics List<ArimaSingleModelForecastingMetrics> メトリックセットの情報

ArimaSingleModelForecastingMetrics

メソッド 戻り値 説明
getNonSeasonalOrder ArimaOrder 季節外のご注文
getArimaFittingMetrics ArimaFittingMetrics arimaフィッティングメトリクス
getHasDrift Boolean arimaモデルにドリフトが装着されているか
getTimeSeriesId String timeSeriesId
getTimeSeriesIds List<String> timeSeriesIdsのタプル
getSeasonalPeriods List<SeasonalPeriodType(enum)> 季節限定の情報
getHasHolidayEffect Boolean holiday_effectは時系列分解結果の一部か
getHasSpikesAndDips Boolean spikes_and_dipsは時系列分解結果の一部か
getHasStepChanges Boolean step_changesは時系列分解結果の一部か

DimensionalityReductionMetrics

メソッド 戻り値 説明
getTotalExplainedVarianceRatio Double 選択した主成分によって説明される分散の合計パーセンテージ

DataSplitResult

メソッド 戻り値 説明
getTrainingTable TableReference 分割後の学習データのテーブル参照
getEvaluationTable TableReference 分割後の評価データの表参照
getTestTable TableReference 分割後のテストデータのテーブル参照

GlobalExplanation

メソッド 戻り値 説明
getExplanations List<Explanation> トップのグローバル説明のリスト
getClassLabel String このグローバル説明セットのクラスラベル

Explanation

メソッド 戻り値 説明
getFeatureName String 完全な機能名
getAttribution Double 機能の帰属

TransformColumn

メソッド 戻り値 説明
getName String 列の名前
getType StandardSqlDataType 変換後の列のデータ型
getTransformSql String 列変換で使用されるSQL式

HparamSearchSpaces

メソッド 戻り値 説明
getLearnRate DoubleHparamSearchSpace トレーニングジョブの学習率
getL1Reg DoubleHparamSearchSpace L1正則化係数
getL2Reg DoubleHparamSearchSpace L2正則化係数
getNumClusters IntHparamSearchSpace K平均法のクラスターの数
getNumFactors IntHparamSearchSpace トレーニングする潜在的な要素の数
getHiddenUnits IntArrayHparamSearchSpace ニューラルネットワークモデルの隠れユニット
getBatchSize IntHparamSearchSpace ミニバッチのサンプルサイズ
getDropout DoubleHparamSearchSpace dnnモデルのトレーニングとdartboosterを使用したブーストされたツリーモデルのドロップアウト確率
getMaxTreeDepth IntHparamSearchSpace ブーストされたツリーモデルのツリーの最大深さ
getSubsample DoubleHparamSearchSpace トレーニングデータをサブサンプリングしてツリー情報
getMinSplitLoss DoubleHparamSearchSpace ブーストされたツリーモデルの最小分割損失
getWalsAlpha DoubleHparamSearchSpace 暗黙的なフィードバックタイプが指定されている場合の行列因数分解のハイパーパラメーター
getBoosterType StringHparamSearchSpace ブーストされたツリーモデルのブースタータイプ
getNumParallelTree IntHparamSearchSpace ブーストされたツリーモデルの並列ツリーの数
getDartNormalizeType StringHparamSearchSpace ブーストされたツリーモデルのDart正規化タイプ
getTreeMethod StringHparamSearchSpace ブーストされたツリーモデルのツリー構築アルゴリズム
getMinTreeChildWeight IntHparamSearchSpace ブーストされたツリーモデルの子に必要なインスタンスの重みの最小合計
getColsampleBytree DoubleHparamSearchSpace ブーストツリーモデルの各ツリーを構築するときの列のサブサンプル比
getColsampleBylevel DoubleHparamSearchSpace ブーストされたツリーモデルの各レベルの列のサブサンプル比
getColsampleBynode DoubleHparamSearchSpace ブーストされたツリーモデルの各ノード(分割)の列のサブサンプル比
getActivationFn StringHparamSearchSpace ニューラルネットワークモデルの活性化関数
getOptimizer StringHparamSearchSpace TFモデルのオプティマイザー

DoubleHparamSearchSpace

メソッド 戻り値 説明
getRange DoubleRange Doubleハイパーパラメータの範囲
getCandidates DoubleCandidates Doubleハイパーパラメータの候補

DoubleRange

メソッド 戻り値 説明
getMin Double Doubleパラメータの最小値
getMax Double Doubleパラメータの最大値

DoubleCandidates

メソッド 戻り値 説明
getCandidates List<Double> Doubleパラメーターの候補

IntHparamSearchSpace

メソッド 戻り値 説明
getRange IntRange Intハイパーパラメータの範囲
getCandidates IntCandidates Intハイパーパラメータの候補

IntRange

メソッド 戻り値 説明
getMin Long Intパラメータの最小値
getMax Long Intパラメータの最大値

IntCandidates

メソッド 戻り値 説明
getCandidates List<Long> Intパラメータの候補

IntArrayHparamSearchSpace

メソッド 戻り値 説明
getCandidates List<IntArray> Int配列パラメータの候補

IntArray

メソッド 戻り値 説明
getElements List<Long> Int配列内の要素

StringHparamSearchSpace

メソッド 戻り値 説明
getCandidates List<String> 小文字の文字列または列挙パラメータの候補

HparamTuningTrial

メソッド 戻り値 説明
getTrialId Long トライアルID
getStartTimeMs Long 裁判の開始時刻
getEndTimeMs Long 裁判の終了時刻
getHparams TrainingOptions トライアル用に選択されたハイパーパラメーター
getEvaluationMetrics EvaluationMetrics トライアルの評価指標の情報
getStatus TrialStatus(enum) 裁判の状況
getErrorMessage String FAILEDおよびINFEASIBLEトライアルのエラーメッセージ
getTrainingLoss Double トライアル終了時にトレーニングデータに基づいて計算された損失
getEvalLoss Double ​トライアル終了時の評価データに基づいて計算された損失
getHparamTuningEvaluationMetrics EvaluationMetrics 評価データに基づいて計算された情報

RemoteModelInfo

メソッド 戻り値 説明
getConnection String リモートモデルのユーザー指定の接続オブジェクトの完全修飾名
getMaxBatchingRows Long リモートサービスに送信される各バッチの最大行数
getRemoteModelVersion String LLMのモデルバージョン
getEndpoint String リモートモデルのエンドポイント
getRemoteServiceType RemoteServiceType(enum) リモートモデルのリモートサービスタイプ

StandardSqlField

メソッド 戻り値 説明
getName String 名前
getType StandardSqlDataType パラメータのタイプ

StandardSqlDataType

メソッド 戻り値 説明
getTypeKind TypeKind(enum) トップレベルのタイプ
getArrayElementType StandardSqlDataType 【getTypeKind()が"ARRAY"の場合】
配列の要素の型
getStructType StandardSqlStructType 【getTypeKind()が"STRUCT"の場合】
構造体のフィールド

StandardSqlStructType

メソッド 戻り値 説明
getFields List<StandardSqlField> 構造体のフィールド

TypeKind

定義値 内容
TYPE_KIND_UNSPECIFIED 無効なタイプ
STRING 文字列
BYTES バイト(base64文字列としてエンコード)
INT64 8byte整数(10進数の文字列としてエンコード)
NUMERIC 16byte整数(10進数の文字列としてエンコード)
BIGNUMERIC 32byte整数(10進数の文字列としてエンコード)
BOOL 真偽値
FLOAT64 浮動小数点数(数値または文字列「NaN」、「Infinity」、「-Infinity」としてエンコード
TIMESTAMP タイムスタンプ
DATE 日付
TIME 時間
DATETIME 日付時刻
GEOGRAPHY 地理空間データ(WKTとしてエンコード)
ARRAY 配列型(Type.array_typeと一致するタイプのリストとしてエンコード)
STRUCT 構造体型(Type.struct_type[i]型のフィールドを持つリストとしてエンコード)
JSON JSON文字列(tabledata.listが使用)

ModelType

定義値 内容
MODEL_TYPE_UNSPECIFIED デフォルト値
LINEAR_REGRESSION 線形回帰モデル
LOGISTIC_REGRESSION ロジスティック回帰ベースの分類モデル
KMEANS K平均法クラスタリングモデル
MATRIX_FACTORIZATION 行列分解モデル
DNN_CLASSIFIER DNN分類子モデル
TENSORFLOW インポートされたTensorFlowモデル
DNN_REGRESSOR DNNリグレッサーモデル
XGBOOST インポートされたXGBoostモデル
BOOSTED_TREE_REGRESSOR ブーストされたツリーリグレッサーモデル
BOOSTED_TREE_CLASSIFIER ブーストされたツリー分類子モデル
ARIMA アリマモデル
AUTOML_REGRESSOR AutoMLTables回帰モデル
AUTOML_CLASSIFIER AutoMLTables分類モデル
PCA 主成分分析モデル
DNN_LINEAR_COMBINED_CLASSIFIER 広くて深い分類器モデル
DNN_LINEAR_COMBINED_REGRESSOR 広くて深い回帰モデル
AUTOENCODER オートエンコーダーのモデル
ARIMA_PLUS ARIMAモデルの新しい名前
ARIMA_PLUS_XREG 外部リグレッサーを使用したARIMA
RANDOM_FOREST_REGRESSOR ランダムフォレスト回帰モデル
RANDOM_FOREST_CLASSIFIER ランダムフォレスト分類子モデル
TENSORFLOW_LITE インポートされたTensorFlowLiteモデル
ONNX インポートされたONNXモデル

LossType

定義値 内容
LOSS_TYPE_UNSPECIFIED デフォルト値
MEAN_SQUARED_LOSS 平均二乗損失
MEAN_LOG_LOSS ロジスティック回帰に使用される平均対数損失

DataSplitMethod

定義値 内容
DATA_SPLIT_METHOD_UNSPECIFIED デフォルト値
RANDOM データをランダムに分割
CUSTOM ユーザーが指定したタグを使用してデータを分割
SEQUENTIAL データを順番に分割
NO_SPLIT データ分割はスキップ
AUTO_SPLIT データを自動的に分割

LearnRateStrategy

定義値 内容
LEARN_RATE_STRATEGY_UNSPECIFIED デフォルト値
LINE_SEARCH 直線探索を使用
CONSTANT 一定の学習率を使用

DistanceType

定義値 内容
DISTANCE_TYPE_UNSPECIFIED デフォルト値
EUCLIDEAN エクリッド距離
COSINE コサイン距離

OptimizationStrategy

定義値 内容
OPTIMIZATION_STRATEGY_UNSPECIFIED デフォルト値
BATCH_GRADIENT_DESCENT 反復バッチ勾配降下法アルゴリズムを使用
NORMAL_EQUATION 正規方程式を使用して線形回帰問題を解決

BoosterType

定義値 内容
BOOSTER_TYPE_UNSPECIFIED 未使用
GBTREE GBツリーブースター
DART ダーツブースター

DartNormalizeType

定義値 内容
DART_NORMALIZE_TYPE_UNSPECIFIED 未指定のダーツ正規化タイプ
TREE 新しい木は落ちた木と同じ重さになる
FOREST 新しい木の重さは落ちた木の合計と同じになる

TreeMethod

定義値 内容
TREE_METHOD_UNSPECIFIED 未指定のツリーメソッド
AUTO ヒューリスティックを使用して最速の方法を選択
EXACT まさに貪欲なアルゴリズム
APPROX 分位点スケッチと勾配ヒストグラムを使用した近似貪欲アルゴリズム
HIST 高速ヒストグラム最適化近似貪欲アルゴリズム

FeedbackType

定義値 内容
FEEDBACK_TYPE_UNSPECIFIED デフォルト値
IMPLICIT 暗黙的なフィードバック問題にはweighted-alsを使用
EXPLICIT 明示的なフィードバック問題には非重み付けalsを使用

KmeansInitializationMethod

定義値 内容
KMEANS_INITIALIZATION_METHOD_UNSPECIFIED 未使用
RANDOM 重心をランダムに初期化
CUSTOM kmeansInitializationColumn
KMEANS_PLUS_PLUS kmeans++で初期化

DataFrequency

定義値 内容
DATA_FREQUENCY_UNSPECIFIED デフォルト値
AUTO_FREQUENCY タイムスタンプから自動的に推測
YEARLY 年次データ
QUARTERLY 四半期データ
MONTHLY 月次データ
WEEKLY 週次データ
DAILY 毎日のデータ
HOURLY 時間ごとのデータ
PER_MINUTE 分ごとの日付

HolidayRegion

定義値 内容
HOLIDAY_REGION_UNSPECIFIED 未使用
GLOBAL グローバル
NA 北米
JAPAC 日本およびアジア太平洋地域:
EMEA ヨーロッパ、中東、アフリカ
LAC ラテンアメリカとカリブ海
AE アラブ首長国連邦
AR アルゼンチン
AT オーストリア
AU オーストラリア
BE ベルギー
BR ブラジル
CA カナダ
CH スイス
CL チリ
CN 中国
CO コロンビア
CS チェコスロバキア
CZ チェコ共和国
DE ドイツ
DK デンマーク
DZ アルジェリア
EC エクアドル
EE エストニア
EG エジプト
ES スペイン
FI フィンランド
FR フランス
GB イギリス
GR ギリシャ
HK 香港
HU ハンガリー
ID インドネシア
IE アイルランド
IL イスラエル
IN インド
IR イラン
IT イタリア
JP 日本
KR 韓国
LV ラトビア
MA モロッコ
MX メキシコ
MY マレーシア
NG ナイジェリア
NL オランダ
NO ノルウェー
NZ ニュージーランド
PE ペルー
PH フィリピン
PK パキスタン
PL ポーランド
PT ポルトガル
RO ルーマニア
RS セルビア
RU ロシア連邦
SA サウジアラビア
SE スウェーデン
SG シンガポール
SI スロベニア
SK スロバキア
TH タイ
TR トルコ
TW 台湾
UA ウクライナ
US アメリカ
VE ベネズエラ
VN ベトナム
ZA 南アフリカ

HparamTuningObjective

定義値 内容
HPARAM_TUNING_OBJECTIVE_UNSPECIFIED 未指定の評価指標
MEAN_ABSOLUTE_ERROR 平均絶対誤差
MEAN_SQUARED_ERROR 平均二乗誤差
MEAN_SQUARED_LOG_ERROR 平均二乗対数誤差
MEDIAN_ABSOLUTE_ERROR 平均絶対誤差
R_SQUARED R^2スコア
EXPLAINED_VARIANCE 差異
PRECISION 実際のラベルが正である実際の正の予測の割合の精度
RECALL 陽性予測が与えられた実際の陽性ラベルの割合の再現率
ACCURACY 正しいラベルが与えられた場合の予測の割合の精度
F1_SCORE F1スコアは再現率と適合率の平
LOG_LOSS 対数損失
ROC_AUC ROC曲線の下の領域
DAVIES_BOULDIN_INDEX デイビス・ボールディン指数
MEAN_AVERAGE_PRECISION 平均平均精度
NORMALIZED_DISCOUNTED_CUMULATIVE_GAIN 正規化された割引累積ゲイン
AVERAGE_RANK 平均ランク

EncodingMethod

定義値 内容
ENCODING_METHOD_UNSPECIFIED 未使用
ONE_HOT_ENCODING ワンホットエンコーディング
LABEL_ENCODING ラベルエンコーディング
DUMMY_ENCODING ダミーエンコーディング

PcaSolver

定義値 内容
UNSPECIFIED デフォルト値
FULL 完全自己分解
RANDOMIZED ランダム化されたSVD
AUTO 自動

ModelRegistry

定義値 内容
MODEL_REGISTRY_UNSPECIFIED デフォルト値
VERTEX_AI 頂点AI

SeasonalPeriodType

定義値 内容
SEASONAL_PERIOD_TYPE_UNSPECIFIED 季節限定
NO_SEASONALITY 季節性なし
DAILY 毎日、24
WEEKLY 毎週の期間、7
MONTHLY 毎月、30日または不定期
QUARTERLY 四半期、90日、または不定期
YEARLY 年間、365日、または不定期

TrialStatus

定義値 内容
TRIAL_STATUS_UNSPECIFIED デフォルト値
NOT_STARTED 予定されていますが、開始されていない
RUNNING 走行状態
SUCCEEDED 裁判は成功した
FAILED 裁判は失敗した
INFEASIBLE パラメータが無効なため、トライアルは実行できない
STOPPED_EARLY 有望ではないため、治験は早期に中止

RemoteServiceType

定義値 内容
REMOTE_SERVICE_TYPE_UNSPECIFIED 未使用
CLOUD_AI_TRANSLATE_V3 V3クラウドAI翻訳API
CLOUD_AI_VISION_V1 V1CloudAIVisionAPI
CLOUD_AI_NATURAL_LANGUAGE_V1 V1クラウドAI自然言語API

2. モデルを取得

指定したMLモデルのメタデータを取得します。

2.1. スコープ

このAPIを実行するには、以下のいずれかのスコープを指定してください。

BigqueryScopes.BIGQUERY
BigqueryScopes.CLOUD_PLATFORM
BigqueryScopes.CLOUD_PLATFORM_READ_ONLY
https://www.googleapis.com/auth/bigquery.readonly

⧉[BigQuery API(V2)] JavaでBigQueryを使う(3.2. BigQueryインスタンスを取得)
でスコープを指定してください。

2.2. 実行

モデルIDは、ModelReferenceのgetModelId()で取得できる値を使用します。

public static void main(String[] args) throws Exception{
    Bigquery bigquery = getBigquery();
    Bigquery.Models models = bigquery.models();
    
    Bigquery.Models.Get get = models.get("プロジェクトID","データセットID","モデルID");
    
    Model res = get.execute();
    System.out.println(res);
}

2.2.1. HTTPリクエスト

GET: https://bigquery.googleapis.com/bigquery/v2/projects/{プロジェクトID}/datasets/{データセットID}/models/{モデルID}
が実行されます。

2.2.2. クエリパラメータ

クエリパラメータはありません。

2.3. レスポンスの内容

Model

1.3. レスポンスの内容(Model)と同じです。



おしまい。。
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0