public final class SmoothGradConfig extends GeneratedMessageV3 implements SmoothGradConfigOrBuilder
Config for SmoothGrad approximation of gradients.
When enabled, the gradients are approximated by averaging the gradients from
noisy samples in the vicinity of the inputs. Adding noise can help improve
the computed gradients. Refer to this paper for more details:
https://arxiv.org/pdf/1706.03825.pdf
Protobuf type google.cloud.vertexai.v1beta1.SmoothGradConfig
Inherited Members
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT)
com.google.protobuf.GeneratedMessageV3.<ListT>makeMutableCopy(ListT,int)
com.google.protobuf.GeneratedMessageV3.<T>emptyList(java.lang.Class<T>)
com.google.protobuf.GeneratedMessageV3.internalGetMapFieldReflection(int)
Static Fields
FEATURE_NOISE_SIGMA_FIELD_NUMBER
public static final int FEATURE_NOISE_SIGMA_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
NOISE_SIGMA_FIELD_NUMBER
public static final int NOISE_SIGMA_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
NOISY_SAMPLE_COUNT_FIELD_NUMBER
public static final int NOISY_SAMPLE_COUNT_FIELD_NUMBER
Field Value |
Type |
Description |
int |
|
Static Methods
getDefaultInstance()
public static SmoothGradConfig getDefaultInstance()
getDescriptor()
public static final Descriptors.Descriptor getDescriptor()
newBuilder()
public static SmoothGradConfig.Builder newBuilder()
newBuilder(SmoothGradConfig prototype)
public static SmoothGradConfig.Builder newBuilder(SmoothGradConfig prototype)
public static SmoothGradConfig parseDelimitedFrom(InputStream input)
public static SmoothGradConfig parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
parseFrom(byte[] data)
public static SmoothGradConfig parseFrom(byte[] data)
Parameter |
Name |
Description |
data |
byte[]
|
parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
public static SmoothGradConfig parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
parseFrom(ByteString data)
public static SmoothGradConfig parseFrom(ByteString data)
parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static SmoothGradConfig parseFrom(ByteString data, ExtensionRegistryLite extensionRegistry)
public static SmoothGradConfig parseFrom(CodedInputStream input)
public static SmoothGradConfig parseFrom(CodedInputStream input, ExtensionRegistryLite extensionRegistry)
public static SmoothGradConfig parseFrom(InputStream input)
public static SmoothGradConfig parseFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
parseFrom(ByteBuffer data)
public static SmoothGradConfig parseFrom(ByteBuffer data)
parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
public static SmoothGradConfig parseFrom(ByteBuffer data, ExtensionRegistryLite extensionRegistry)
parser()
public static Parser<SmoothGradConfig> parser()
Methods
equals(Object obj)
public boolean equals(Object obj)
Parameter |
Name |
Description |
obj |
Object
|
Overrides
getDefaultInstanceForType()
public SmoothGradConfig getDefaultInstanceForType()
getFeatureNoiseSigma()
public FeatureNoiseSigma getFeatureNoiseSigma()
This is similar to
noise_sigma,
but provides additional flexibility. A separate noise sigma can be
provided for each feature, which is useful if their distributions are
different. No noise is added to features that are not set. If this field
is unset,
noise_sigma
will be used for all features.
.google.cloud.vertexai.v1beta1.FeatureNoiseSigma feature_noise_sigma = 2;
getFeatureNoiseSigmaOrBuilder()
public FeatureNoiseSigmaOrBuilder getFeatureNoiseSigmaOrBuilder()
This is similar to
noise_sigma,
but provides additional flexibility. A separate noise sigma can be
provided for each feature, which is useful if their distributions are
different. No noise is added to features that are not set. If this field
is unset,
noise_sigma
will be used for all features.
.google.cloud.vertexai.v1beta1.FeatureNoiseSigma feature_noise_sigma = 2;
getGradientNoiseSigmaCase()
public SmoothGradConfig.GradientNoiseSigmaCase getGradientNoiseSigmaCase()
getNoiseSigma()
public float getNoiseSigma()
This is a single float value and will be used to add noise to all the
features. Use this field when all features are normalized to have the
same distribution: scale to range [0, 1], [-1, 1] or z-scoring, where
features are normalized to have 0-mean and 1-variance. Learn more about
normalization.
For best results the recommended value is about 10% - 20% of the standard
deviation of the input feature. Refer to section 3.2 of the SmoothGrad
paper: https://arxiv.org/pdf/1706.03825.pdf. Defaults to 0.1.
If the distribution is different per feature, set
feature_noise_sigma
instead for each feature.
float noise_sigma = 1;
Returns |
Type |
Description |
float |
The noiseSigma.
|
getNoisySampleCount()
public int getNoisySampleCount()
The number of gradient samples to use for
approximation. The higher this number, the more accurate the gradient
is, but the runtime complexity increases by this factor as well.
Valid range of its value is [1, 50]. Defaults to 3.
int32 noisy_sample_count = 3;
Returns |
Type |
Description |
int |
The noisySampleCount.
|
getParserForType()
public Parser<SmoothGradConfig> getParserForType()
Overrides
getSerializedSize()
public int getSerializedSize()
Returns |
Type |
Description |
int |
|
Overrides
hasFeatureNoiseSigma()
public boolean hasFeatureNoiseSigma()
This is similar to
noise_sigma,
but provides additional flexibility. A separate noise sigma can be
provided for each feature, which is useful if their distributions are
different. No noise is added to features that are not set. If this field
is unset,
noise_sigma
will be used for all features.
.google.cloud.vertexai.v1beta1.FeatureNoiseSigma feature_noise_sigma = 2;
Returns |
Type |
Description |
boolean |
Whether the featureNoiseSigma field is set.
|
hasNoiseSigma()
public boolean hasNoiseSigma()
This is a single float value and will be used to add noise to all the
features. Use this field when all features are normalized to have the
same distribution: scale to range [0, 1], [-1, 1] or z-scoring, where
features are normalized to have 0-mean and 1-variance. Learn more about
normalization.
For best results the recommended value is about 10% - 20% of the standard
deviation of the input feature. Refer to section 3.2 of the SmoothGrad
paper: https://arxiv.org/pdf/1706.03825.pdf. Defaults to 0.1.
If the distribution is different per feature, set
feature_noise_sigma
instead for each feature.
float noise_sigma = 1;
Returns |
Type |
Description |
boolean |
Whether the noiseSigma field is set.
|
hashCode()
Returns |
Type |
Description |
int |
|
Overrides
internalGetFieldAccessorTable()
protected GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable()
Overrides
isInitialized()
public final boolean isInitialized()
Overrides
newBuilderForType()
public SmoothGradConfig.Builder newBuilderForType()
newBuilderForType(GeneratedMessageV3.BuilderParent parent)
protected SmoothGradConfig.Builder newBuilderForType(GeneratedMessageV3.BuilderParent parent)
Overrides
newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
protected Object newInstance(GeneratedMessageV3.UnusedPrivateParameter unused)
Returns |
Type |
Description |
Object |
|
Overrides
toBuilder()
public SmoothGradConfig.Builder toBuilder()
writeTo(CodedOutputStream output)
public void writeTo(CodedOutputStream output)
Overrides