Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.

Amazon Forecast'ı kullanarak Snowflake'de zaman serisi tahminlerinizi otomatikleştirin

Bu gönderi, Snowflake, Inc.'den Andries Engelbrecht ve James Sun ile ortak bir işbirliğidir.

Bulut bilişim devrimi, işletmelerin kapasite planlaması veya veri saklama kısıtlamaları olmadan kurumsal ve kurumsal verileri yakalamasını ve saklamasını sağladı. Artık, çeşitli ve geniş boylamsal veri rezervleri ile şirketler, kısa vadeli ve uzun vadeli planlama kararları verirken daha iyi ve bilinçli kararlar almak için dijital varlıklarını kullanmanın yeni ve etkili yollarını giderek daha fazla bulabilmektedir. Zaman serisi tahmini, şirketlerin müşteri hizmetleri düzeylerini, çoğu zaman rekabet halinde olan optimum karlılık hedeflerine karşı dengelemeye yardımcı olmak için cerrahi planlama kararları vermelerine olanak tanıyan benzersiz ve temel bir bilimdir.

AWS'de bazen teknoloji ortağımızı seçen müşterilerle çalışıyoruz Kar taneciği bir bulut veri platformu deneyimi sunmak için. Yılların ve yılların geçmiş verilerini hatırlayabilen bir platforma sahip olmak güçlüdür - ancak bu verileri ileriye bakmak ve dünün kanıtlarını yarını planlamak için nasıl kullanabilirsiniz? Gerçeğin tek versiyonu olan Snowflake'de olup bitenlerin yalnızca mevcut olduğunu değil, aynı zamanda gelecek günler, haftalar veya aylar için olasılıklı bir tahmin sunan bitişik bir dizi silosuz veri olduğunu hayal edin.

İşbirliğine dayalı bir tedarik zincirinde, ortaklar arasında bilgi paylaşımı performansı iyileştirebilir, rekabet gücünü artırabilir ve boşa harcanan kaynakları azaltabilir. Geleceğe yönelik tahminlerinizi paylaşmak aşağıdakilerle kolaylaştırılabilir: Kar Tanesi Veri Paylaşımı, iş ortaklarınızla güvenli bir şekilde sorunsuz bir şekilde işbirliği yapmanıza ve iş içgörülerini belirlemenize olanak tanır. Birçok ortak tahminlerini paylaşırsa, bağlantılı tedarik zincirindeki kamçı etkisini kontrol etmeye yardımcı olabilir. etkili bir şekilde kullanabilirsiniz kar tanesi pazar yeri içinde üretilen veri kümelerinden tahmine dayalı analitiklerinizden para kazanmak için Amazon Tahmini.

Bu yazıda, Snowflake ve Tahmin kullanarak otomatik bir zaman serisi tahmin çözümünün nasıl uygulanacağını tartışıyoruz.

Bu çözümü etkinleştiren temel AWS hizmetleri

Tahmin, birkaç son teknoloji zaman serisi algoritması sağlar ve neredeyse tüm iş yüklerinin ihtiyaçlarını karşılamak için yeterli dağıtılmış bilgi işlem kapasitesinin tahsisini yönetir. Tahmin ile tek bir model almazsınız; setteki her zaman serisi için benzersiz ağırlıklı bir modele daha da optimize edilmiş birçok modelin gücünü elde edersiniz. Kısacası hizmet, tüm bilimi, veri işlemeyi ve kaynak yönetimini basit bir API çağrısında sunar.

AWS Basamak İşlevleri genel iş akışını yöneten bir süreç düzenleme mekanizması sağlar. Hizmet, API çağrılarını şu şekilde kapsüller: Amazon Atina, AWS Lambdave Tahmin, Snowflake'den veri toplayan, geçmiş verileri gelecekteki tahminlere dönüştürmek için Tahmin'i kullanan ve ardından verileri Snowflake içinde oluşturan otomatik bir çözüm oluşturmak için.

Athena birleşik sorguları, aşağıdakiler de dahil olmak üzere çeşitli kurumsal veri kaynaklarına bağlanabilir: Amazon DinamoDB, Amazon Kırmızıya Kaydırma, Amazon Açık Arama Hizmeti, MySQL, PostgreSQL, Redis ve Snowflake gibi diğer popüler üçüncü taraf veri depoları. Veri bağlayıcıları Lambda işlevleri olarak çalışır; Amazon Athena Lambda Kar Tanesi Bağlayıcı ve bağlan AWS Özel Bağlantı veya bir NAT Ağ Geçidi aracılığıyla.

Çözüme genel bakış

AWS'de sıklıkla yaptığımız şeylerden biri, müşterilerin hedeflerini gerçekleştirmelerine yardımcı olurken aynı zamanda farklılaşmamış ağır kaldırmanın yükünü de ortadan kaldırmaktır. Bunu akılda tutarak, aşağıdakileri öneriyoruz çözüm AWS ve Snowflake müşterilerinin aşağıdaki adımları gerçekleştirmesine yardımcı olmak için:

  1. Snowflake'den verileri dışa aktarın. Kullanıma hazır bir iş akışı tarafından yönlendirilen gerekli geçmiş verileri boşaltmak için esnek meta verileri kullanabilirsiniz.
  2. Verileri Tahmin'e aktarın. Kullanım durumu, sektör veya ölçek ne olursa olsun, hazırlanan veri girişlerini içe aktarmak kolay ve otomatiktir.
  3. Son teknoloji bir zaman serisi modeli eğitin. Temel veri bilimini veya donanım sağlamayı yönetmeden zaman serisi tahminini otomatikleştirebilirsiniz.
  4. Eğitilmiş modele karşı çıkarım oluşturun. Tahminle üretilen çıktıların herhangi bir amaç için tüketilmesi kolaydır. Basit CSV veya Parke dosyaları olarak mevcutturlar. Amazon Basit Depolama Hizmeti (Amazon S3).
  5. Doğrudan Snowflake'de geçmişi ve gelecek tahminlerini yan yana kullanın.

Aşağıdaki şema, Snowflake müşterilerinin AWS tarafından yönetilen bir hizmet olan Forecast tarafından desteklenen son derece doğru zaman serisi tahminlerinden yararlanmasını sağlayan otomatik bir iş akışının nasıl uygulanacağını gösterir. Kullanım durumunu ve endüstriyi aşan burada sunulan tasarım, ilk olarak Snowflake'den geçmiş verileri alır. Ardından, iş akışı zaman serisi hesaplaması için hazırlanan verileri gönderir. Son olarak, gelecek dönem tahminleri Snowflake'de yerel olarak mevcuttur ve ortak AWS ve Snowflake müşterileri için sorunsuz bir kullanıcı deneyimi yaratır.

Bu mimari yalnızca önemli teknik ayrıntıları vurgulasa da, çözümü bazen 1-2 iş günü içinde bir araya getirmek kolaydır. Çözümü tek başına ve bir başlangıç ​​yapmadan yaratmanın farklılaşmamış ağır yükünü kaldırmanıza yardımcı olmak için size çalışan örnek kod sağlıyoruz. Bu kalıbın bir iş yükü için nasıl uygulanacağını keşfettikten sonra, Snowflake'de tutulan herhangi bir veri için tahmin sürecini tekrarlayabilirsiniz. İzleyen bölümlerde, otomatikleştirilmiş bir işlem hattı oluşturmanıza olanak tanıyan temel adımları özetleyeceğiz.

Snowflake'den geçmiş verileri ayıklayın

Bu ilk adımda, tahmin edilmesini istediğiniz verileri tanımlamak için SQL'i kullanırsınız ve bir Athena Federated Query'nin Snowflake'e bağlanmasına, özelleştirilmiş SQL'inizi çalıştırmasına ve elde edilen kayıt kümesinin Amazon S3'te kalıcı olmasına izin verirsiniz. Tahmin, kullanımdan önce geçmiş eğitim verilerinin Amazon S3'te mevcut olmasını gerektirir; bu nedenle Amazon S3, Snowflake ve Forecast arasında bir ara depolama arabelleği görevi görür. Snowflake ve diğer heterojen veri kaynaklarını etkinleştirmek için bu tasarımda Athena'yı kullanıyoruz. Dilerseniz başka bir yaklaşım da, sorgu sonuçlarını Amazon S3'e yazmak için Snowflake COPY komutunu ve depolama entegrasyonunu kullanmaktır.

Kullanılan taşıma mekanizmasından bağımsız olarak, şimdi tahminin ihtiyaç duyduğu veri türünü ve verilerin nasıl tanımlandığını, hazırlandığını ve çıkarıldığını ana hatlarıyla belirtiyoruz. Takip eden bölümde, verilerin Tahmin'e nasıl aktarılacağını açıklıyoruz.

Aşağıdaki ekran görüntüsü, yerel Snowflake şemasında bir veri kümesinin nasıl görünebileceğini gösterir.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.

Bu ekran görüntüsü, verilerin doğal durumunda nasıl göründüğünü gösterse de, Tahmin, verilerin üç farklı veri kümesi halinde şekillendirilmesini gerektirir:

  • Hedef zaman serisi – Bu, hedef değişkeni içeren gerekli bir veri kümesidir ve gelecekteki bir değeri eğitmek ve tahmin etmek için kullanılır. Tek başına, bu veri kümesi tek değişkenli bir zaman serisi modeli olarak hizmet eder.
  • İlgili zaman serileri – Bu, hedef değişkenle ilişkisi olması gereken geçici değişkenleri içeren isteğe bağlı bir veri kümesidir. Örnekler arasında değişken fiyatlandırma, promosyon çalışmaları, hiper yerel olay trafiği, ekonomik görünüm verileri sayılabilir; hissettiğiniz her şey hedef zaman serilerindeki varyansı açıklamaya ve daha iyi bir tahmin üretmeye yardımcı olabilir. İlgili zaman serisi veri kümesi, doğruluğu artırmaya yardımcı olmak için tek değişkenli modelinizi çok değişkenli bir modele dönüştürür.
  • Öğe meta verileri – Bu, tahmin edilen öğe hakkında kategorik veriler içeren isteğe bağlı bir veri kümesidir. Öğe meta verileri, genellikle, yeni piyasaya sürülen ürünler için performansı artırmaya yardımcı olur. soğuk başlangıç.

Tanımlanan her bir Tahmin veri kümesinin kapsamı ile, istenen veri alt kümesini elde etmek için gerekli kaynak tablolardan doğru veri alanlarını uygun filtrelerle sağlayan Snowflake'de sorgular yazabilirsiniz. Aşağıda, belirli bir gıda talebi planlama senaryosu için Tahmin'in ihtiyaç duyduğu her bir veri kümesini oluşturmak için kullanılan üç örnek SQL sorgusu bulunmaktadır.

Hedef zaman serisi sorgusu ile başlıyoruz:

select LOCATION_ID, ITEM_ID, 
DATE_DEMAND as TIMESTAMP, QTY_DEMAND as TARGET_VALUE 
from DEMO.FOOD_DEMAND

İsteğe bağlı ilgili zaman serisi sorgusu, fiyat ve promosyon gibi ortak değişkenleri çeker:

select LOCATION_ID,ITEM_ID, DATE_DEMAND as TIMESTAMP,
CHECKOUT_PRICE, BASE_PRICE,
EMAILER_FOR_PROMOTION, HOMEPAGE_FEATURED
from DEMO.FOOD_DEMAND

Öğe meta veri sorgusu, tahmin edilen öğeyi boyut vermeye ve daha fazla tanımlamaya yardımcı olan farklı kategorik değerler getirir:

select DISTINCT ITEM_ID, FOOD_CATEGORY, FOOD_CUISINE
from DEMO.FOOD_DEMAND

Tanımlanan kaynak sorgularla, sorguları göndermek ve elde edilen veri kümelerini tahmin kullanımı için kalıcı kılmak için bir Athena Federated Query aracılığıyla Snowflake'e bağlanabiliriz. Daha fazla bilgi için bkz. Athena Federated Query kullanarak Snowflake'i sorgulayın ve Amazon S3 veri gölünüzdeki verilerle birleştirin.

The Athena Snowflake Bağlayıcı GitHub deposu Snowflake konektörünün takılmasına yardımcı olur. bu Tahmin MLO'ları GitHub deposu bu gönderide tanımlanan tüm makro adımlarını düzenlemeye yardımcı olur ve bunları kod yazmadan tekrarlanabilir hale getirir.

Verileri Tahmine aktar

Önceki adımı tamamladıktan sonra, Amazon S3'te bir hedef zaman serisi veri kümesi bulunur ve Forecast'a içe aktarılmaya hazırdır. Ek olarak, isteğe bağlı ilgili zaman serileri ve öğe meta veri veri kümeleri de hazırlanabilir ve kullanıma hazır hale getirilebilir. Sağlanan ile Tahmin MLOps çözümü, burada tek yapmanız gereken, verileri içe aktarmaktan sorumlu Step Functions durum makinesini başlatmaktır; kod gerekmez. Tahmin, sağladığınız veri kümelerinin her biri için bir küme başlatır ve verileri hizmetin makine öğrenimi modeli oluşturma ve model çıkarımı için kullanması için hazır hale getirir.

Doğruluk istatistiklerine sahip bir zaman serisi ML modeli oluşturun

Veriler içe aktarıldıktan sonra, yalnızca bir API çağrılarak son derece doğru zaman serisi modelleri oluşturulur. Bu adım, model eğitimini başlatmak için Tahmin API'sini başlatan bir Step Functions durum makinesi içinde kapsüllenir. Tahmin edici model eğitildikten sonra durum makinesi, geriye dönük test penceresi sırasında model istatistiklerini ve tahminleri Amazon S3'e aktarır. Backtest dışa aktarma işlemleri, aşağıdaki ekran görüntüsünde gösterildiği gibi, Snowflake tarafından harici bir aşama olarak sorgulanabilir. Dilerseniz verileri dahili bir aşamada saklayabilirsiniz. Buradaki nokta, sağlanan veri kümenizdeki zaman serilerinin performans yayılımını değerlendirmek için geriye dönük test metriklerini kullanmaktır.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.

Gelecek tahminleri oluşturun

Önceki adımdan eğitilen modelle, amaca yönelik bir Step Functions durum makinesi, geleceğe yönelik tahminler oluşturmak için Tahmin API'sini çağırır. Tahmin, çıkarımı gerçekleştirmek için bir küme sağlar ve önceki adımda oluşturulan adlandırılmış bir tahmin modeli aracılığıyla içe aktarılan hedef zaman serilerini, ilgili zaman serilerini ve öğe meta veri veri kümelerini çeker. Tahminler oluşturulduktan sonra, durum makinesi bunları Amazon S3'e yazar ve burada bir kez daha, bir Snowflake harici aşaması olarak yerinde sorgulanabilir veya bir dahili aşama olarak Snowflake'e taşınabilir.

Gelecek tarihli tahmin verilerini doğrudan Snowflake'de kullanın

AWS, bu adım için tam otomatik bir çözüm oluşturmamıştır; ancak bu gönderideki çözümle, veriler önceki iki adımda Forecast tarafından zaten üretildi. Çıktıları eyleme geçirilebilir olaylar olarak değerlendirebilir veya veriler üzerinde iş zekası panoları oluşturabilirsiniz. Verileri ayrıca gelecekteki üretim planları ve satın alma siparişleri oluşturmak, gelecekteki geliri tahmin etmek, personel kaynakları planları oluşturmak ve daha fazlası için de kullanabilirsiniz. Her kullanım durumu farklıdır, ancak bu adımın amacı, tahminleri kuruluşunuzdaki veya ötesindeki doğru tüketen sistemlere iletmektir.

Aşağıdaki kod parçacığı, Amazon S3 verilerinin doğrudan Snowflake içinden nasıl sorgulanacağını gösterir:

CREATE or REPLACE FILE FORMAT mycsvformat
type = 'CSV'
field_delimiter = ','
empty_field_as_null = TRUE
ESCAPE_UNENCLOSED_FIELD = None
skip_header = 1;

CREATE or REPLACE STORAGE INTEGRATION amazon_forecast_integration
TYPE = EXTERNAL_STAGE
STORAGE_PROVIDER = S3
STORAGE_AWS_ROLE_ARN = 'arn:aws:iam::nnnnnnnnnn:role/snowflake-forecast-poc-role'
ENABLED = true
STORAGE_ALLOWED_LOCATIONS = (
's3://bucket/folder/forecast',
's3://bucket/folder/backtest-export/accuracy-metrics-values',
's3://bucket/folder/backtest-export/forecasted-values';

CREATE or REPLACE STAGE backtest_accuracy_metrics
storage_integration = amazon_forecast_integration
url = 's3://bucket/folder/backtest-export/accuracy-metrics-values'
file_format = mycsvformat;

CREATE or REPLACE EXTERNAL TABLE FOOD_DEMAND_BACKTEST_ACCURACY_METRICS (
ITEM_ID varchar AS (value:c1::varchar),
LOCATION_ID varchar AS (value:c2::varchar),
backtest_window varchar AS (value:c3::varchar),
backtestwindow_start_time varchar AS (value:c4::varchar),
backtestwindow_end_time varchar AS (value:c5::varchar),
wQL_10 varchar AS (value:c6::varchar),
wQL_30 varchar AS (value:c7::varchar),
wQL_50 varchar AS (value:c8::varchar),
wQL_70 varchar AS (value:c9::varchar),
wQL_90 varchar AS (value:c10::varchar),
AVG_wQL varchar AS (value:c11::varchar),
RMSE varchar AS (value:c12::varchar),
WAPE varchar AS (value:c13::varchar),
MAPE varchar AS (value:c14::varchar),
MASE varchar AS (value:c15::varchar)
)
with location = @backtest_accuracy_metrics
FILE_FORMAT = (TYPE = CSV FIELD_DELIMITER = ',' SKIP_HEADER = 1);

İzinleri ayarlama hakkında daha fazla bilgi için bkz. Seçenek 1: Amazon S3'e Erişmek için Kar Tanesi Depolama Entegrasyonunu Yapılandırma. Ek olarak, AWS Hizmet Kataloğu Amazon S3 depolama entegrasyonunu yapılandırmak için; daha fazla bilgi şurada mevcuttur GitHub repo.

Program tabanlı veya olay tabanlı bir iş akışı başlatın

Özel iş yükünüz için bir çözüm kurduktan sonra, son adımınız, günlük veya haftalık gibi benzersiz gereksinimleriniz için anlamlı olan bir programda süreci otomatikleştirmektir. Ana şey, sürecin nasıl başlatılacağına karar vermektir. Bir yöntem, Step Functions durum makinesini çağırmak için Snowflake kullanmak ve ardından adımları seri olarak düzenlemektir. Diğer bir yaklaşım, durum makinelerini birlikte zincirlemek ve genel çalışmayı bir sistem üzerinden başlatmaktır. Amazon EventBridge bir etkinlikten veya zamanlanmış görevden çalışacak şekilde yapılandırabileceğiniz kural (örneğin, her Pazar gecesi 9:00 GMT-8'de).

Sonuç

En fazla tecrübe ile; en güvenilir, ölçeklenebilir ve güvenli bulut; ve en kapsamlı hizmet ve çözüm kümesi olan AWS, verilerinizden değer elde etmek ve bunları içgörüye dönüştürmek için en iyi yerdir. Bu gönderide, otomatik bir zaman serisi tahmin iş akışının nasıl oluşturulacağını gösterdik. Daha iyi tahmin, daha yüksek müşteri hizmetleri sonuçlarına, daha az israfa, daha az atıl envantere ve bilançoda daha fazla nakit paraya yol açabilir.

Tahmini otomatikleştirmeye ve iyileştirmeye hazırsanız, yolculuğunuzda size destek olmak için buradayız. Bugün başlamak için AWS veya Snowflake hesap ekibinizle iletişime geçin ve verilerinizden ne tür bir değer elde edebileceğinizi görmek için bir tahmin çalıştayı talep edin.


Yazarlar Hakkında

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.bosco albuquerque AWS'de Kıdemli İş Ortağı Çözümleri Mimarıdır ve kurumsal veritabanı satıcıları ve bulut sağlayıcılarının veritabanı ve analitik ürünleriyle çalışma konusunda 20 yılı aşkın deneyime sahiptir. Teknoloji şirketlerinin veri analitiği çözümleri ve ürünleri tasarlamasına ve uygulamasına yardımcı oldu.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.Frank Dallezotte AWS'de Kıdemli Çözüm Mimarıdır ve AWS'de ölçeklenebilir uygulamalar tasarlamak ve oluşturmak için bağımsız yazılım satıcılarıyla çalışma konusunda tutkuludur. Yazılım oluşturma, derleme işlem hatlarını uygulama ve bu çözümleri bulutta dağıtma deneyimine sahiptir.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.Andries Engelbrecht Snowflake'de Baş Ortak Çözüm Mimarıdır ve stratejik ortaklarla çalışır. Ürün ve hizmet entegrasyonlarını destekleyen AWS gibi stratejik ortaklarla ve iş ortaklarıyla ortak çözümlerin geliştirilmesiyle aktif olarak ilgilenmektedir. Andries, veri ve analitik alanında 20 yılı aşkın deneyime sahiptir.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.Charles Laughlin Baş AI/ML Uzman Çözüm Mimarıdır ve AWS'de Time Series ML ekibinde çalışır. Amazon Forecast hizmeti yol haritasının şekillendirilmesine yardımcı oluyor ve en yeni AWS teknolojileri ve düşünce liderliğini kullanarak işletmelerini dönüştürmeye yardımcı olmak için çeşitli AWS müşterileriyle günlük olarak işbirliği yapıyor. Charles, Tedarik Zinciri Yönetimi alanında yüksek lisans derecesine sahiptir ve son on yılını paketlenmiş tüketici ürünleri endüstrisinde çalışarak geçirmiştir.

Amazon Forecast PlatoBlockchain Data Intelligence'ı kullanarak Snowflake'teki zaman serisi tahminlerinizi otomatikleştirin. Dikey Arama. Ai.James Güneş Snowflake'de Kıdemli Ortak Çözüm Mimarıdır. James, depolama ve veri analitiğinde 20 yılı aşkın deneyime sahiptir. Snowflake'den önce, AWS ve MapR'da çeşitli kıdemli teknik pozisyonlarda bulundu. James, Stanford Üniversitesi'nden doktora derecesine sahiptir.

Zaman Damgası:

Den fazla AWS Makine Öğrenimi