[−][src]Struct rusoto_sagemaker::InputConfig
Contains information about the location of input model artifacts, the name and shape of the expected data inputs, and the framework in which the model was trained.
Fields
data_input_config: String
Specifies the name and shape of the expected data inputs for your trained model with a JSON dictionary form. The data inputs are InputConfig$Framework specific.
-
TensorFlow
: You must specify the name and shape (NHWC format) of the expected data inputs using a dictionary format for your trained model. The dictionary formats required for the console and CLI are different.-
Examples for one input:
-
If using the console,
{"input":[1,1024,1024,3]}
-
If using the CLI,
{"input":[1,1024,1024,3]}
-
-
Examples for two inputs:
-
If using the console,
{"data1": [1,28,28,1], "data2":[1,28,28,1]}
-
If using the CLI,
{"data1": [1,28,28,1], "data2":[1,28,28,1]}
-
-
-
KERAS
: You must specify the name and shape (NCHW format) of expected data inputs using a dictionary format for your trained model. Note that while Keras model artifacts should be uploaded in NHWC (channel-last) format,DataInputConfig
should be specified in NCHW (channel-first) format. The dictionary formats required for the console and CLI are different.-
Examples for one input:
-
If using the console,
{"input1":[1,3,224,224]}
-
If using the CLI,
{"input1":[1,3,224,224]}
-
-
Examples for two inputs:
-
If using the console,
{"input1": [1,3,224,224], "input2":[1,3,224,224]}
-
If using the CLI,
{"input1": [1,3,224,224], "input2":[1,3,224,224]}
-
-
-
MXNET/ONNX/DARKNET
: You must specify the name and shape (NCHW format) of the expected data inputs in order using a dictionary format for your trained model. The dictionary formats required for the console and CLI are different.-
Examples for one input:
-
If using the console,
{"data":[1,3,1024,1024]}
-
If using the CLI,
{"data":[1,3,1024,1024]}
-
-
Examples for two inputs:
-
If using the console,
{"var1": [1,1,28,28], "var2":[1,1,28,28]}
-
If using the CLI,
{"var1": [1,1,28,28], "var2":[1,1,28,28]}
-
-
-
PyTorch
: You can either specify the name and shape (NCHW format) of expected data inputs in order using a dictionary format for your trained model or you can specify the shape only using a list format. The dictionary formats required for the console and CLI are different. The list formats for the console and CLI are the same.-
Examples for one input in dictionary format:
-
If using the console,
{"input0":[1,3,224,224]}
-
If using the CLI,
{"input0":[1,3,224,224]}
-
-
Example for one input in list format:
[[1,3,224,224]]
-
Examples for two inputs in dictionary format:
-
If using the console,
{"input0":[1,3,224,224], "input1":[1,3,224,224]}
-
If using the CLI,
{"input0":[1,3,224,224], "input1":[1,3,224,224]}
-
-
Example for two inputs in list format:
[[1,3,224,224], [1,3,224,224]]
-
-
XGBOOST
: input data name and shape are not needed.
DataInputConfig
supports the following parameters for CoreML
OutputConfig$TargetDevice (ML Model format):
-
shape
: Input shape, for example{"input1": {"shape": [1,224,224,3]}}
. In addition to static input shapes, CoreML converter supports Flexible input shapes:-
Range Dimension. You can use the Range Dimension feature if you know the input shape will be within some specific interval in that dimension, for example:
{"input1": {"shape": ["1..10", 224, 224, 3]}}
-
Enumerated shapes. Sometimes, the models are trained to work only on a select set of inputs. You can enumerate all supported input shapes, for example:
{"input1": {"shape": [[1, 224, 224, 3], [1, 160, 160, 3]]}}
-
-
defaultshape
: Default input shape. You can set a default shape during conversion for both Range Dimension and Enumerated Shapes. For example{"input1": {"shape": ["1..10", 224, 224, 3], "defaultshape": [1, 224, 224, 3]}}
-
type
: Input type. Allowed values:Image
andTensor
. By default, the converter generates an ML Model with inputs of type Tensor (MultiArray). User can set input type to be Image. Image input type requires additional input parameters such asbias
andscale
. -
bias
: If the input type is an Image, you need to provide the bias vector. -
scale
: If the input type is an Image, you need to provide a scale factor.
CoreML ClassifierConfig
parameters can be specified using OutputConfig$CompilerOptions. CoreML converter supports Tensorflow and PyTorch models. CoreML conversion examples:
-
Tensor type input:
-
"DataInputConfig": {"input1": {"shape": [[1,224,224,3], [1,160,160,3]], "defaultshape": [1,224,224,3]}}
-
-
Tensor type input without input name (PyTorch):
-
"DataInputConfig": [{"shape": [[1,3,224,224], [1,3,160,160]], "defaultshape": [1,3,224,224]}]
-
-
Image type input:
-
"DataInputConfig": {"input1": {"shape": [[1,224,224,3], [1,160,160,3]], "defaultshape": [1,224,224,3], "type": "Image", "bias": [-1,-1,-1], "scale": 0.007843137255}}
-
"CompilerOptions": {"classlabels": "imagenetlabels1000.txt"}
-
-
Image type input without input name (PyTorch):
-
"DataInputConfig": [{"shape": [[1,3,224,224], [1,3,160,160]], "defaultshape": [1,3,224,224], "type": "Image", "bias": [-1,-1,-1], "scale": 0.007843137255}]
-
"CompilerOptions": {"classlabels": "imagenetlabels1000.txt"}
-
framework: String
Identifies the framework in which the model was trained. For example: TENSORFLOW.
s3_uri: String
The S3 path where the model artifacts, which result from model training, are stored. This path must point to a single gzip compressed tar archive (.tar.gz suffix).
Trait Implementations
impl Clone for InputConfig
[src]
pub fn clone(&self) -> InputConfig
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for InputConfig
[src]
impl Default for InputConfig
[src]
pub fn default() -> InputConfig
[src]
impl<'de> Deserialize<'de> for InputConfig
[src]
pub fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
impl PartialEq<InputConfig> for InputConfig
[src]
pub fn eq(&self, other: &InputConfig) -> bool
[src]
pub fn ne(&self, other: &InputConfig) -> bool
[src]
impl Serialize for InputConfig
[src]
pub fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl StructuralPartialEq for InputConfig
[src]
Auto Trait Implementations
impl RefUnwindSafe for InputConfig
[src]
impl Send for InputConfig
[src]
impl Sync for InputConfig
[src]
impl Unpin for InputConfig
[src]
impl UnwindSafe for InputConfig
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
pub fn instrument(self, span: Span) -> Instrumented<Self>
[src]
pub fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,