Transcript
This transcript was autogenerated. To make changes, submit a PR.
Hey everyone.
I'm a senior software engineer in the FinTech industry.
Today we are gonna talk about revolutionizing FinTech with a WSH
maker and using go in machine learning.
The FinTech industry is undergoing a dramatic transformations powered
by machine learning and artificial intelligence integration with global
FinTech markets projected to reach thousand billion dollars by 2033,
the financial institutions must adopt to scalable ML solutions to
maintain competitive advantage.
This presentation explores how A WSH makers simplifies the implementation
of machine learning models.
We'll examine how sage makers integrated environment streamlines the machine
learnings lifecycle while maintaining security and regulatory compliance.
We'll also see how Golan can be used, for ML development and integrate,
and how we can integrate it with AWS SageMaker for machine learning
model development and deployment.
Using SageMaker has given a boost for model development by 40% by taking
advantage of its features, simplifying, automating various stages in ML lifecycle.
This leads to better focus on model development rather than focusing on
managing the lifecycle development, deployment, experimentation of the models.
Which ultimately leads to improved accuracy.
Financial institution face increasing pressure to innovate while maintaining
strict compliance standards.
The adoption of our advanced machine learning solutions like A WSH Maker
represents a critical co advantage in this rapidly evolving marketplace.
There are some key bottlenecks in the FinTech ML implementations.
The first one is the talent bottleneck shortage of ML specialists with the
knowledge and requiring the engineers to be fully knowledgeable of models and
separate infrastructure management teams.
For ML models, deployment and maintenance.
There's infrastructure complexity, model development, training,
nest states, the use of large and powerful computing resources.
Such as high performance GPUs, distributed competitive systems to
handle the massive data sets and, computational intensive algorithms
they need to be handed efficiently.
With scalability, there are compliance requirements, data security concerns.
Protecting sensitive customer financial data remains the highest
priority, while adhering to the stringent regulatory frameworks
as additional layer of complexity.
There are model deployment hurdles too.
Once the development is done, there's a gap and extensive overhead of
infrastructure management, management for training and deployment into production
for inference and batch inferences.
Here comes where we introduce AWS SageMaker.
So let's see how it solves these problems.
The integrated ML workflow, it provides a in.
It provides an intuitive to environment for building, training and deploying
the machine learning models with minimal infrastructure management.
It has prebuilt algorithms, it gives access to production ready algorithms
for common FinTech use cases, including fraud detection, credit
scoring, and customer segmentation.
It also provides several state-of-the-art foundational models
to build your own gen AI solutions.
It has framework flexibility.
It supports popular M ML frameworks, including
TensorFlow, pipe touch and MXNet.
It also has multiple kernels, and it also enables usage of Golan for model
development and deployment, allowing teams to work with familiar tools
while leveraging AWS infrastructure.
It has automated infrastructure management.
It eliminates the complexity of provisioning and managing specialized
ML infrastructure while ensuring optimal performance and cost efficiency.
The A-W-S-H-H-S-H Maker democratizes machine learning by removing
infrastructure barriers and providing.
Tools that support the entire machine learning model lifecycle.
This em empowers FinTech organizations to focus on building sophisticated
models rather than managing complex infrastructure and adhering to,
stringent rules and compliances.
Now let's deep dive deep into the features of SageMaker that help in achieving these
advantages and how they are ease of use.
AWS SageMaker has something called SageMaker Studio, and most recently
they have added Unified Studio.
It provides a platform which has a fully managed service that enables
data scientists and developers to seamlessly build, train, and deploy
machine learning models with Unified Studio or advanced project management and
collaboration tools are also provided.
SageMaker Studio provides an integrated development environment.
Through which you can perform all machine learning development
steps and deploy at scale two.
It's a web-based interface program, which you can access directly from
the browser or the AWS console.
The studio provides environments like Jupiter Lab Code Editor, which
is based on Visual Studio Code, open source, and even our studio.
It has various kernels and infra development in ones can be spun
up quickly with just few clicks, and they come pre-configured
with necessary machine learning libraries and kernels and frameworks.
Users can also spec select specific instance types to optimize performance
and cost and instance types can all can be updated and modified at
different stages of the ML lifecycle.
They also have large selection of models optimized for AWS through
which you can select any model, train it, deploy it, and also evaluate
the model based on your data set.
You can also quickly fine tune the models with hyper parameters
that it feature that it provides.
So it SageMaker provides an end-to-end flow.
It offers the capability for model tuning, monitoring, debugging, even experimenting
with your morals and updating them.
It provides a platform to check all the training jobs, deployed endpoints for
inferences, build and maintain pipelines, unifying the tools needed for machine
learning development into one interface.
This is the SageMaker UI interface with your IM rules.
You can set up environment, select an ID, and choose an instant
type and an image and start model development instantaneously.
You can choose, you can change the instance type at different, stages
of the ML life cycle, like data prep training, and the data will
be persisted across the instance.
Start and stop.
Once the, instance has been ready, you can just start and stop or
open the AWS SageMaker Studio.
ID by clicking on the open here.
As I was previously mentioned, we have a wide range of kernels to choose from,
and here's a sample of the web based UI interface, for a model development.
We can use a jumpstart feature in SageMaker where you can select a wide
range of open source models with just a click train the model, against your
data, deploy it, and even evaluate your data against the train model.
SageMaker has its seamless integration with various other, AWS
services, which is a big advantage.
For example, a we can ha use AWS S3 to store and retrieve training data models.
data models securely leverage compute power of EC2 instances avail available.
Use A-W-S-E-M-R and a AWS glue for data preparations.
In case of large data sets, AWS Lambda can be used for event driven ML pipelines.
A-W-S-I-M helps in fine grain access management to models, data and resources.
With A-W-S-V-P-C, it enables our users to seek securely, train and
deploy machine learning models within a private network environment.
This isolation helps protect sensitive data and ensures that model training
and inference process are not exposed to external threats, thereby
hand answering the data security.
Now let's go through the different stages in ML model development and see
how A-A-W-S-H maker helps in each stage.
The first stage would be obviously data preparation.
Once we have the, the id, set up using SageMaker Studio or locally.
Data.
Data provision can be done in different ways.
The first one is Juta Lab.
This is the traditional way of data prep.
In a W SageMaker, you use your, its provided by SageMaker.
It works for manageable data size, and when individual
has experience with coding.
SageMaker also provides data Wrangler.
It's a visual interface for data preparation.
We can import data from various sources like S3 Athena, upload your own file, use,
import data from Redshift or Salesforce Data Cloud, or even from A-W-S-E-M-R.
We can do visual data analysis of your data.
Find duplicates, missing data, and get a general overview of the data with
pre-built functionalities before the data prep as well, we can perform data
per perform data transformations like dropping columns, splitting the training
and test data, and the validation data.
It's a user friendly work environment, which works for non coders as well.
Data Wrangler is more, a UI based data preparation tool.
We can use, SageMaker integration with A-W-S-E-M-R.
Elastic Map produce, we can leverage emr, big data processing capabilities directly
from SageMaker studio or notebooks to efficiently handle large scale data sets
in the range of terabytes and petabytes.
Eliminating the need to switch between tools and platforms.
We can create and view EMR clusters directly from SageMaker Studio
and connect with Autogenerated code in Eds and studios.
We can also use AWS Glue, which is primarily used by data engineers.
However, with integration with AWS SageMaker, AWS Glue Interactive
Sessions provide an on demand serverless Apache Spark run type environment that
you can initialize in seconds on a dedicated processing unit that you can
enlist to collect, transform, clean, and prepare the data for storage in
your data lakes and data pipelines.
Once the data prep is done, we move on to the model development and training.
SageMaker provides various model development, methods for all stages of
doubles from novice to expert, and you, we can also utilize predefined models or
develop your own models with SageMaker or bring in custom models from elsewhere.
Let's first discuss about the no code or the low code, which is focused
on using the built-in algorithms.
It requires no or less coding.
The only inputs you need to provide are the data, hyper parameter
tuning and the compute resources that you would like to use.
This allows you to run, experiments more quickly with less overhead of
tracking the results and code changes.
You can utilize wide range of models provided from SageMaker, from fundamental
models to foundational models with Gen ai.
You provide the data to your model, train data and deploy your model.
We'll get into the more details about the deployment in the next slides.
Then it's a, we can go into the next, a bit more advanced
version called the script mode.
If the algorithm required for your model isn't available as a built-in
more option, your A and you're adapt at coding your own solution, you might want
to use SageMaker supported frameworks.
This is often called a script mode.
In this mode, you create your custom core or a script in a dot,
PIY, or a do R or a do spark file.
You can utilize the various machine learning frameworks that come built in,
like the TensorFlows psyche, learn MXNet.
We can add custom parameters and do other modifications too.
Then we can use the bi, if the built-in algorithms and the supportive
frameworks, kernels language should cover the most use cases.
But there are times where you might need to use algorithms from
a package not included in any of the supportive frameworks.
Perhaps you're not comfortable with Python or R and you want to
use your preferred language as go.
In such cases, you can write your own models externally and create
a custom docker image with model code and necessary dependencies.
Containerizations on models of models is a fundamental aspect of a WSH maker.
SageMaker relies heavily on container images for both
model deployment and training.
This allows for efficient and scalable management of models, ensuring
portability, scalability, and consistency and reproducibility across environments.
Space SageMaker uses, docker images and containers as a standard format for
packaging, training and deploying models.
These containers contain all the necessary dependencies, libraries, and core
requirements to run the model, isolating it from the underlying infrastructure.
In the further slides, we, I will explain the steps to use.
Go for creating a model and train and deploy, the data using SageMaker.
You can train your model through Studio, ID.
Jumpstart or through SageMaker, training job for custom model AI in images
SageMaker save the train model in, in as an artifact in the S3 bucket specified
in your training job configuration mentioned through the UI or through code.
This bucket can be in your own account or in an AWS service catalog.
This is an example of, using a built model builtin model.
As you can see in these two examples, we are importing SageMaker URIs, from
of linear and XCG boost, and passing in our data to train our model.
We can also use the, the using Jumpstart.
We can use the foundational models, directly, instead of even going into
the ID and, selecting a model, train the pass, when you click, passing
your data and you can deploy it.
Two, you can also do fine tuning, which will again open an IDE in
SageMaker studio, and you can even fine tune the fine foundational models.
Going back, the next, method is using the script mode.
This is an example of a script mode where we write our own algorithm using
libraries and framework, provided by SageMaker to build your model.
Here we have more control.
On the model and have the ability to use libraries like LEA and TensorFlow here.
In this case, we are using the TensorFlow, DDNN classifier.
We mentioned the script as the entry point and the remaining parameters are similar
to using your, using a built in, model.
This is an example of building our own model and models and using them, in
SageMaker with the help of Docker images.
This is a mo this is the case where a model that you have built
locally using custom LI libraries not available in SageMaker.
For example, an ML model written in goal language.
So assume like these are the, go language, files, of where you
have written your, your model.
Along with the model we create, a Docker file containing the
information about the necessary dependencies, libraries and kernels.
We created a Dockery image and push it into A-W-S-E-C-R
Elastic Container Registry.
Now, using the image id, we train our model in SageMaker.
There are two ways to do it.
One is in a Jupiter Studio, lab studio, Jupiter lab, as we see in the image here
where we are mentioning the image name.
And NCE in the models model programmatically, or or through
the console using training job.
Here.
Also, we give the image information and training data where we want to store
the, train model artifact After the training is done here, in this case,
you can see we are, man, we are creating a training job, YouTube hyphen one.
we are also, we selecting an option to use your own algorithm container in ECR.
Here we pass in our image name, the, which has, containerized, our model code and all
the libraries and kernels that we need.
We specify the data source and we specify the output path where
the, machine learning model, artifact needs to be stored.
In the code format, we spare, we use the code to pass in the image,
and we pass in the I am role.
and again, the remaining parameters are similar to how we use the script
mode or, or as in the built in models
now coming to deployment.
Once you've trained your model using the IDE or through SageMaker
training jobs, you can deploy it.
You can deploy your model with AWS SageMaker to make predictions.
Amazon SageMaker provides several deployment options
to suit different needs.
The first use case is realtime hosting service.
This can be used for continuous realtime inferences against your model.
This is best in the case where there is continuous traffic.
The play payload is of smaller site.
It's deployed in our preferred instance type.
This is best suited for the cases where, the machine learning model is for ad
serving, personalized recommendation or immediate fraud detection.
The second case is of using serverless inference.
This is, this option.
We can use it for intermittent traffic where we see bursts of traffic maybe
during daytime or during office hours or during end of the day.
This is ideal for workloads that can tolerate cold starts.
It automatically launches computer sources and scales automatically
removing the need to choose the instant type based on the traffic.
This best works in a case where we're doing workload tests, where we
extract, analyze data from documents, after a certain, end of the day.
And also sometimes we see chat bots with search traffic.
This serverless inference would be the best for these scenarios.
There are other cases where we can use, asynchronous inference.
Here the inferences where we have to have large payloads,
maybe up to one gb and getting an inference takes longer processing.
In this case, we have the flexibility of waiting for the
inference, and we are okay with it.
There are other cases where we are not, okay with one, one or two inferences.
We need to do a batch of them and usually this is the case for offline.
The so here where we can use batch transform.
This is for large amounts of data sets.
It has higher throughput.
it can support large data sets in the gigabit size, and processing
times can go up to days.
So this works for the specific case, like churn prediction, predictive
maintenance, and historical analysis of customers to identify any, scope of risk.
These are the cases.
we, these are the two examples that we have where we are
making real time inferences, calling the endpoint to predict.
So we are passing in a sentence which we want to do a prediction on, we
call, a classifier, which has, which we've used previously to deploy.
And we call the predict function with our input, and we get back
a response with the, probability of saying like this is 99%.
correct or wrong, this, however, is an example of batch transform where
we have created hugging face model, and we are, passing a job, a bad job
transformer to do inferences on a bunch of data from an NS three file.
This is the overview of SageMaker and how it can be used in entire ML lifecycle.
Financial institutions benefit from the streamlined data labeling with
SageMaker ground truth, comprehensive exploit analysis through SageMaker
studio notebooks, and sophisticated hyper parameter optimization that eliminates the
guesswork, framework in model refinement.
Model operation directly translates to financial outcomes and risk management.
SageMaker has advanced monitoring capabilities by integration with AWS.
CloudWatch provide essential safeguards.
SageMaker is continuously evolving with new features.
These are some of them SageMaker experiments.
It's used to run experiments during model building.
Monitoring the inputs and outputs enhance the repeatability and tracking.
It helps you keep track of your metrics and collaborate your, with your teams
in these experiments, it also provides a new feature called SageMaker Pipelines.
It provides a fully managed C-S-E-R-D service for machine learning workflows.
Enabling automated, scalable, and reproduce ML model development.
It helps to define end-to-end ML workflows with a UI based with drag drop
connect directed cycle graph structure.
This is a UI interface where you can just drag and drop pipelines.
And AI handle the ML lifecycle from, data preparation to model deployment.
It also has SageMaker model monitor.
It helps in oversee the quality of AI machine learning models in production.
It continuously monitors across various deployment methods and also alerts
any deviations in model quality.
That could compromise the accuracy in mission critical operations such as
fraud prevention, credit assessment, and algorithmic trading conditions.
Fa this facilitates an early direction of wrong predicts and take early
action With Amazon Bedrock, and Sage and Unified Studio and AWS
SageMaker, cap, capabilities, it helps us to quickly build and customize
your generative AI applications.
It lets you work with high performing foundational models,
customize the Foundation.
Foundational models to match your requirements, data workflows, and
also meet responsible AI standards.
It gives an access to wide range of foundational models from leading AI
companies through the Gen I Playground.
You can compare different models and configurations to
evaluate their performances Easy.
Now coming to the usage of go for ML model development while go might
not be the first language that comes to mind for machine learning,
it offers several advantages for specific tasks and situation.
It has the benefits of performance efficiency, critical for real time
applications and large data sets.
We can take advantage of ghost concurrency and parallelism to
improve training and inference.
It has the advantage of performance and concurrency.
Goal line is a compiled language, which means it generally runs faster
than interpreted language like Python.
This can be significant and advantage when working with large data sets or complex
models with concurrency in goal language, it has a built in support of go routines,
making it easier to paralyze tasks, which can be beneficial in training large models
or handling real-time data processing.
Go Bindings are available for many popular machine learning libraries like TENS
four Pipe Touch and Sky Psychic Learn.
This enables leveraging existing code and algorithms with GO Projects.
Golan also has the ease of deployment.
Golang Static Library libraries simplify, deployment, especially in environments
where containerization, it is used.
This can be particularly useful when deploying ML models in production.
Also go language has strong typing, which helps catch errors in
development process, reducing the risk of runtime in ML applications.
There are also going number of, libraries for machine learning development.
Go facilitating data transformations and using ML capabilities
in go programming language.
we have gunna, which is like a numerical computing library,
similar to mpi, we have goia.
It's a modern, high performance deep learning library, specifically
designed for go programming language.
It provides a clean and expressive API for building and training neural networks,
making a suitable choice for ML tasks.
We have also have Go Learn and Go ml, which are versatile and comprehensive
machine learning libraries.
Again, specifically built for go programming language.
They provide a wide range of algorithms and tools for tasks, making
it as a valuable resource for ML practitioners, who work with Go Language.
We also have Go cv, which is a computer vision library, specifically
designed, to provide a comprehensive set of tools and algorithms for image,
video, image and video processing and analysis and manipulation.
This is the ML part of it.
There are some scenarios where we can use, go along with SageMaker as well.
the first case is the data handling and the pre and the post processing.
Although the act, we can go ahead with an approach of, actually
building the machine learning models.
In the more, wide approached languages like Python Go can be
used for other tasks that involve data gathering, pre-processing,
or post processing results.
Go efficiency and speed makes it a great choice For these tasks that
require high performance, such as processing large volumes of data or
streaming data, we can use, libraries like A-W-S-S-D-K Go SageMaker, go.
To interact with SageMaker, APIs and services from your GO code to
interact with SageMaker to automate workflow jobs and life cycles.
We can deploy a go based Lambda function to build an event driven ML life cycle
events, like a new training data, a new inference data, a new docker
image of the machine learning model.
And once these events get triggered, we could.
Automate of the training and deploying the models.
Finally, from our previous slides, utilize ML libraries or go
bindings with Python ML libraries.
In Go.
We can write your own model container.
I containerize it and create an image.
Use this image in SageMaker to train and deploy your model.
written and go.
SageMaker enables to overcome the barrier of language by using no code or
low code solutions, providing a large range of models, intuitive interfaces to
handle various stages in ML lifecycle.
It also provides ML model Docker image solution to go beyond and use tools
and languages provided by SageMaker.
For example, we can use GO.
Here are some of the use cases where ML is used in the FinTech world.
For fraud detection.
We can use XG Boost for credit risk assessment.
Linear and neural networks can be used to evaluate real borrower's risk profile.
For customer intelligence, we can use clustering algorithms to identify customer
categories and tailor financial products.
We can also do portfolio management using, algorithmic trading using reinforcement
learning and time series forecasting.
As you can see, all these models are provided and can be built and fine tuned.
Using SageMaker architecture ensures scalability to handle transactions, of
volumes from millions of customers while maintaining low latency response necessary
for critical financial operations.
We can achieve this level of performance with data encryption in transit or at
rest meeting stringent requirements for FinTech data using A-W-S-V-P-C, we never
have to process sensitive financial data in public internet and provide
isolation for all the ML workloads.
Again, using AWS I, we can find grain, have fine grain access to data and models
in aligned with regulatory requirements.
Now, let's discuss about a case where the Fortune 500 bank utilized SageMaker
for fraud detection, which led to a false positive redu false positive
rates, reduced by 69% detection rates, improved by 94%, and with the
leveraging A WSH Makers various features.
The model development improved by 60% and also, you, a better alert processing
time was reduced, by making it, faster processing speeds by five times.
So going out of this, presentations, what are the steps ahead to begin
your journey of using SageMaker or into machine learning?
First try.
first identify your problem you're looking to solve with
defined KPIs and success metrics.
Start off leveraging the prebuilt models and advanced, and advanced forward to use
foundational models and develop your own models for more fine tuning and control.
Utilize AWS Lambda SageMaker pipelines to create automated workflow, workflows for
model training, evaluation and deployment.
This ensures consistent quality and enables rapid interaction attritions
on financial models, SageMaker model monitor, and CloudWatch logs to
continuously track the model performance and identify any drifts causing
customer impact or compliance issue.
I had mentioned previously start with assessment phase, move to
proof of concept and production implementation later, and then further
move across to cross-functional implementation across organizations.
There are many resources for understanding A WSH maker and how
it can be used in various use cases.
In this presentation, we have seen the case of FinTech.
We can explore the different ML libraries that are available for grow.
And explore more into the presentation that I've just made.
one more final conclusion.
Let's make it short.
There are two main points to all this.
If you're new to ml, start with Python and SageMaker.
It's easier to learn as a bigger community and all of the
features implemented for you.
If you're more comfortable with Go and as you advance and you, as you become a pro.
there are more efficient ways and you want to have a more efficient
way to improve your model.
Welcome to Goal Language.
Here you can write an optimal model by your own hands, of your knowledge,
and utilize features of SageMaker for better ML lifecycle management.
Thank you.