Daily Tech Briefing
AI 科技速览
每天 5 分钟内学习 AI。获取最新的人工智能新闻,理解其重要性,并学习如何将其应用于您的工作。
AWS ML Blog · 2026/7/24 15:42:11

Build an explainable next-best-product recommendation system for banking on AWS
AI 中文解读
银行业的“下一个最佳产品”推荐系统来了!这项基于AWS云服务的新方案,能像贴心理财顾问一样,根据客户的交易记录和偏好,预测你下一步最可能需要的金融产品,还能解释清楚推荐理由,让推荐不再“黑箱”。
通俗来说,银行以往靠人工规则或简单算法推荐产品,常常推荐不准。这个新系统像给AI装上了“多视角眼镜”:它同时看你的消费流水、持有产品、年龄职业等碎片信息,再通过一个叫“多塔神经网络”的模型,像拼拼图一样综合判断。最厉害的是,AI不仅能说出“推荐信用卡”,还能告诉你“因为最近你频繁境外消费”。这套架构已在亚马逊云上实现从研究到生产的落地。
对普通人来说,以后银行推荐会更精准——比如你刚买了房,系统可能及时推荐装修贷,而非胡乱推销理财。推荐理由变得透明可信,用户能理解为什么推荐某产品,避免被“套路”。同时银行运营效率提升,未来你享受到的产品服务可能更贴心、更具个性化。
<p>Building a deep learning-based explainable next-best-product recommendation system helps banking institutions predict which product a customer needs next. Banks hold vast amounts of customer data, including transaction histories, product ownership records, demographic profiles, and behavioral patterns. Translating this data into actionable, personalized product recommendations remains a significant challenge. Traditional rule-based systems and collaborative filtering approaches often fail to capture the complex temporal patterns in customer product adoption journeys.</p>
<p>In this post, we present the architecture and design decisions behind a Next-Best-Product (NBP) recommendation system using <a href="https://aws.amazon.com/sagemaker/ai/" target="_blank" rel="noopener">Amazon SageMaker AI</a> and PyTorch. We explain the reasoning behind a multi-tower neural network architecture, how learned attention provides per-customer explainability, and how AWS services work together to take this solution from research to production. This is an architectural overview, not a step-by-step deployment guide. Whether you are building recommendation systems for financial services or other domains with heterogeneous customer data, the architectural patterns described here can help you design more accurate and interpretable models.</p>
<h2 id="prerequisites">Prerequisites</h2>
<p>To follow along with the architectural patterns and code examples in this post, you need:</p>
<ul>
<li>An AWS account with permissions for SageMaker AI, <a href="https://aws.amazon.com/s3/" target="_blank" rel="noopener">Amazon Simple Storage Service (Amazon S3)</a>, <a href="https://aws.amazon.com/glue" target="_blank" rel="noopener">AWS Glue</a>, and <a href="https://aws.amazon.com/cloudwatch" target="_blank" rel="noopener">Amazon CloudWatch</a></li>
<li>This solution requires an <a href="https://aws.amazon.com/iam/" target="_blank" rel="noopener">AWS Identity and Access Management (IAM)</a> execution role with access to the following AWS services. Create policies with least-privilege permissions scoped to only the resources needed for this solution.</li>
<li><strong>SageMaker AI</strong> – Create, describe, start, stop, and delete training jobs, processing jobs, batch transform jobs, models, endpoints, endpoint configurations, pipelines, experiments, and monitoring schedules. InvokeEndpoint for real-time inference.</li>
<li><strong>Amazon S3</strong> – Read and write access to the data bucket. Create and delete bucket. List, upload, download, and delete objects.</li>
<li><strong>AWS Glue</strong> – Create, run, and delete ETL jobs. Create and delete crawlers. Create and delete Data Catalog databases and tables.</li>
<li><strong>CloudWatch</strong> – Read and write access to log groups, log streams, and metrics. Delete log groups during cleanup.</li>
<li><strong>IAM</strong> – Create and delete roles. Attach and detach policies. PassRole (restricted to the named execution role ARN, scoped to sagemaker.amazonaws.com and glue.amazonaws.com).</li>
</ul>
<p>For guidance on writing least-privilege IAM policies for SageMaker AI, see Identity-based policy examples for <a href="https://docs.aws.amazon.com/sagemaker/latest/dg/security_iam_id-based-policy-examples.html" target="_blank" rel="noopener">SageMaker AI</a>.</p>
<ul>
<li>Familiarity with Python 3.11+ and <a href="https://docs.pytorch.org/docs/2.12/index.html" target="_blank" rel="noopener">PyTorch</a></li>
<li>Required packages to create this recommender system:
<ul>
<li>Python 3.11+</li>
<li>PyTorch 2.9+</li>
<li>Pandas 2.3+</li>
<li>NumPy 2.3+</li>
<li>scikit-learn 1.7+</li>
<li>Dask 2025.11+</li>
</ul> </li>
</ul>
<blockquote>
<p>We recommend using a virtual environment and scanning dependencies for known vulnerabilities using tools like pip-audit before deployment.</p>
</blockquote>
<ul>
<li>Basic understanding of deep learning concepts (embeddings,
分享
阅读原文 ↗