public interface StatsReport extends Persistable
StatsListener
Modifier and Type | Method and Description |
---|---|
java.util.List<java.io.Serializable> |
getDataSetMetaData()
Get the DataSet metadata, if any (null otherwise).
|
java.lang.String |
getDataSetMetaDataClassName()
Get the class
|
long[] |
getDeviceCurrentBytes()
Get device (GPU, etc) current bytes - may be null if no compute devices are present in the system
|
long[] |
getDeviceMaxBytes()
Get device (GPU, etc) maximum bytes - may be null if no compute devices are present in the system
|
double |
getExamplesPerSecond()
Get examples per second since the last report
|
java.util.List<Pair<java.lang.String,int[]>> |
getGarbageCollectionStats()
Get the garbage collection stats: Pair contains GC name and the delta count/time values
|
java.util.Map<java.lang.String,Histogram> |
getHistograms(StatsType statsType)
Get the histograms for all parameters, for a given StatsType (Parameters/Updates/Activations)
|
int |
getIterationCount()
Get the current iteration number
|
long |
getJvmCurrentBytes()
Get JVM memory - current bytes used
|
long |
getJvmMaxBytes()
Get JVM memory - max available bytes
|
java.util.Map<java.lang.String,java.lang.Double> |
getLearningRates()
Get the learning rates by parameter
|
java.util.Map<java.lang.String,java.lang.Double> |
getMean(StatsType statsType)
Get the mean values for each parameter for the given StatsType (Parameters/Updates/Activations)
|
java.util.Map<java.lang.String,java.lang.Double> |
getMeanMagnitudes(StatsType statsType)
Get the mean magnitude values for each parameter for the given StatsType (Parameters/Updates/Activations)
|
double |
getMinibatchesPerSecond()
Get the number of minibatches per second, since the last report
|
long |
getOffHeapCurrentBytes()
Get off-heap memory - current bytes used
|
long |
getOffHeapMaxBytes()
Get off-heap memory - max available bytes
|
double |
getScore()
Get the score at the current iteration
|
int |
getStatsCollectionDurationMs()
Get the number of millisecons required to calculate al of the stats.
|
java.util.Map<java.lang.String,java.lang.Double> |
getStdev(StatsType statsType)
Get the standard deviation values for each parameter for the given StatsType (Parameters/Updates/Activations)
|
long |
getTotalExamples()
Get total number of examples that have been processed since initialization
|
long |
getTotalMinibatches()
Get the total number of minibatches that have been processed since initialization
|
long |
getTotalRuntimeMs()
Get the total runtime since listener/model initialization
|
boolean |
hasDataSetMetaData()
Return whether any DataSet metadata is present or not
|
boolean |
hasGarbageCollection()
Return whether garbage collection information has been reported
|
boolean |
hasHistograms(StatsType statsType)
Return whether histograms have been reported, for the given stats type (Parameters, Updates, Activations)
|
boolean |
hasLearningRates()
Return whether the learning rates are present (have been reported)
|
boolean |
hasMemoryUse()
Return whether memory use has been reported
|
boolean |
hasPerformance()
Return whether performance stats (total time, total examples etc) have been reported
|
boolean |
hasScore()
Return whether the score is present (has been reported)
|
boolean |
hasSummaryStats(StatsType statsType,
SummaryType summaryType)
Return whether the summary stats (mean, standard deviation, mean magnitudes) have been reported for the
given stats type (Parameters, Updates, Activations)
|
void |
reportDataSetMetaData(java.util.List<java.io.Serializable> dataSetMetaData,
java.lang.Class<?> metaDataClass)
Report any metadata for the DataSet
|
void |
reportDataSetMetaData(java.util.List<java.io.Serializable> dataSetMetaData,
java.lang.String metaDataClass)
Report any metadata for the DataSet
|
void |
reportGarbageCollection(java.lang.String gcName,
int deltaGCCount,
int deltaGCTime)
Report Garbage collection stats
|
void |
reportHistograms(StatsType statsType,
java.util.Map<java.lang.String,Histogram> histogram)
Report histograms for all parameters, for a given
StatsType |
void |
reportIDs(java.lang.String sessionID,
java.lang.String typeID,
java.lang.String workerID,
long timestamp) |
void |
reportIterationCount(int iterationCount)
Report the current iteration number
|
void |
reportLearningRates(java.util.Map<java.lang.String,java.lang.Double> learningRatesByParam)
Report the learning rates by parameter
|
void |
reportMean(StatsType statsType,
java.util.Map<java.lang.String,java.lang.Double> mean)
Report the mean values for each parameter, the given StatsType (Parameters/Updates/Activations)
|
void |
reportMeanMagnitudes(StatsType statsType,
java.util.Map<java.lang.String,java.lang.Double> meanMagnitudes)
Report the mean magnitude values for each parameter for the given StatsType (Parameters/Updates/Activations)
|
void |
reportMemoryUse(long jvmCurrentBytes,
long jvmMaxBytes,
long offHeapCurrentBytes,
long offHeapMaxBytes,
long[] deviceCurrentBytes,
long[] deviceMaxBytes)
Report the memory stats at this iteration
|
void |
reportPerformance(long totalRuntimeMs,
long totalExamples,
long totalMinibatches,
double examplesPerSecond,
double minibatchesPerSecond)
Report the performance stats (since the last report)
|
void |
reportScore(double currentScore)
Report model score at the current iteration
|
void |
reportStatsCollectionDurationMS(int statsCollectionDurationMS)
Report the number of milliseconds required to calculate all of the stats.
|
void |
reportStdev(StatsType statsType,
java.util.Map<java.lang.String,java.lang.Double> stdev)
Report the standard deviation values for each parameter for the given StatsType (Parameters/Updates/Activations)
|
decode, decode, decode, encode, encode, encode, encodingLengthBytes, getSessionID, getTimeStamp, getTypeID, getWorkerID
void reportIDs(java.lang.String sessionID, java.lang.String typeID, java.lang.String workerID, long timestamp)
void reportIterationCount(int iterationCount)
int getIterationCount()
void reportStatsCollectionDurationMS(int statsCollectionDurationMS)
int getStatsCollectionDurationMs()
void reportScore(double currentScore)
double getScore()
void reportLearningRates(java.util.Map<java.lang.String,java.lang.Double> learningRatesByParam)
java.util.Map<java.lang.String,java.lang.Double> getLearningRates()
void reportMemoryUse(long jvmCurrentBytes, long jvmMaxBytes, long offHeapCurrentBytes, long offHeapMaxBytes, long[] deviceCurrentBytes, long[] deviceMaxBytes)
jvmCurrentBytes
- Current bytes used by the JVMjvmMaxBytes
- Max bytes usable by the JVM (heap)offHeapCurrentBytes
- Current off-heap bytes usedoffHeapMaxBytes
- Maximum off-heap bytesdeviceCurrentBytes
- Current bytes used by each device (GPU, etc). May be null if no devices are presentdeviceMaxBytes
- Maximum bytes for each device (GPU, etc). May be null if no devices are presentlong getJvmCurrentBytes()
long getJvmMaxBytes()
long getOffHeapCurrentBytes()
long getOffHeapMaxBytes()
long[] getDeviceCurrentBytes()
long[] getDeviceMaxBytes()
void reportPerformance(long totalRuntimeMs, long totalExamples, long totalMinibatches, double examplesPerSecond, double minibatchesPerSecond)
totalRuntimeMs
- Overall runtime since initializationtotalExamples
- Total examples processed since initializationtotalMinibatches
- Total number of minibatches (iterations) since initializationexamplesPerSecond
- Examples per second since last reportminibatchesPerSecond
- Minibatches per second since last reportlong getTotalRuntimeMs()
long getTotalExamples()
long getTotalMinibatches()
double getExamplesPerSecond()
double getMinibatchesPerSecond()
void reportGarbageCollection(java.lang.String gcName, int deltaGCCount, int deltaGCTime)
gcName
- Garbage collector namedeltaGCCount
- Change in the total number of garbage collections, since last reportdeltaGCTime
- Change in the amount of time (milliseconds) for garbage collection, since last reportjava.util.List<Pair<java.lang.String,int[]>> getGarbageCollectionStats()
void reportHistograms(StatsType statsType, java.util.Map<java.lang.String,Histogram> histogram)
StatsType
statsType
- StatsType: Parameters, Updates, Activationshistogram
- Histogram values for all parametersjava.util.Map<java.lang.String,Histogram> getHistograms(StatsType statsType)
statsType
- Stats type (Params/updatse/activations) to get histograms forvoid reportMean(StatsType statsType, java.util.Map<java.lang.String,java.lang.Double> mean)
statsType
- Stats type to reportmean
- Map of mean values, by parameterjava.util.Map<java.lang.String,java.lang.Double> getMean(StatsType statsType)
statsType
- Stats type to get mean values forvoid reportStdev(StatsType statsType, java.util.Map<java.lang.String,java.lang.Double> stdev)
statsType
- Stats type to report std. dev values forstdev
- Map of std dev values by parameterjava.util.Map<java.lang.String,java.lang.Double> getStdev(StatsType statsType)
statsType
- Stats type to get std dev values forvoid reportMeanMagnitudes(StatsType statsType, java.util.Map<java.lang.String,java.lang.Double> meanMagnitudes)
statsType
- Stats type to report mean magnitude values formeanMagnitudes
- Map of mean magnitude values by parametervoid reportDataSetMetaData(java.util.List<java.io.Serializable> dataSetMetaData, java.lang.Class<?> metaDataClass)
dataSetMetaData
- MetaData for the DataSetmetaDataClass
- Class of the metadata. Can be later retieved using getDataSetMetaDataClassName()
void reportDataSetMetaData(java.util.List<java.io.Serializable> dataSetMetaData, java.lang.String metaDataClass)
dataSetMetaData
- MetaData for the DataSetmetaDataClass
- Class of the metadata. Can be later retieved using getDataSetMetaDataClassName()
java.util.Map<java.lang.String,java.lang.Double> getMeanMagnitudes(StatsType statsType)
statsType
- Stats type to get mean magnitude values forjava.util.List<java.io.Serializable> getDataSetMetaData()
java.lang.String getDataSetMetaDataClassName()
boolean hasScore()
boolean hasLearningRates()
boolean hasMemoryUse()
boolean hasPerformance()
boolean hasGarbageCollection()
boolean hasHistograms(StatsType statsType)
statsType
- Stats typeboolean hasSummaryStats(StatsType statsType, SummaryType summaryType)
statsType
- stats type (Parameters, Updates, Activations)summaryType
- Summary statistic type (mean, stdev, mean magnitude)boolean hasDataSetMetaData()