MyCaffe  1.12.2.41
Deep learning software for Windows C# programmers.
MyCaffe.param.ContrastiveLossParameter Class Reference

Specifies the parameters for the ContrastiveLossLayer. More...

Inheritance diagram for MyCaffe.param.ContrastiveLossParameter:
MyCaffe.param.LayerParameterBase MyCaffe.basecode.BaseParameter MyCaffe.basecode.IBinaryPersist

Public Types

enum  DISTANCE_CALCULATION { EUCLIDEAN , MANHATTAN }
 Defines the distance calculation to use. More...
 
enum  CENTROID_LEARNING { NONE , MATCHING , NONMATCHING , ALL }
 Defines the type of centroid learning to use. More...
 
- Public Types inherited from MyCaffe.param.LayerParameterBase
enum  LABEL_TYPE { NONE , SINGLE , MULTIPLE , ONLY_ONE }
 Defines the label type. More...
 

Public Member Functions

 ContrastiveLossParameter ()
 Constructor for the parameter. More...
 
override object Load (System.IO.BinaryReader br, bool bNewInstance=true)
 Load the parameter from a binary reader. More...
 
override void Copy (LayerParameterBase src)
 Copy on parameter to another. More...
 
override LayerParameterBase Clone ()
 Creates a new copy of this instance of the parameter. More...
 
override RawProto ToProto (string strName)
 Convert the parameter into a RawProto. More...
 
- Public Member Functions inherited from MyCaffe.param.LayerParameterBase
 LayerParameterBase ()
 Constructor for the parameter. More...
 
virtual string PrepareRunModelInputs ()
 This method gives derivative classes a chance specify model inputs required by the run model. More...
 
virtual void PrepareRunModel (LayerParameter p)
 This method gives derivative classes a chance to prepare the layer for a run-model. More...
 
void Save (BinaryWriter bw)
 Save this parameter to a binary writer. More...
 
abstract object Load (BinaryReader br, bool bNewInstance=true)
 Load the parameter from a binary reader. More...
 
- Public Member Functions inherited from MyCaffe.basecode.BaseParameter
 BaseParameter ()
 Constructor for the parameter. More...
 
virtual bool Compare (BaseParameter p)
 Compare this parameter to another parameter. More...
 

Static Public Member Functions

static ContrastiveLossParameter FromProto (RawProto rp)
 Parses the parameter from a RawProto. More...
 
- Static Public Member Functions inherited from MyCaffe.basecode.BaseParameter
static double ParseDouble (string strVal)
 Parse double values using the US culture if the decimal separator = '.', then using the native culture, and if then lastly trying the US culture to handle prototypes containing '.' as the separator, yet parsed in a culture that does not use '.' as a decimal. More...
 
static bool TryParse (string strVal, out double df)
 Parse double values using the US culture if the decimal separator = '.', then using the native culture, and if then lastly trying the US culture to handle prototypes containing '.' as the separator, yet parsed in a culture that does not use '.' as a decimal. More...
 
static float ParseFloat (string strVal)
 Parse float values using the US culture if the decimal separator = '.', then using the native culture, and if then lastly trying the US culture to handle prototypes containing '.' as the separator, yet parsed in a culture that does not use '.' as a decimal. More...
 
static bool TryParse (string strVal, out float f)
 Parse doufloatble values using the US culture if the decimal separator = '.', then using the native culture, and if then lastly trying the US culture to handle prototypes containing '.' as the separator, yet parsed in a culture that does not use '.' as a decimal. More...
 

Properties

double margin [getset]
 Margin for dissimilar pair. More...
 
bool legacy_version [getset]
 The first implementation of this cost did not exactly match the cost of Hadsell et al 2006 – using (margin - d^2) instead of (margin - d)^2. More...
 
bool output_matches [getset]
 Optionally, specifies to output match information (default = false). More...
 
CENTROID_LEARNING centroid_learning [getset]
 Optionally, specifies to use centroid learning as soon as the centroids (from the DecodeLayer) are ready - e.g. they have an asum > 0 (default = false, meaning no centroid learning occurs). More...
 
DISTANCE_CALCULATION distance_calculation [getset]
 Optionally, specifies the distance calculation to use when calculating the distance between encoding pairs (default = EUCLIDEAN). More...
 
double matching_distance_scale [getset]
 Optionally, specifies the scale applied to the matching distance when calculating the loss (default = 1.0, which ignores the scaling). More...
 

Detailed Description

Specifies the parameters for the ContrastiveLossLayer.

See also
Object cosegmentation using deep Siamese network by Prerana Mukherjee, Brejesh Lall and Snehith Lattupally, 2018.
Learning Deep Representations of Medical Images using Siamese CNNs with Application to Content-Based Image Retrieval by Yu-An Chung and Wei-Hung Weng, 2017.
Fully-Convolutional Siamese Networks for Object Tracking by Luca Bertinetto, Jack Valmadre, João F. Henriques, Andrea Vedaldi, and Philip H. S. Torr, 2016.
Learning visual similarity for product design with convolutional neural networks by Sean Bell and Kavita Bala, Cornell University, 2015.
Dimensionality Reduction by Learning an Invariant Mapping by Raia Hadsel, Sumit Chopra, and Yann LeCun, 2006.
Similarity Learning with (or without) Convolutional Neural Network by Moitreya Chatterjee and Yunan Luo, 2017. Centroids:
Retrieving Similar E-Commerce Images Using Deep Learning by Rishab Sharma and Anirudha Vishvakarma, arXiv:1901.03546, 2019.
A New Loss Function for CNN Classifier Based on Pre-defined Evenly-Distributed Class Centroids by Qiuyu Zhu, Pengju Zhang, and Xin Ye, arXiv:1904.06008, 2019.

Definition at line 26 of file ContrastiveLossParameter.cs.

Member Enumeration Documentation

◆ CENTROID_LEARNING

Defines the type of centroid learning to use.

Enumerator
NONE 

Specifies to not use centroid learning (default).

MATCHING 

Specifies to only use centroid learning on matching pairs.

NONMATCHING 

Specifies to only use centroid learning on non-matching pairs.

ALL 

Specifies to use centroid learning on both matching and non-matching pairs.

Definition at line 56 of file ContrastiveLossParameter.cs.

◆ DISTANCE_CALCULATION

Defines the distance calculation to use.

See also
Various types of Distance Metrics in Machine Learning by Sourodip Kundu, Medium, 2019.
Enumerator
EUCLIDEAN 

Specifies to use the Euclidean Distance (default).

MANHATTAN 

Specifies to use the Manhattan Distance.

Definition at line 41 of file ContrastiveLossParameter.cs.

Constructor & Destructor Documentation

◆ ContrastiveLossParameter()

MyCaffe.param.ContrastiveLossParameter.ContrastiveLossParameter ( )

Constructor for the parameter.

Definition at line 77 of file ContrastiveLossParameter.cs.

Member Function Documentation

◆ Clone()

override LayerParameterBase MyCaffe.param.ContrastiveLossParameter.Clone ( )
virtual

Creates a new copy of this instance of the parameter.

Returns
A new instance of this parameter is returned.

Implements MyCaffe.param.LayerParameterBase.

Definition at line 174 of file ContrastiveLossParameter.cs.

◆ Copy()

override void MyCaffe.param.ContrastiveLossParameter.Copy ( LayerParameterBase  src)
virtual

Copy on parameter to another.

Parameters
srcSpecifies the parameter to copy.

Implements MyCaffe.param.LayerParameterBase.

Definition at line 162 of file ContrastiveLossParameter.cs.

◆ FromProto()

static ContrastiveLossParameter MyCaffe.param.ContrastiveLossParameter.FromProto ( RawProto  rp)
static

Parses the parameter from a RawProto.

Parameters
rpSpecifies the RawProto to parse.
Returns
A new instance of the parameter is returned.

Definition at line 213 of file ContrastiveLossParameter.cs.

◆ Load()

override object MyCaffe.param.ContrastiveLossParameter.Load ( System.IO.BinaryReader  br,
bool  bNewInstance = true 
)

Load the parameter from a binary reader.

Parameters
brSpecifies the binary reader.
bNewInstanceWhen true a new instance is created (the default), otherwise the existing instance is loaded from the binary reader.
Returns
Returns an instance of the parameter.

Definition at line 150 of file ContrastiveLossParameter.cs.

◆ ToProto()

override RawProto MyCaffe.param.ContrastiveLossParameter.ToProto ( string  strName)
virtual

Convert the parameter into a RawProto.

Parameters
strNameSpecifies the name to associate with the RawProto.
Returns
The new RawProto is returned.

Implements MyCaffe.basecode.BaseParameter.

Definition at line 186 of file ContrastiveLossParameter.cs.

Property Documentation

◆ centroid_learning

CENTROID_LEARNING MyCaffe.param.ContrastiveLossParameter.centroid_learning
getset

Optionally, specifies to use centroid learning as soon as the centroids (from the DecodeLayer) are ready - e.g. they have an asum > 0 (default = false, meaning no centroid learning occurs).

Definition at line 123 of file ContrastiveLossParameter.cs.

◆ distance_calculation

DISTANCE_CALCULATION MyCaffe.param.ContrastiveLossParameter.distance_calculation
getset

Optionally, specifies the distance calculation to use when calculating the distance between encoding pairs (default = EUCLIDEAN).

Definition at line 133 of file ContrastiveLossParameter.cs.

◆ legacy_version

bool MyCaffe.param.ContrastiveLossParameter.legacy_version
getset

The first implementation of this cost did not exactly match the cost of Hadsell et al 2006 – using (margin - d^2) instead of (margin - d)^2.

legacy_version = false (the default) uses (margin - d)^2 as proposed in the Hadsell paper. New models should probably use this version.

legacy_version = true uses (margin - d^2). This is kept to support / repoduce existing models and results.

Definition at line 103 of file ContrastiveLossParameter.cs.

◆ margin

double MyCaffe.param.ContrastiveLossParameter.margin
getset

Margin for dissimilar pair.

Definition at line 85 of file ContrastiveLossParameter.cs.

◆ matching_distance_scale

double MyCaffe.param.ContrastiveLossParameter.matching_distance_scale
getset

Optionally, specifies the scale applied to the matching distance when calculating the loss (default = 1.0, which ignores the scaling).

Definition at line 143 of file ContrastiveLossParameter.cs.

◆ output_matches

bool MyCaffe.param.ContrastiveLossParameter.output_matches
getset

Optionally, specifies to output match information (default = false).

Definition at line 113 of file ContrastiveLossParameter.cs.


The documentation for this class was generated from the following file: