public static INeuralNetwork TryLoad([NotNull] Stream stream, LayersLoadingPreference preference)
        {
            try
            {
                using (GZipStream gzip = new GZipStream(stream, CompressionMode.Decompress))
                {
                    if (!gzip.TryRead(out NetworkType model))
                    {
                        return(null);
                    }
                    switch (model)
                    {
                    case NetworkType.Sequential: return(SequentialNetwork.Deserialize(gzip, preference));

                    default: return(null);
                    }
                }
            }
            catch
            {
                // Locked or invalid file
                return(null);
            }
        }
 public static INeuralNetwork TryLoad([NotNull] FileInfo file, LayersLoadingPreference preference)
 {
     using (FileStream stream = file.OpenRead())
         return(TryLoad(stream, preference));
 }