Select your cookie preferences

We use essential cookies and similar tools that are necessary to provide our site and services. We use performance cookies to collect anonymous statistics, so we can understand how customers use our site and make improvements. Essential cookies cannot be deactivated, but you can choose “Customize” or “Decline” to decline performance cookies.

If you agree, AWS and approved third parties will also use cookies to provide useful site features, remember your preferences, and display relevant content, including relevant advertising. To accept or decline all non-essential cookies, choose “Accept” or “Decline.” To make more detailed choices, choose “Customize.”

Sign in
Your Saved List Become a Channel Partner Sell in AWS Marketplace Amazon Web Services Home Help

Amazon Sagemaker

Amazon SageMaker is a fully-managed platform that enables developers and data scientists to quickly and easily build, train, and deploy machine learning models at any scale. With Amazon SageMaker, all the barriers and complexity that typically slow down developers who want to use machine learning are removed. The service includes models that can be used together or independently to build, train, and deploy your machine learning models.

product logo

Bayesian filtering Factor Analysis VBfFA Free trial

Latest Version:
0.1.0
Variational Bayesian filtering Factor Analysis (VBfFA) to estimate time-varying statistical factors of large set of multiple time-series

    Product Overview

    The variational Bayesian filtering factor analysis (VBfFA) algorithm/model is a filter with dimension-reduction, or rank-reduction, to extract a number of ever-evolving unobserved common factors, or signals from common sources, underlying and influencing a large number of related time-series. Relevant examples of time-series include: economic indicators in a nation, region, or international economic sector; prices of assets in a national, regional or global marketplace; performance score time-series related to a business marketing campaign; and time-series signals from an array of radar or sonar sensors tracking several moving targets. By applying (variational) Bayesian filtering (instead of traditional moving/rolling data windows for frequentist time-dependent analysis), the VBfFA algorithm is able to update predictions with only the newly arrived time-series data point (instead of all data points in the data window); and predict underlying changes in time-series early.

    Key Data

    Type
    Algorithm
    Fulfillment Methods
    Amazon SageMaker

    Highlights

    • WHY Bayesian filter? To estimate a “time-varying” or “time-dependent” statistic of time-series, traditional method is to use “moving/rolling data window” and/or “exponentially decayed time weights”. A straightforward and natural alternative is to use Bayesian framework: at each moment in time, using the last estimate as prior; conditional distribution of estimate (given statistical model for the estimate) as likelihood; and newly arrived/available time-series data point as observation. Then, the resulted posterior is a new estimate. In time-domain, such a Bayesian formulation is a filter.

    • WHY variational Bayes? The Bayesian filtering framework for estimating time-dependent statistics of time-series is straightforward and simple. The need of joint and conditional probability distribution functions, however, makes actual estimation complicated, difficult or even intractable. Discretized approximation, e.g. numerical particle filters, is computation-intensive and prone to cumulative errors in numerical distributions. A variational Bayes (VB) is an analytical approximation. After tedious derivation, a VB is fast, as long as the assumptions on distributions are appropriate.

    • WHAT next? In addition to a stand-alone filtering package for time-varying factor analysis on multiple time-series, the VBfFA algorithm will be employed as the underlying factor analysis engine of other machine learning packages here introduced earlier by i4cast LLC: LMDFM (long memory dynamic factor model); YWpcAR (Yule-Walker-PCA autoregressive model); LMVAR (long memory vector autoregressive model); and CTVARF (continuously trained vector autoregressive forecast model). We will introduce a published general-purpose multivariate variational Bayesian filter (VBF) algorithm as well.

    Not quite sure what you’re looking for? AWS Marketplace can help you find the right solution for your use case. Contact us

    Pricing Information

    Use this tool to estimate the software and infrastructure costs based your configuration choices. Your usage and costs might be different from this estimate. They will be reflected on your monthly AWS billing reports.

    Contact us to request contract pricing for this product.


    Estimating your costs

    Choose your region and launch option to see the pricing details. Then, modify the estimated price by choosing different instance types.

    Version
    Region

    Software Pricing

    Algorithm Training$0.10/hr

    running on ml.m5.xlarge

    Model Realtime Inference$0.10/hr

    running on ml.m5.xlarge

    Model Batch Transform$0.10/hr

    running on ml.m5.xlarge

    Infrastructure Pricing

    With Amazon SageMaker, you pay only for what you use. Training and inference is billed by the second, with no minimum fees and no upfront commitments. Pricing within Amazon SageMaker is broken down by on-demand ML instances, ML storage, and fees for data processing in notebooks and inference instances.
    Learn more about SageMaker pricing

    SageMaker Algorithm Training$0.23/host/hr

    running on ml.m5.xlarge

    SageMaker Realtime Inference$0.23/host/hr

    running on ml.m5.xlarge

    SageMaker Batch Transform$0.23/host/hr

    running on ml.m5.xlarge

    About Free trial

    Try this product for 120 days. There will be no software charges, but AWS infrastructure charges still apply. Free Trials will automatically convert to a paid subscription upon expiration.

    Algorithm Training

    For algorithm training in Amazon SageMaker, the software is priced based on hourly pricing that can vary by instance type. Additional infrastructure cost, taxes or fees may apply.
    InstanceType
    Algorithm/hr
    ml.m4.4xlarge
    $0.10
    ml.c5n.18xlarge
    $0.10
    ml.g4dn.4xlarge
    $0.10
    ml.m5.4xlarge
    $0.10
    ml.m4.16xlarge
    $0.10
    ml.m5.2xlarge
    $0.10
    ml.p3.16xlarge
    $0.10
    ml.g5.xlarge
    $0.10
    ml.g5.12xlarge
    $0.10
    ml.g4dn.2xlarge
    $0.10
    ml.g5.4xlarge
    $0.10
    ml.m4.2xlarge
    $0.10
    ml.c5.2xlarge
    $0.10
    ml.c4.2xlarge
    $0.10
    ml.g4dn.12xlarge
    $0.10
    ml.p4d.24xlarge
    $0.10
    ml.m4.10xlarge
    $0.10
    ml.m5.24xlarge
    $0.10
    ml.g4dn.xlarge
    $0.10
    ml.g5.48xlarge
    $0.10
    ml.g4dn.16xlarge
    $0.10
    ml.m5.12xlarge
    $0.10
    ml.p3dn.24xlarge
    $0.10
    ml.p2.16xlarge
    $0.10
    ml.c4.4xlarge
    $0.10
    ml.g5.8xlarge
    $0.10
    ml.m5.xlarge
    Vendor Recommended
    $0.10
    ml.c5.9xlarge
    $0.10
    ml.g5.16xlarge
    $0.10
    ml.m4.xlarge
    $0.10
    ml.c5.4xlarge
    $0.10
    ml.p3.8xlarge
    $0.10
    ml.c4.8xlarge
    $0.10
    ml.g4dn.8xlarge
    $0.10
    ml.p2.8xlarge
    $0.10
    ml.c5n.2xlarge
    $0.10
    ml.c5n.9xlarge
    $0.10
    ml.c5.18xlarge
    $0.10
    ml.g5.2xlarge
    $0.10
    ml.c5n.4xlarge
    $0.10
    ml.g5.24xlarge
    $0.10

    Usage Information

    Training

    The VBfFA algorithm is a factor analysis filter to extract a number of ever-evolving unobserved common factors, or signals from common sources, underlying and influencing a large number of related time-series data.

    The VBfFA algorithm takes, as input data, multiple time-series data contained in a CSV (comma separated value) data table, in a format of a CSV text-string or a CSV text-file. Each row of the data table is for values of an individual time-series (TS). Each column is for values of all time-series at a specific moment in time.

    Metrics

    Name
    Regex
    avg_fitvar
    avg_fitvar=(.*?);
    avg_aggvar
    avg_aggvar=(.*?);
    avg_zscore
    avg_zscore=(.*?);
    avg_bias
    avg_bias=(.*?);
    avg_loglik
    avg_loglik=(.*?);
    avg_qstat
    avg_qstat=(.*?);
    diff_avg_fitvar
    diff_avg_fitvar=(.*?);
    diff_avg_aggvar
    diff_avg_aggvar=(.*?);
    diff_avg_zscore
    diff_avg_zscore=(.*?);
    diff_avg_bias
    diff_avg_bias=(.*?);
    diff_avg_loglik
    diff_avg_loglik=(.*?);
    diff_avg_qstat
    diff_avg_qstat=(.*?);

    Channel specification

    Fields marked with * are required

    train

    *
    Training dataset
    Input modes: File
    Content types: text/csv
    Compression types: None

    model

    *
    Trained model dataset
    Input modes: File
    Content types: application/gzip
    Compression types: None

    Hyperparameters

    Fields marked with * are required

    num_factors

    *
    Number of factors in variational Bayesian filtering factor analysis VBfFA modeling
    Type: Integer
    Tunable: Yes

    error_reduct_target

    *
    Working as factor analysis output residual-to-specific error variance ratio target. Functioning as filter estimation-to-prediction error variance ratio target. Serving as filter estimation error variance reduction target. If targetting a lower ratio: larger error reduction, faster learning, likely over-fitting. If targetting a higher ratio: smaller error reduction, slower learning, likely under-fitting.
    Type: Continuous
    Tunable: Yes

    num_data_points

    *
    Assumed number of data points (Tp) of Bayesian prior in variational Bayesian filtering factor analysis. Note on exponential weight defined by Tp: Decay factor of exponential weight = Tp / (Tp + 1).
    Type: Integer
    Tunable: Yes

    num_va_iteration

    *
    Number of iterations of variational approximation estimate in VBfFA modeling
    Type: Integer
    Tunable: Yes

    len_moving_window

    *
    Length of moving/rolling time windows for data in time-varying frequentist model learning
    Type: Integer
    Tunable: Yes

    ts_standardization

    *
    Data point weighting method for time-series standardization. If 'win' or '...win[dow]...': Standardizing time-series with equally weighted data points in trailing window of length len_moving_window. If 'exp' or '...exp[onential]...': Standardizing time-series with exponential weights defined by num_data_points Tp.
    Type: Categorical
    Tunable: No

    len_leaveout_window

    *
    Length, if any, of leave-out time window, ending at last time-stamp of input vector time-series, containing data to be left out of VBfFA model fitting and inference, and to be used later for model vailation or test
    Type: Integer
    Tunable: No

    max_len_output_ts

    *
    Maximum length of variational Bayesian filtering factor analysis output time-series
    Type: Integer
    Tunable: No

    score_target_type

    *
    Type of vector time-series serving as VBfFA model prediction target in estimation of score time-series for evaluation of VBfFA model. If 's', 'S' or 'standardized': using input VTS rescaled to unit standard deviation. If 'o', 'O' or 'origional': using original input vector time-series VTS.
    Type: Categorical
    Tunable: No

    max_predict_step

    *
    Maximum steps of prediction in estimation of score time-series for evaluation of VBfFA model
    Type: Integer
    Tunable: No

    weight_dict

    *
    Non-negative weight levels to be applied to input or rescaled vector time-series to estimate aggregate score time-series for VBfFA model evaluation. weight_dict = None: positive uniform or equal weight. weight_dict['*']: non-negative default weight of time-series. Keys ts1id, ts2id, ...: labels of time-series in VTS.index, as keys of alternative weight levels applied to specified time-series.
    Type: FreeText
    Tunable: No

    max_num_ts_add_del

    *
    Maximum number of time-series added or deleted to be able to use/update, otherwise not to use/update, previously trained VBfFA model
    Type: Integer
    Tunable: No

    Model input and output details

    Input

    Summary

    The VBfFA algorithm takes, as input data, multiple time-series data contained in a CSV (comma separated value) data table, in a format of a CSV text-string or a CSV text-file.

    Each row of the data table is for values of an individual time-series (TS). Row header is the label or symbol of the time-series. Each column is for values of all time-series at a specific moment in time. Column header is the time-index or time-stamp of the moment.

    Input MIME type
    text/csv
    Sample input data

    Output

    Summary

    Outputs from VBfFA model are time-series of common factor scores, of variances of common factors, of factor loadings, of variances of factor loadings, and of variance of residual errors. Other outputs include time-series of variance-covariance matrix, etc.

    Outputs in format of CSV tables can be used to make quick review by using a spreadsheet application. Outputs in format of JSON strings can be used as input data for further analysis.

    Output MIME type
    text/csv, application/json
    Sample output data

    End User License Agreement

    By subscribing to this product you agree to terms and conditions outlined in the product End user License Agreement (EULA)

    Support Information

    Bayesian filtering Factor Analysis VBfFA

    For questions or call-back number, please send email to i4cast LLC at prod.i4cast@gmail.com.

    AWS Infrastructure

    AWS Support is a one-on-one, fast-response support channel that is staffed 24x7x365 with experienced and technical support engineers. The service helps customers of all sizes and technical abilities to successfully utilize the products and features provided by Amazon Web Services.

    Learn More

    Refund Policy

    We offer full refund for academic works. Other refunds are offered according to common practices.

    Customer Reviews

    There are currently no reviews for this product.
    View all