Skip to main content

Machine Learning on AWS Video Transcript

Muni: Okay, all right. I think I can start. Well, hi everyone, my name is Muni. I work for Amazon Web Services. I’m a Solutions Architect so I work for education institutions like Boise State University and help them migrate their on-premises IT infrastructure to the cloud, so for today’s session, we have Ruchi Kakad on the call joined on the Zoom call. She’ll be talking about the introduction to machine learning services on AWS. So she’ll be going over different ML services, ML stacks, some use cases, and how customers use these services to run through their use cases. So this particular session from 11 to 12 p.m. is going to be a theoretical session where you’ll be seeing different services and different use cases that customers run with these services. From 1 to 2 p.m., Ruchi will be going over some of the demos on how to use these specific services on AWS. If you have any questions, please pause and ask her. Thank you. Ruchi can take over.

Ruchi: Great, thank you, Muni. Just to make sure, everyone can hear me clearly, correct?

Muni: If you could speak a little bit louder, that would be great.

Ruchi: Okay, no problem. So, nice to meet you all. My name is Ruchi Kakad. I am a Solutions Architect here at AWS. So you can really think of us as these technical advisors and technical guides for customers who are moving their IT infrastructure from traditional on-premises data centers to the cloud. And to just give a little bit of background about what the cloud really is, just so we can level set before I delve a bit deeper into machine learning specifically on the cloud, essentially, what the cloud is, is on-demand resources for IT and compute power. A significant benefit of it is that you only pay for what you use. Essentially, you turn on your resources, which is similar to how you flip a switch in your house to get light and electricity. You do the same thing with the IT infrastructure on the cloud. You kind of turn the switch on when you need this power and compute resources, and then when you’re done, you can just turn it off. And you won’t be paying for traditional data centers that are constantly running. So, today I will be discussing a little bit about machine learning on AWS and how some of our services can really help with advancing your machine learning processes. And if you have any questions at all, please interrupt me and ask. I want to keep this as conversational as possible. We’ll also have some time for questions at the end of this presentation.

So, I just want to start with a little bit of an overview of AI, machine learning, and deep learning. We’ve seen a lot of market growth in AI and ML. So, just to define these a little bit, AI, or Artificial Intelligence, which you see in this diagram, is our broadest concept. And then from there, we have machine learning, which is a subset of AI. And this is basically about how we have a practical way of taking really large volumes of data and turning it into predictive insights. Then, a subset of machine learning is deep learning. This is about performing tasks requiring massive levels of computational power. That was previously unattainable or too difficult. It’s a bit more complex, has more advanced algorithms, and needs higher computational power.

Which is you all, to deliver you know, the deepest and broadest set of machine learning capabilities that we possibly can for builders of all types of technical expertise. So, starting at the very bottom of this slide, we have our ML Frameworks and Infrastructure, and this is a lot of that compute baseline that the rest of these ML services are built upon. So as we go about, up in this slide, the services get a lot more specific. So, on top of our ML Frameworks and Infrastructure, we have Amazon SageMaker, and this is what we’re going to be diving into pretty deeply today. SageMaker is our suite of machine learning and data analytics services. So, we have different levels of Amazon SageMaker, that are based on your technical expertise, and what you would be using. So, Canvas, for example, is for business analysts who don’t code. Studio Lab is a step deeper, and more technical expertise, and we also have regular notebooks for very experienced coders and computational models. On top of SageMaker, we have our artificial intelligence services. So, these get a little more specialized. For the core, we have services to help with text. So, we have a translation service. We have a service for speech that converts text to speech, and then speech to text as well. We have things for vision, so Amazon Recognition recognizes images. And then on top of that, we get even more specialized. Thanks for the conversation, specifically thanks for the health industry as well, this is really just to show how broad our services can cover and what we have to offer.

And so, also just not to forget, our AI and ML services are part of this broader ecosystem that we have of services for data specifically. Really, what we strive to do here is build an end-to-end data strategy. The end-to-end strategy includes everything from ingesting, storing, and creating your data, to analyzing data, and then building machine learning models from that. So, this again is just to show that machine learning and AI are just a small section of what we do have to offer for your data in general. Okay.

So, that was a pretty brief overview of our general AI and ML analytics options, but today we are going to dive a little bit deeper into Amazon SageMaker. So, Amazon SageMaker is a fully managed service on AWS that enables data science developers and business analysts to really quickly and easily build, train, and deploy their machine learning models. And really, the point of this service is that all this happens without you getting bogged down with some of those things that really slow down the processes today. So with SageMaker, you can start developing your algorithms immediately with just a couple of clicks in our console, which I will show a little bit later today. You will create these fully managed workspaces. The service automatically takes care of Secure network connections launch that compute power, the baseline computes power that you will need for your training and testing. And it also comes with some pre-loaded libraries so common deep learning frameworks come pre-installed into that underlying compute power. And then, when it’s time to train, SageMakerturns on that compute, performs training, and then when it’s done, turns it off so that you’re not wasting compute power and as well as you’re not incurring costs for things that don’t need to be running.

So, the first subset of SageMaker is called SageMaker Canvas. SageMaker Canvas is really aimed towards people, more like business analysts and analyst experts who aren’t very familiar with code or don’t want to use code. It’s more of a visual interface where you can access and import your data, you can clean up your data, and create some visualizations. Then, Canvas takes care of all of the model selection, training, and optimization so that you get the best model results possible without having to worry about so much code. And then once Canvas gives you that model output, your business analyst can either get predictions within that same user interface or share the code that Canvas ultimately produces and hand that along to more of the data scientists.

So, this is a screenshot of what Canvas looks like. This is what I mean by it being a very visual interface with more of a clicking-around type of interface instead of typing your code up. This just shows how you can prepare some of your Examine the data in the visual interface before initiating any model training or development.

Here’s another screenshot from SageMaker Canvas. Here, you have the option to initialize the model. This allows for rapid experimentation. By clicking, predictions can be created. This interface provides insights into the model’s status and its accuracy, along with advanced metrics. The advantage of Canvas is its no-code approach. Simply interact with the GUI, and Canvas handles the complexities.

Next, we have Amazon SageMaker’s feature known as SageMaker Studio and Studio Notebook. The Studio Notebook is a fundamental component of SageMaker. With Studio, you can manage data processing, analytics, and machine learning workflows. SageMaker Studio effortlessly integrates with your AWS accounts, scanning for data sources. If your data is on AWS, the connection is smooth. Furthermore, Studio Notebooks come with built-in integrations like Spark, Hive, and Presto. This makes it versatile for those already using these tools. Let’s dive into some screenshots, as they offer a clearer perspective.

Here’s the homepage of SageMaker Studio. It provides a comprehensive view. You can visualize all your projects and pipelines, providing a detailed overview on one side. On this side, everything is neatly categorized. Users can explore our Quick Start solutions. These solutions serve as a foundation and you can build upon what we’ve already established and validated. Whether it’s our pre-built Quick Start solutions and algorithms, or starting anew on your own, the choice is yours.

Additionally, Studio can be used for data preparation, with a variety of methods available. I’ll be demonstrating a few later, but starting with Data Wrangler, it offers a visual interface for data preparation. It’s equipped with over 300 built-in transformations requiring minimal coding, enabling you to quickly normalize, transform, and combine any necessary features. Prior to delving into model development, it’s integrated with all our other AWS analytics services, some of which are listed here. Here’s a glimpse of what it looks like in Studio. This screenshot showcases someone using Data Wrangler to process and visualize their data before integrating it into their model pipelines. Thank you. Oh, I seem to have missed this slide.

Within Studio, the continuity is maintained. Within this interface and the same notebook, you can build your ML models after the data preparation step. First, handle data preparation and then proceed to model building, all within the same environment. Studio supports various modeling techniques, evaluating each for performance and providing comprehensive reports on model behaviors. SageMaker Studio delivers clear insights into model explainability. The Jupyter notebooks created within are fully managed and easily shareable across your organization. In essence, Studio serves as a comprehensive development environment for machine learning. The interface, when building models, mirrors that of a standard Jupyter notebook. Additionally, Studio aids in training your ML models. The automatically generated feature importance graphs are a testament to Studio’s capability.

Moreover, Studio offers valuable insights post-model deployment, like the feature importance graphs that appear after your model is in operation. This intricate information is efficiently managed by Studio, sparing you the intricate backstage work.

Okay. When deploying your ML models, Studio maintains a record in a central collaborative repository of all trained and approved models. This information is easily shared across your organization, ensuring everyone is aligned, which aids in better management and streamlines the efficiency of your ML pipelines.

SageMaker also integrates with RStudio, a relatively recent feature addition. You can establish a fully managed cloud-based RStudio workbench, and depending on your requirements, a wide array of compute power options is available. Whether you need compute-optimized instances or machine learning-optimized compute options, easy “lift and shift” migrations are possible. If you already have RStudio workbench licenses, they can be transitioned to the cloud with minimal hassle. This integration serves as an excellent bridge for teams using both Python and R in SageMaker. Data science teams can benefit from the consistent model pipeline and sharing features. The model registry shared across the organization is also compatible with RStudio.

As illustrated in this screenshot, you can seamlessly switch between your RStudio workbench and SageMaker Studio, keeping all projects and data organized in one unified location.

I have a few case studies to showcase. Customers who have utilized SageMaker and reaped its benefits include AstraZeneca, a prominent global pharmaceutical company. They had a problem; it was essentially that they needed to speed up their stages of research and development, particularly regarding tissue samples. So, what they did is they began using SageMaker Studio to create their fully integrated machine learning platform. They started using SageMaker Studio for their ML operations, their model registry, and their feature store and really benefited from their ability to deploy models at different stages or to different environments, having everything in a central place. Now, they can generate their insights in less than two and a half months, compared to the six months it used to take them. They reported approximately a 150% improvement in time to insights.

The second case study here is from Stanford University. Essentially, two university students wanted to answer the question: Can deep learning be applied to quickly and cost-effectively identify precursors to blindness? Based on their classroom experiences, the students knew that AWS provided computing power for deep learning. They imported more than 80,000 images to AWS and were able to use our deep learning algorithms that are already available on AWS to automate this diagnosis. In two days, they could train a new model from scratch and were able to try numerous models repeatedly. They’ve mentioned that without AWS, they wouldn’t have even considered these types of projects. AWS has truly revolutionized research. AWS makes research liberating. I support higher education customers, which is my favorite aspect of this job. Although I might not make any significant research breakthroughs myself, I take pride in aiding researchers to achieve their goals. The offerings on AWS enable rapid research advancements. Supporting such progress is fulfilling. Hearing that AWS allows for previously unimaginable projects is truly rewarding. The rapid advancement of research through AWS is the highlight of our work. Cases where researchers claim they couldn’t embark on projects without AWS are always inspiring. The availability of this technology to facilitate such endeavors is commendable. That’s all I have for today. I’m open to any questions you might have.

Person(1): Thank you. Hi Ruchi. Thanks for the presentation. I have a question about hyperparameter tuning. Can AWS run a sweep on various model parameters and allow us to analyze and select the best ones at the end? Thank you.

Ruchi: Yes, that feature is available in SageMaker. If you need details on accessing it through the console, I can provide that information. But to summarize, it’s indeed possible. SageMaker provides a comprehensive report on the hyperparameters and offers guidance on which ones are optimal. They believe it’s the best or what the optimal actions are for those.

Muni: Okay, hi everyone. This is Muni, a Solutions Architect with Amazon Web Services. This time, I’m going to talk about an introduction to the cloud and some core services. You might want to be aware of these core services. I considered conducting a separate session on how the AWS cloud is structured. But I decided to use this specific time to discuss these services. If you need assistance, please reach out. My account manager, Nate Webber, handles Boise State University. For questions related to AWS account activity, contact Nate and me. So, what is AWS? It stands for Amazon Web Services and offers a highly reliable, scalable, low-cost infrastructure for customers. Think of it like turning on a light and getting electricity. With AWS, you access IT services on demand. It operates on a pay-as-you-go model.
If you need a virtual machine, log on to your AWS account, set up a virtual machine, use it, and when you shut it off, you won’t incur charges. Activate IT resources when needed, use them for a while, and then shut them down.

Now, let’s examine the benefits of using the cloud. As I’ve mentioned, it’s a pay-as-you-go model. You can set up as many virtual machines and infrastructures as you want, and you only pay for the time you use the services.

When it comes to agility, what do you mean by agility? Let’s say, for example, you wanted to spin up an application, test it, and see whether that specific application is going to fit your needs or not. Before the Cloud, it used to be you’d need to order the hardware and host the application. But what if you didn’t like the results? You’ve already spent a lot of time and money on the hardware. But in the Cloud, in minutes, you can spin up the hardware, test the applications you want to, and if you change your mind, you can adapt easily. What this means is it gives IT companies the ability to experiment more with less investment.

Elasticity is the flexibility you have when using the Cloud. For example, you bought hardware with specific computational power, memory, and storage. What if you run out of these hardware resources? Previously, you had to invest in new hardware. Especially during downtimes like semester holidays, your resources might sit idle. In the Cloud, you can adapt to your needs. If you’re not satisfied with the size of the virtual machine, for instance, you spin up a machine with two CPUs and four gigs of RAM. An hour later, if you need more power, you can easily upgrade. Just turn it off, adjust it, and turn it on with increased capabilities in just a few clicks.

And with Global Outreach, we have data centers across different parts of the globe. So, if you want to spin up the same version of an application at a different location across the US or any other country, you can do it within minutes using

Cloud. This is where AWS Cloud stands. All the orange boxes you see labeled as Oregon, and Northern California are what we call “regions”. Let’s say Idaho is situated near the West Coast. The nearest places for you to deploy your IT resources are either Oregon or Northern California. The choice between these two regions depends on where your customer base is. We also have several regions across the East Coast, and as you can see, many more regions globally. This slide is outdated; the red circles represent upcoming data centers we had announced, but they are now already available.

Let’s discuss availability zones. It’s crucial to understand the cloud landscape and how we ensure every application you deploy to the cloud is highly reliable and redundant.

For example, at Boise State University, since I have collaborated with them and am currently working with them, much of their AWS IT infrastructure is in the Oregon region. This is because Idaho is near Oregon. So, we chose the Oregon region for your infrastructure layout.

Each region comprises multiple availability zones. An availability zone is essentially a cluster of data centers. When you look at the pictures like this: this is the Oregon region, and the Oregon region will have more than one availability zone. The Oregon region has, in fact, three or more availability zones. So, if you observe the picture, there are three availability zones. These availability zones are interconnected with each other through high-frequency cables.

These zones provide a method to deploy your applications redundantly. For instance, if you select an availability zone and have your application, let’s say a Student Information System, it means your application is deployed in that specific zone. Now, if you wish to launch another version in a different data center but within the same region, you’d opt for another availability zone. These zones are typically within a 30-mile radius and offer single-digit millisecond latency.

The purpose of this setup is for redundancy. For example, in the rare event that an availability zone fails, which might occur once in several years due to internet issues or power outages, your application will remain operational in another zone. In Oregon, there are several availability zones, giving you the choice of where your application operates.

This is merely an illustration.

Its purpose is to clarify the concepts of regions and availability zones. For example, if Amazon were to announce plans to establish a region, think of it as Amazon deciding to create a region in Idaho state. So, consider Amazon spinning up a data center in Boise, which we could call Availability Zone One.

For redundancy, another Availability Zone might be established in Black Street, which is about 30 miles from Boise. Data would be replicated between these two Availability Zones. Hence, even if one zone fails, the disaster recovery mechanism is activated in the other zone. Importantly, these zones are located in separate floodplains and rely on different power grids. So, a failure in one power grid doesn’t impact the other zone, as they utilize distinct internet service providers. Should one ISP fail, the other zone remains unaffected due to its different ISP. There might also be a third Availability Zone near Kuna. Although my knowledge on Idaho’s geography is limited, these names serve as hypothetical examples. A third zone might exist. Sorry, there was a question posed. This could be a third Availability Zone, and all these zones are interconnected via high-frequency cables, ensuring less than a millisecond latency.

If a fourth Availability Zone emerges, it’ll be integrated with the existing zones. Keep in mind, that this is merely illustrative and not reflective of an actual AWS data center layout. Therefore, please refrain from asking about specific address locations of Oregon’s data region. For the Availability Zone, we never disclose the addresses of our zones due to security reasons. This is merely an example. Just last week, I was in Nevada, giving a presentation to a school. I used a hypothetical map of the Nevada region to explain how Availability Zones are structured. To clarify, AWS doesn’t currently have a region in Idaho.

Now, looking at the actual slide, you can see that Oregon has more than five Availability Zones. Northern California has more than three, and North Virginia has over six. The reason for having six zones in North Virginia is due to the larger customer base on the East Coast. To meet the demand, we continually add zones. Currently, in the USA, the most prominent regions are Oregon and Northern Virginia. You may wonder,Is there a price difference for resources in Oregon compared to North California? Yes, there’s a slight difference. While the costs are similar, California is slightly pricier than Oregon. So, there’s a minor variation in costs between the two regions. Any questions on this? All these regions are interconnected through underwater cables, as displayed in the slides. Additionally, these locations are isolated and function as independent failure zones.

They’re separate entities, providing an added layer of safety since they’re physically separated. They work on different UPS systems. So, they are built for continuous availability. Indeed, they are also powered by multiple ISPs for redundancy.

Apart from these regions, we also have cloud “Points of Presence” locations. Point of Presence locations can be thought of as a smaller version of regions where you can cache your content. For example, if you have the Oregon region and set up your resources there. Let’s say you roll out an application. You have some static images on your application. But if you’re not satisfied with the latency, like between Oregon and a user in Idaho who accesses BoiseState.edu, the assets would be loaded from the Oregon region. But, if you want faster rendering, we have multiple Points of Presence. All the blue dots you see represent them. Based on customer location, you can utilize these Points of Presence locations to serve your cached content. Any cached content can be served using these Points of Presence locations.

Now, let’s talk about EC2. EC2 stands for Elastic Cloud Compute. What is EC2? It’s a very popular service. Essentially, EC2 is a virtual machine. If you have laptops or work on desktops, just think of EC2 as a virtual version. EC2 has a CPU, memory, and storage. It’s like a virtual machine with these components.

We support a variety of operating systems on EC2 including Linux, we support Windows, we support Mac, and we have different types of architectures. Some people ask me, “Hey, can we run Hyper-V on a machine?” This means in a virtual machine, Can you spin up virtual machines? Yes, we support those kinds of architectures as well.

And we have different pricing models for EC2 instances. You can go with on-demand, reserved, or spot.

So, what is on-demand? On-demand means you log into the AWS console, purchase a virtual machine, and for example, the virtual machine costs 20 cents per hour. Let’s say you used it for three hours. That’s going to be 60 cents. After three hours, you turn the machine down, you stop the machine, so your total bill is going to be 60 cents. That’s on-demand.

For reserved instances, if you know you’ll use the virtual machine 24×7 for 365 days, this is where you get huge discounts. For example, if you commit to one year or three years, we calculate the complete 24×7 usage for that year, and we apply a huge discount. Sometimes you can even get a discount of up to 70 percent of what you’d pay for on-demand. So, if you know you’ll use the virtual machine for a specific amount of time and commit to it, that’s what reserved instances are for.

Then there are spot instances, which are popular for research workloads. For example, if you need 100 machines for high-performance computing, or want to run specific jobs but don’t want to pay the on-demand prices because Demand, obviously, is going to be a little bit expensive, but you want to see if you can get those instances for a much cheaper cost. So what we do is provide spot instances.

So spot instances are like unused capacity. Like, AWS, we run lots and lots of virtual machines in the back end. So sometimes, our virtual machines or compute capacity might be sitting idle without any customer usage. So, at that time, what you could do is you could bid. You can bid, like let’s say if the machine costs 20 cents per hour, you can place a bid for like five cents per hour. And if that specific hardware resource is available and no one is surpassing your bid of five cents per hour, you will get that virtual machine. Now let’s say I come in and I say, “Hey, I’ll pay seven cents per hour for this.” Then, what you’re going to see is you’re going to get a two-minute notification saying, “Hey, your machine is going to get terminated in two minutes.” This happens because we got a higher bid. That’s when you bid more, and you get the machine. People do this if their workloads can be interrupted. Yes, you get the spot instance.

And the beauty of the spot instance is, let’s say you bid five cents per hour, you are using the machine, and you used it for 30 minutes. You still have 30 minutes but, let’s say we terminated that machine within before one hour of that usage. That means that you use the machine for free. We won’t charge you for the full hour.

One of the best use cases I have seen is in an Australian energy company. They became very smart, and what they did was they purchased the spot machines during non-business hours. They used to win those bids, run job processing on those spot instances, and end their jobs within 30 minutes. And what happens is someone places a higher bid on that, and those machines get killed. So what happens is, they used to run their complete workload for free on AWS. We came to know about this, we never interrupted them. We thought this was awesome.

Yeah, so this is about the choice of computer. EC2 again stands for virtual machines. They are nothing but virtual servers. If you want to run your workloads on containerized infrastructure, we have ECS, we have EKS, and we have Fargate. ECS is nothing but a cluster of machines where you can run containerized Docker applications. And EKS stands for Kubernetes service and Fargate is serverless. So, for example, if you don’t want to rely on the compute capacity, if you just wanted to say, “Hey, here is my workload, you spin up the instance in the back end,” that’s what Fargate is for. And it’s a serverless concept. Fargate is a server serverless concept because we are the ones who maintain the complete infrastructure at the back end. You don’t have to worry about the nodes and all those things. And AWS Lambda, which is a very popular service, is a serverless service. So, for example, if you have a piece of code that needs some execution, what you can do is you can upload it to AWS Lambda. Lambda will execute that code and it will send the results back to you. You pay for the execution time, as simple as that. You don’t need to provision any virtual machine. You don’t have to do anything. You just upload that piece of code and you get the results back, that’s it. And in terms of programming languages, we support a wide variety. We support Java, you can upload C-sharp, and you can upload Node.js, and Powershell. A lot of languages are supported, like Python. In Lambda, you just upload code and you get the output. It’s as simple as that.

Now, let’s talk a little bit about instance types. So, instance type is nothing but a combination of hardware. The different types Of combinations of hardware that we provided to you.

So, for example, your application might be running compute-intensive workloads. Let’s say, for example, you’re running high-performance parallel processing workloads where you have multiple jobs running, especially the research workloads. So you might need a machine that has more computing capacity. You might not need as much memory, but you might need a machine that has more compute capacity. So for that, we have compute-optimized instances, and they start with the ‘c’, and ‘4.3’ is nothing but a generation, just like 4G or 5G.

And we have memory-optimized instances. Memory optimization instances mean they have more memory capacity compared to the compute capacity. Let’s say you ask me a question, “Hey, my machine needs a balance of both compute and memory, what do I have?” Then you have general purpose, so general-purpose offers a perfect balance of both memory and compute workloads. If you’re just getting started with AWS, then general purpose is for you. Just get started with the general purpose. Once you learn about your workload, then you can definitely migrate to different instance types.

In a couple of minutes, I am going to show you how easy it is to launch these virtual machines and how easy it is to change your mind and convert to a different instance type. And of course, if someone is running some graphics-based intensive workloads, they might need hardware that is GPU-based, like AMD or Nvidia. We have graphics-based instances as well.

So, let me actually log into the AWS console and show you how this works. So you see, I’m logged on to the AWS console. I’m just showing you how easy it is to launch a virtual machine on AWS. So you simply click on EC2, and you click on instances. On the right side, you see an option called “Launch Instance”. You simply click on that. You just give it a name, let’s say “VM”. Scroll down. The next step is to choose an operating system that you want to run on this virtual machine. Let’s say I choose Windows. You have Windows, Linux, MacOS, Ubuntu, Suzy Linux, and many more images. If you have your own operating system with pre-built applications, you can onboard them to AWS as well.

This is an important piece. Here you choose the hardware requirements for this machine. You start with options like C5 large; ‘C’ stands for compute-intensive. As you scroll down, the hardware options become more extensive, with choices such as D3. For example, you see options with 12 CPUs, 48 CPUs, and up to 384 GB of memory. You can choose based on your needs. For this example, I’ll pick a random configuration, not the largest one, to avoid a high bill. I’ll opt for one CPU and one GB of memory. Then you set up the networking part and decide on the traffic security. You can also determine which traffic your machine should listen to. Lastly, you add storage. We provide 30 GB of space for free. If you want, say, a 100 GB volume, just input that, and once everything is set, hit “Launch Instance”. It will initiate the machine in the background. Once the instance is launched, you navigate to EC2, and you can see all the machines that are currently running. Now, let’s say, for example, I have a T2 large machine. A T2 large machine has two CPUs and 8 GBs of memory. Let’s say I wanted to change this machine to eight CPUs and 16 GBs of memory. I want to increase the hardware size. It’s very simple. Right now, it’s a T2 large. Go to “Instance State”, no, “Instance Actions”, then “Instance Settings”. Click on “Change Instance Type”. Now, click on the dropdown. Say you want to change it to C1 medium or C1 x large, a larger instance type. Simply click on “Apply”. This changes the machine from one specific hardware to another. Remember, all your applications running on the virtual machine will remain intact. We’re just increasing the CPU and memory resources for that machine. So, it’s very simple to enhance the hardware capacity of a virtual machine with just a few clicks, as demonstrated. That’s the flexibility I was referring to. Got it? That’s a bit about EC2 and launching a virtual machine. Now, let’s see if there are some instructions here.

We conduct a complete training session on these concepts, covering EC2, VPC (how you layout your network in AWS), and the various storage options in AWS.Like S3, which stands for Simple Storage Service. For instance, Netflix, a significant customer of Amazon Web Services, stores all its movies on S3. We’ll dive deep into S3 and other core services, learning about best practices. Along with theoretical sessions, we offer hands-on labs. We’ll provide you with dummy AWS accounts, allowing you to launch EC2 instances on your own. With the S3 service, you can upload your images and see how these services function. We’ll be offering a full or half-day training session on this. If you’re interested, you know how to reach out to me. I believe our time is up, and it’s 11 o’clock. Thank you so much.

Ruchi: Hello again, everyone. Welcome back. I’m going to showcase nearly everything I previously discussed about Amazon SageMaker. Currently, you’re viewing the AWS console homepage. This is how it appears upon login. On the top right, you have your account details and the region you’re currently in, which for me is the US East (Northern Virginia). Hence, any resources I deploy will be routed through this region. On the top left corner, there’s a navigation menu for all AWS services. You can access this through a dropdown menu or simply use the search bar, which, in my opinion, is more convenient. Let’s proceed to Amazon SageMaker. This is SageMaker’s homepage. It encapsulates all the features I discussed about SageMaker. You can access the Studio, Canvas, RStudio, and more, all from this single interface. Navigating down the left side, you’ll find many other SageMaker features. For instance, all your models undergoing training will appear in the training section. This includes your training jobs, hyperparameter tuning jobs, and algorithms. Additionally, all your notebooks will be consolidated in one location right here. This interface primarily aids in navigation and provides a centralized overview of SageMaker’s capabilities. For newcomers, you’d begin by selecting ‘Getting Started’. This step sets up your domain with the appropriate permissions, including security permissions and credentials to access data sources. I’ve pre-configured this role as it takes a few minutes. Now, I’ll give you a look at SageMaker Studio. Remember, Studio is a visual interface that offers comprehensive data preparation, model training, tuning, and more in one place. To access, click on ‘Studio’ then ‘Open Studio’. It might take a moment to load.

Here’s the SageMaker Studio homepage. From this launcher, you can create notebooks, open a code console, or a terminal. Currently, we are running on the ml.t3.medium instance using Python 3. You can modify this environment. By selecting ‘Change Environment’,

you can choose a different instance type based on your needs, whether that’s more computational power or perhaps less. What you are trying to do, you can go in here and select out of these options. We can see there are quite a few options available here. I’m going to keep that the same. I just wanted to point out that the option is there. Just again, based on what you need to do, we’ll click cancel. Over here on the left-hand side, you have a really basic file structure. So I actually have a lot of files in here from a workshop I had imported for today.That’s a basic file structure, nothing really crazy there. And then here, this little button, the fourth one from the top, shows changes that have been made to your current brand. So it’s like a git; it’s pretty much like a git repository. You can see changes history, see who changed what code, what happened to the model, kind of track that for any management and compliance purposes. But just staying on the Home tab, this splits up your data, your notebook jobs, any models that you may have running, what the model registry looks like. So this model registry, again, can be shared across users in your organization, so everyone can be using the same models. You’ll have information on other new deployments going on. How, and where in the pipeline are the projects that we’re working on currently? But I wanted to show you Data Wrangler really briefly. So, Data Wrangler, remember, that is how you can aggregate and prepare your data with little to no code. So I’m just gonna click that, and we are going to click import data. So, what Data Wrangler does is that it seamlessly analyzes your AWS environment for any data sources to import to SageMaker. So anything that is compatible with SageMaker, we have these top six as our more AWS native data stores, and then we have all these external data sources that you can also connect to SageMaker, depending on where your data is and what you want to run your analytics on. I’m going to check this chat question real quickly. Recorded video? I believe this is being recorded, okay, thanks, Jenny. Great, so this is just how we would connect the data and put it into Data Wrangler or SageMaker Studio. I’m actually just going to be using a sample dataset that we have here because that’s just a little bit easier for demo purposes. So, the sample dataset that Studio provides is, I believe, information about the Titanic passengers. So you can see that validation has been completed. That means that the dataset has been imported without any errors. You can see zero errors. So, click done there, and now we kind of get to create a data flow. This is really beneficial if you have datasets that have multiple datasets with the same structure or schema, and You need to continuously clean this type of dataset. You can create one data flow just once and then apply this data flow to incoming datasets or different datasets so that the manual work of having to clean the data up over and over again doesn’t have to happen. So, what we do to essentially add a step to the data flow is we would click the plus sign. And let’s just look at an analysis. We’ll click “Add Analysis”. You get all these options, and again, it’s little to no code. This is really just a click-around interface. So, we’ll look at a histogram. Let’s look at the histogram for the age of those on the Titanic and we can color it by, let’s say, if they survived or not. Then you’ll get a preview; we get a nice visualization that can help you with your analysis. Then, we’ll click “Save”.

If you go back to the data flow, you can see that a new step has been added. So, you can continue to do this, you can continue to add other steps to the dataset.

It’s not letting me add from the histogram because you can’t add a transformation to a histogram. So, you would continue the steps from the dataset directly. You can add a transformation, and I’ll show you some of the options there.

Here, you can add a custom formula or a custom transformation if you have a quick code snippet that you want to import. Then there are some of these standard ones such as encoding, featurizing date, Time filtering any data, and handling missing values. You can replace or drop any missing values. Any questions about the Data Wrangler challenge?

So, within Studio, as I said, you can also have just regular Jupyter notebooks. Right, so this tab that I have opened up here is [Music], one of our sample notebooks, actually. We have multiple sample notebooks that you can go ahead and work with just to get some practice with SageMaker and then practice with AI and ML in general.

I just wanted to show you that visually. How it looks is, it looks almost identical to a regular Jupyter notebook. These are just regular cells of code, regular markdown cells here. And then at the top, you have the same options to run, stop, markdown, code, or raw, and you can access your terminal from here as well.

I did run a training job, so let’s see if that is So, even if you are just fine, I just wanted to show you the example of what the code looks like for training using some of our AWS SageMaker syntax that we have but since we are using the built-in XGBoost algorithm that SageMaker offers, This is what that code cell looks like. You simply pass it the information for the instance type, how many instances you have running for this training, Job, and where you want the output of this training job to be stored.

And then this right here, the xgb.fit, is what really starts the training. So we can see that I started it about 20-30 minutes ago. Once you run a training job in Studio, you can go back to your main SageMaker console and under “Training,” look at training jobs and you will see all of your job statuses. If a job failed, this job status would be set to “failed.” Then, you can delve into this information to see maybe what happened. At the bottom, there are algorithm metrics. If you click on that, it will guide you to metrics that can help you deduce what went wrong, and why the training failed, if it did.

Another thing with SageMaker: if you don’t want to use Studio, then If you don’t need all these advanced features to assist with data preparation, management of your models, deployments, and projects, and want some management aspects simplified, or if you simply want to leverage our computational power, to its maximum and just want a basic Jupyter notebook to utilize our resources and manage everything yourself, you can set that up under “Notebook”, then “Notebook Instances”, and then create a notebook instance from there. Simply give it a name.

Interestingly, there are more instance-type options available here, distinguishing it from SageMaker Studio. Those who opt for regular notebooks will find a broader range of compute instance choices.

I’ll demonstrate how it looks. Once active, you just click “Open”, and it resembles a conventional Jupyter notebook. You can upload files, or click “New” and select “conda python3”. It’s standard in appearance, but backed by our computational power. This allows you to run more compute-intensive tasks and training models with efficiency. One thing to note: if you use Amazon SageMaker Studio, it will automatically shut down your notebook after a specified idle period, reducing your operational costs by preventing unnecessary runtime. While SageMaker Studio shuts down automatically to save resources, the basic SageMaker notebooks do not. After using them, you need to revisit the SageMaker console and manually stop your notebook to prevent continuous costs.

Additionally, I’d like to showcase a feature especially beneficial for institutions, universities, and researchers: Studio Lab. Clicking this link takes you outside the console to Studio Lab, an initiative to make data science, ML, and AI more accessible.

Studio Lab is essentially a free version of SageMaker Studio. You can create an account for Studio Lab without needing an AWS account. Anyone can sign up at studiolab.sagemaker.aws. With Studio Lab, users still access our computational power, both CPU and GPU, but without the costs. The limitation is 12 hours of usage every 24-hour period, but users enjoy the benefits of our powerful computing resources.

Studio Lab eliminates the need to manage infrastructure, helping users focus on code and machine learning projects. It’s particularly useful for students, offering hands-on ML experience in an accessible manner. After creating an account, your 12-hour runtime within a 24-hour window begins once you hit ‘Start runtime’. This can be divided into segments, like two-hour durations, as long as you stop the runtime.

At its core, Studio Lab provides regular Jupyter notebooks. For instance, when I open a sample project, it displays a beginner’s guide preloaded within the platform. It looks like any typical Jupyter notebook, making it a beneficial tool for fostering ML accessibility and hands-on learning. Students can freely experiment with ML concepts without financial constraints.

Additionally, Studio Lab offers courses, like those from the AWS Machine Learning University—courses used to train our internal engineers. Moreover, it houses blogs, examples, and tutorials for users to explore. Returning to SageMaker, there are also numerous tutorials within the console to assist users in starting their journey, along with resources in Studio. Lab as well, under Sagemaker Jumpstart, we have some pre-trained example notebooks. And models are also a really beneficial way to just kind of get started in learning the service and how things work around here. That’s really all I have planned, but if anyone has something specific they would like to see, I would be happy to show that or any questions that we can dive into.

Jenny: Hello. Hi Richie, thank you for your talk. I had a question about Data Wrangler. So you mentioned that you can apply filters to your data. For reproducibility, are you able to from Data Wrangler extract that code? That is being used so that you could show that if you wanted to reproduce it? Like the transforms that are being applied to your data, yes I know.

Ruchi: Yes, I know there is a way. Once this flow is complete
and you click create job, there is a way to download the code, the code version of what it did. Oh, okay, cool. Thank you. Any more questions for Ruchi?

Muni: Well, thank you, Richie.

Ruchi: Sorry, there’s a question in the chat. “Is it possible to develop code in a local machine and upload it to Sagemaker for free?” Yes. So if you want to use Studio Lab, you can upload a code file or an IPYNB file and use that on our compute. As long as it is within the minimum 12-hour range.

Muni: I also wanted to talk a little bit about some of the machine learning services that we have that have been helpful for customers. So, if you look at the screen, we have the AI and ML services. Looking at some of the services like Amazon Recognition, Recognition is a service like, for example, you have a photo. I just wanted to showcase some of our AI/ML services that will be useful for many educational institutions.

So, as you see, we have a suite of services here. Starting with Amazon Recognition, let’s say you have some photos and you want to extract some critical information. Sure. Okay, let’s say if you want to extract some critical information from those photos, then you can use the Amazon Recognition service.

I’ll show you a small sample here. So, if you see here, we have a sample picture. What it does is, it basically captures all the image information. If you see here, it says yes, it looks like a face and the confidence score is like 99.99 and it says the age range could be 25 to 35 years old. Yes, happiness is like 70 percent. Yes, she’s happy. So, I mean, it can capture a lot of things. That can be seen from the pic. You just upload the picture and it can capture a lot of information.

Recently, I spoke to a health institution where they wanted to, they have like a bunch of pictures and they wanted to separate all the pictures that have kids into separate content. So they simply uploaded their pictures to the Amazon recognition service Recognition service automatically pulled out all the images that had images of the kids and dropped them into a different folder. That made the health institute do further analysis.

And if you see here, if you see, there’s a picture that has three people. If you upload this picture, it can break down, so it first takes the picture of the first person and it shows the age and different characteristics of the picture. If you hit next, then it will show the characteristics of the specific one in the picture. And we have a small child, we have like six to fourteen years old, so it can easily determine what is going on.

And let’s say, for example, if you upload a picture of nature, it can show mountains with 99 percent confidence. Like, see, 99 percent confidence it’s winter, it’s raining, so it can capture a lot of content from the image details.

And then we have Amazon Polly. Polly is a service that can convert text to speech. You know, if you call a customer care service, that’s like, for example, if you decide to use Poly in Boise State University. If a student calls the customer care service based on a specific flowchart, let’s say for example, if the student selects one, they might be redirected to some help desk. And let’s say if they want to reset the password, so Poly provides all that background voice information. It can talk like a woman, or it can talk like a man. So, that’s a speech-to-text translation service.

And we have Amazon Comprehend. So, Comprehension is a service for example, in the 1970s, 1960s, if you look at the doctor’s prescriptions, they just wrote a letter. They wrote the prescription: what pills and what’s the dosage they wanted to use. At that point in time, we didn’t have any computer applications for the doctor to enter all that information. So what Comprehend can do is, if you feed in all those documents with the unstructured data, Comprehend can analyze all those documents and structure them. It can identify, for instance, that this prescription is from this specific date, and this is the drug that was prescribed, and this is the dosage. Who is the patient? Everything can be done by Comprehend service.

And Amazon Transcribe service is a speech-to-text translation. If you have any speech, like if I’m talking and you want to convert it to text, you can use Transcribe.

We have Amazon Personalize, a service, for example, If you are watching movies on Netflix or Amazon Prime, let’s say you watch Avatar, Comprehend can automatically identify your interests. Based on what you’re watching, it can recommend movies similar to Avatar. That’s what Comprehend service is used for.

And we have Amazon Forecast. For instance, the best use case for Forecast is when amazon.com is selling a specific item and is about to run out of stock, Forecast can alert the backend engineers to restock. Additionally, if there’s traffic in a particular city, it can analyze the traffic patterns and alert traffic management about upcoming congestion.

Then there’s Amazon CodeGuru. If you upload code, it will analyze and provide feedback on potential improvements.

There are numerous use cases. How many of you have heard of Coursera?

Coursera is an online learning platform. When you subscribe to a course, like a data analytics course, you might receive a recommendation based on an instructor you liked. If there’s another course by the same instructor, Coursera uses Amazon Personalize to recommend it.

We also have Grammarly, an online tool where you can input text. It corrects grammar and suggests better sentence structures. And of course, there’s Alexa.

Alexa is a widely used service. Numerous educational institutions utilize Alexa. For instance, when students want to contact a specific instructor, Alexa can scan the campus directory and guide the student accordingly.

Portland Research Portland State University is one of my clients. Before 2020, they had many students not graduating. According to U.S. statistics, 60% of individuals didn’t graduate due to lack of guidance. Portland State University utilized historical data, fed it into machine learning models, and we collaboratively developed a project called “Guided Pathways”. Guided Pathways assists students in selecting courses based on their interests, suggesting, for example, “Given your current courses, selecting these might delay your graduation. Consider these alternatives for a quicker graduation.” This project aims to expedite student graduation. Thus, we built Guided Pathways for Portland State University.

Chesterfield County Public Schools, which comprises 64 schools and 63,000 students, uses machine learning on Amazon Web Services to predict the county’s chronic absenteeism rate. This system estimates how many students might be frequently absent.

Fred Hudson, a Medical Institute in Seattle, similarly utilizes I already told you they use this Comprehend service extensively, so they had numerous documents. I mean, they have tons of paper documentation with dates, drugs, and prescriptions. They use Comprehend service to convert all this unstructured data on paper into structured data. What used to take hours to process each document, they can now do in seconds using Comprehend service.

Of course, many educational institutions are now looking towards building their own data lakes. Data lakes are vital. For example, if you consider Boise State University, might have student data on different databases. You have the Office of Information Technology, College of Engineering, and the student information system. Each department has its own database. What Data Lake can do is pull the data from these sources and store it on a cost-effective AWS storage, S3. Once the data is on S3, we can run AI and ML algorithm services. For example, a recent customer used Data Lake to build a service that assists faculty in scheduling classes without having to scour Excel sheets to see which classroom is available.

There are many such institutions. These are just some of the machine learning use cases I wanted to share with you. Thank you.