Skip to content

Commit dbff06b

Browse files
committed
custom models, roles
1 parent c910c08 commit dbff06b

File tree

5 files changed

+28
-9
lines changed

5 files changed

+28
-9
lines changed

docs-source/appliance-buttons.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,9 @@ To reset the device, use the following button combinations\. A short press is 1
1818

1919
**Reset operations**
2020
+ **To shut down the appliance** – Short press power\. Starts a shutdown sequence that takes about 10 seconds\.
21-
+ **To restore the latest software image**Short press reset\.
22-
+ **To restore the factory software image**Long press reset\.
23-
+ **To restore the factory software image and delete all configuration files and applications**Long press power and reset\.
21+
+ **To restore the latest software image**Shut down the appliance, and then short press reset\.
22+
+ **To restore the factory software image**Shut down the appliance, and then long press reset\.
23+
+ **To restore the factory software image and delete all configuration files and applications**Shut down the appliance, and then long press power and reset\.
2424

2525
The network LED has the following states:
2626

docs-source/applications-models.md

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Whether you import a model from SageMaker or from Amazon S3, the name of the Ama
1212

1313
**Topics**
1414
+ [Sample model](#applications-models-sample)
15+
+ [Building a custom model](#applications-models-custom)
1516
+ [Using models in code](#applications-models-using)
1617
+ [Training models](#applications-models-training)
1718

@@ -24,6 +25,24 @@ This guide uses a sample object detection model\. The sample model uses the obje
2425

2526
To get started with the sample model, see [Deploying the AWS Panorama sample application](gettingstarted-deploy.md)\.
2627

28+
## Building a custom model<a name="applications-models-custom"></a>
29+
30+
You can use models that you build in PyTorch, Apache MXNet, and TensorFlow in AWS Panorama applications\. As an alternative to building and training models in SageMaker, you can use a trained model or build and train your own model with a supported framework and export it in a local environment or in Amazon EC2\.
31+
32+
**Note**
33+
For details about the framework versions and file formats supported by SageMaker Neo, see [Supported Frameworks](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-supported-devices-edge-frameworks.html) in the Amazon SageMaker Developer Guide\.
34+
35+
The repository for this guide provides a sample application that demonstrates this workflow for a Keras model in TensorFlow `SavedModel` format\. It uses TensorFlow 1\.15 and can run locally in a virtual environment or in a Docker container\. The sample app also includes templates and scripts for building the model on an Amazon EC2 instance\.
36+
37+
****
38+
+ [Custom model sample application](https://github.com/awsdocs/aws-panorama-developer-guide/blob/main/sample-apps/custom-model)
39+
40+
![\[\]](http://docs.aws.amazon.com/panorama/latest/dev/images/sample-custom-model.png)
41+
42+
AWS Panorama uses SageMaker Neo to compile models for use on the AWS Panorama Appliance\. For each framework, use the [format that's supported by SageMaker Neo](https://docs.aws.amazon.com/sagemaker/latest/dg/neo-compilation-preparing-model.html), package the model in a `.tar.gz` archive, and store it in an Amazon S3 bucket that AWS Panorama can access\.
43+
44+
For more information, see [Compile and Deploy Models with Neo ](https://docs.aws.amazon.com/sagemaker/latest/dg/neo.html) in the Amazon SageMaker Developer Guide\.
45+
2746
## Using models in code<a name="applications-models-using"></a>
2847

2948
On the appliance, model files are stored in a folder named after the model resource that you create in the AWS Panorama console when you [create an application](gettingstarted-deploy.md#gettingstarted-deploy-create)\. The application code uses the directory name to reference the model and load it with the AWS Panorama Application SDK\.
@@ -56,11 +75,11 @@ For example, the following initialization code loads a model named `my-model`\.
5675

5776
## Training models<a name="applications-models-training"></a>
5877

59-
When you a model, use images from the target environment, or from a test environment that closely resembles the target environment\. Consider the following factors that can affect model performance:
78+
When you train a model, use images from the target environment, or from a test environment that closely resembles the target environment\. Consider the following factors that can affect model performance:
6079

6180
****
6281
+ **Lighting** – The amount of light that is reflected by a subject determines how much detail the model has to analyze\. A model trained with images of well\-lit subjects might not work well in a low\-light or backlit environment\.
6382
+ **Resolution** – The input size of a model is typically fixed at a resolution between 224 and 512 pixels wide in a square aspect ratio\. Before you pass a frame of video to the model, you can downscale or crop it to fit the required size\.
64-
+ **Image distortion** – A camera's focal length and lens shape can cause images to exhibit distortion away from the center of the frame\. The position of a camera also determines which features of a subject are visible\. For example, an overhead camera with a wide angle lens will show the top of a subject when its in the center of the frame, and a skewed view of the subject's side as it moves farther away from center\.
83+
+ **Image distortion** – A camera's focal length and lens shape can cause images to exhibit distortion away from the center of the frame\. The position of a camera also determines which features of a subject are visible\. For example, an overhead camera with a wide angle lens will show the top of a subject when it's in the center of the frame, and a skewed view of the subject's side as it moves farther away from center\.
6584

6685
To address these issues, you can preprocess images before sending them to the model, and train the model on a wider variety of images that reflect variances in real\-world environments\. If a model needs to operate in a lighting situations and with a variety of cameras, you need more data for training\. In addition to gathering more images, you can get more training data by creating variations of your existing images that are skewed or have different lighting\.

docs-source/security-dataprotection.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ For data protection purposes, we recommend that you protect AWS account credenti
1010
+ Use advanced managed security services such as Amazon Macie, which assists in discovering and securing personal data that is stored in Amazon S3\.
1111
+ If you require FIPS 140\-2 validated cryptographic modules when accessing AWS through a command line interface or an API, use a FIPS endpoint\. For more information about the available FIPS endpoints, see [Federal Information Processing Standard \(FIPS\) 140\-2](http://aws.amazon.com/compliance/fips/)\.
1212

13-
We strongly recommend that you never put sensitive identifying information, such as your customers' account numbers, into free\-form fields such as a **Name** field\. This includes when you work with AWS Panorama or other AWS services using the console, API, AWS CLI, or AWS SDKs\. Any data that you enter into AWS Panorama or other services might get picked up for inclusion in diagnostic logs\. When you provide a URL to an external server, don't include credentials information in the URL to validate your request to that server\.
13+
We strongly recommend that you never put confidential or sensitive information, such as your customers' email addresses, into tags or free\-form fields such as a **Name** field\. This includes when you work with AWS Panorama or other AWS services using the console, API, AWS CLI, or AWS SDKs\. Any data that you enter into tags or free\-form fields used for names may be used for billing or diagnostic logs\. If you provide a URL to an external server, we strongly recommend that you do not include credentials information in the URL to validate your request to that server\.
1414

1515
**Topics**
1616
+ [Encryption in transit](#security-privacy-intransit)
@@ -30,7 +30,7 @@ The contents of the configuration archive, which includes the appliance's privat
3030

3131
Other settings, such as camera stream credentials \(username and password\) are encrypted at rest in AWS\. Settings are decrypted prior to transport and sent to the appliance over TLS\.
3232

33-
To store your models securely in Amazon S3, you can use server\-side encryption with a key that Amazon S3 manages, or one that you provide\. For more information, see [Protecting data using encryption](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) in the Amazon Simple Storage Service Developer Guide\.
33+
To store your models securely in Amazon S3, you can use server\-side encryption with a key that Amazon S3 manages, or one that you provide\. For more information, see [Protecting data using encryption](https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingEncryption.html) in the Amazon Simple Storage Service User Guide\.
3434

3535
When you author application code in AWS Lambda, Lambda encrypts the function code by default\. For more information, see [Data protection in AWS Lambda ](https://docs.aws.amazon.com/lambda/latest/dg/security-dataprotection.html) in the AWS Lambda Developer Guide\.
3636

docs-source/security-iam-awsmanpol.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ To add permissions to users, groups, and roles, it is easier to use AWS managed
44

55
AWS services maintain and update AWS managed policies\. You can't change the permissions in AWS managed policies\. Services occasionally add additional permissions to an AWS managed policy to support new features\. This type of update affects all identities \(users, groups, and roles\) where the policy is attached\. Services are most likely to update an AWS managed policy when a new feature is launched or when new operations become available\. Services do not remove permissions from an AWS managed policy, so policy updates won't break your existing permissions\.
66

7-
Additionally, AWS supports managed policies for job functions that span multiple services\. For example, the **ReadOnlyAccess** AWS managed policy provides read\-only access to all AWS services and resources\. When a service launches a new feature, AWS adds read\-only permissions for new operations and resources\. For a list and descriptions of job function policies, see [AWS managed policies for job functions](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) in the *IAM User Guide*\.
7+
Additionally, AWS supports managed policies for job functions that span multiple services\. For example, the **ViewOnlyAccess** AWS managed policy provides read\-only access to many AWS services and resources\. When a service launches a new feature, AWS adds read\-only permissions for new operations and resources\. For a list and descriptions of job function policies, see [AWS managed policies for job functions](https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_job-functions.html) in the *IAM User Guide*\.
88

99
AWS Panorama provides the following managed policies\. For the full contents and change history of each policy, see the linked pages in the IAM console\.
1010

docs-source/security-iam.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ IAM roles with temporary credentials are useful in the following situations:
5353
+ **Cross\-account access** – You can use an IAM role to allow someone \(a trusted principal\) in a different account to access resources in your account\. Roles are the primary way to grant cross\-account access\. However, with some AWS services, you can attach a policy directly to a resource \(instead of using a role as a proxy\)\. To learn the difference between roles and resource\-based policies for cross\-account access, see [How IAM roles differ from resource\-based policies](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_compare-resource-policies.html) in the *IAM User Guide*\.
5454
+ **Cross\-service access** – Some AWS services use features in other AWS services\. For example, when you make a call in a service, it's common for that service to run applications in Amazon EC2 or store objects in Amazon S3\. A service might do this using the calling principal's permissions, using a service role, or using a service\-linked role\.
5555
+ **Principal permissions** – When you use an IAM user or role to perform actions in AWS, you are considered a principal\. Policies grant permissions to a principal\. When you use some services, you might perform an action that then triggers another action in a different service\. In this case, you must have permissions to perform both actions\. To see whether an action requires additional dependent actions in a policy, see [Actions, Resources, and Condition Keys for AWS Panorama](https://docs.aws.amazon.com/IAM/latest/UserGuide/list_awspanorama.html) in the *Service Authorization Reference*\.
56-
+ **Service role** – A service role is an [IAM role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) that a service assumes to perform actions on your behalf\. Service roles provide access only within your account and cannot be used to grant access to services in other accounts\. An IAM administrator can create, modify, and delete a service role from within IAM\. For more information, see [Creating a role to delegate permissions to an AWS service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) in the *IAM User Guide*\.
56+
+ **Service role** – A service role is an [IAM role](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles.html) that a service assumes to perform actions on your behalf\. An IAM administrator can create, modify, and delete a service role from within IAM\. For more information, see [Creating a role to delegate permissions to an AWS service](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html) in the *IAM User Guide*\.
5757
+ **Service\-linked role** – A service\-linked role is a type of service role that is linked to an AWS service\. The service can assume the role to perform an action on your behalf\. Service\-linked roles appear in your IAM account and are owned by the service\. An IAM administrator can view, but not edit the permissions for service\-linked roles\.
5858
+ **Applications running on Amazon EC2** – You can use an IAM role to manage temporary credentials for applications that are running on an EC2 instance and making AWS CLI or AWS API requests\. This is preferable to storing access keys within the EC2 instance\. To assign an AWS role to an EC2 instance and make it available to all of its applications, you create an instance profile that is attached to the instance\. An instance profile contains the role and enables programs that are running on the EC2 instance to get temporary credentials\. For more information, see [Using an IAM role to grant permissions to applications running on Amazon EC2 instances](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_use_switch-role-ec2.html) in the *IAM User Guide*\.
5959

0 commit comments

Comments
 (0)