Coder Social home page Coder Social logo

aws-samples / retail-large-data-ml-e2e Goto Github PK

View Code? Open in Web Editor NEW
14.0 2.0 0.0 1.75 MB

小売業で予測ベースの発注を実現するためのサンプルソリューション

License: MIT No Attribution

JavaScript 1.83% Python 34.46% TypeScript 62.70% Shell 1.01%
analytics aws machine-learning retail-technology

retail-large-data-ml-e2e's Introduction

本ソリューション (End2End Data Solution for Retail Industry) について

本ソリューションは、小売業(リテール業)での発注業務を想定ユースケースとした予測を実現するソリューションです。過去のデータを基に予測を提供し、店舗管理者(店長)や、本部の発注担当者等が簡単にデータに基づいた発注を可能にするためのサンプル構成をオープンソースで提供します。ライセンスはLICENSE.txtを確認してください。

本ソリューションは無保証です。免責事項を確認してください。また、導入方法はクイックスタートガイドを参照してください。

ソリューションの狙いと概要

Amazon Web Services (以下AWS)では、多くのサービスが提供されており、それらを適切に組み合わせることで高い自由度でソリューションを構築できるようになっています。各サービスは数クリックですぐに起動でき、運用管理の負担が少ないマネージド・サービス、もしくはサーバーレスと呼ばれる形態で提供されています。

一方で、ソリューションを構築する時間が取れない場合もあります。特に巨大データの分析や予測といった用途においては、ある程度やってみてから発見・理解できる事も多く、すぐに始めることがビジネス上の優位性を生む場合があります。

本ソリューションは、シンプルで見通しが良く、管理の手間が少ない予測ソリューションのひな形を提供することを目標に作成されています。ユースケースを限定した構成済のアーキテクチャを提供し、分析・予測といった活用にすぐに入れる環境を提供します。

ソリューションは100%の完成品ではありませんが、見通しが良く、拡張が容易であることを念頭に設計しています。例外処理等あえて作りこんでいない部分もありますが、全体をシンプルに保っているため、利用者がソースコードやSQLを修正して自分のニーズに合わせた活用がしやすいようにデザインされています。また、AWSのサーバーレス・サービスを中心としたアーキテクチャにすることで、運用の負担を減らす構成としつつ、大規模データ処理や将来の予測モデル拡張に耐えうるサービスを選択しています。例外処理の追加方法やアーキテクチャについてはソリューション・アーキテクチャを参照してください。

ソースコードはAWS Cloud Development Kit (CDK) ベースで作成されており、ソリューションをほぼ自動的に構築可能になっています。またサンプルデータと共に公開されており、動作を確認した後は利用者がニーズに合わせて改変して利用することが可能になっています。カスタマイズの方法については、 カスタマイズガイドを参照してください。

想定ユースケース

想定ユースケースは、「小売(リテール)業務において明日の商品の売上個数を予測する」というものです。POSデータ等の履歴をもとに将来の販売(需要)を予測するという業務は小売(リテール)業だけでなく多くの業態に適用可能であると考えています。

サンプルとして、入力データとしては以下の入力を想定しています。

マスター

  • 商品マスター (カテゴリー、プロダクト情報)
  • 店舗情報 (店舗サイズの大小等)
  • イベントカレンダー (セール日等)
  • 天気データ

トランザクション

  • 過去の売上データ

これらのデータがAmazon S3上にファイルとして置かれていることをスタートとし、必要な前処理(データ変形)をRedshift ServerlessのSQLで実行、Amazon SageMakerで学習(モデル更新)と推論の結果を作成、Amazon AthenaやAmazon QuickSightで予測結果を確認するまでの処理を提供します。処理ワークフローはAWS Step Functionsでコントロールします。詳細はアーキテクチャを参照してください。

大規模データ対応とカスタマイズ

本ソリューションにはサンプルデータが付属しているため、まずはこのサンプルデータで動作を確認した後に、実際の業務のデータを投入して動作確認することを想定しています。

本番データが巨大になりうることは想定されており、特に重い処理になることが想定される前処理は、 Amazon Redshift Serverless の分散処理で実行することで、スループットを担保することを可能にしています。

前処理のカスタマイズはSQL文を修正する事で実現可能であり、前処理のカスタマイズにプログラミングが不要な構成になっています。また、ワークフロー全体はAWS Step Functions で構成されているため、こちらもプログラミング不要で修正が可能です。

予測のアルゴリズムについては、この領域でポピュラーかつAmazon SageMakerから容易に利用できるLightGBMをベースにPythonスクリプトとして提供しており、こちらもカスタマイズが容易になっています。

一方で、データを基幹システム(POS等)からAmazon S3に転送する部分(ETL)については、サンプルは提供されていませんので、環境にあわせて準備することを想定しています。

カスタマイズについてはカスタマイズガイドを確認してください。

今後の改善・拡張について

本ソリューションには、より詳細なドキュメントや便利に使うための機能等、まだ不足している部分があります。これらについては、利用者からのフィードバックを踏まえて改善していく予定です。

要望がある場合、もしくはバグを発見した場合は、GithubのIssueにてご連絡ください。修正の保障はできませんが、ベストエフォートで対応していく予定です。

retail-large-data-ml-e2e's People

Contributors

akirashimosako avatar amazon-auto avatar dependabot[bot] avatar simosako avatar yoshakit avatar yshiy-yoshi avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

retail-large-data-ml-e2e's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.