| @@ -0,0 +1,29 @@ | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Text; | |||||
| namespace Tensorflow.Keras | |||||
| { | |||||
| public class Args | |||||
| { | |||||
| private List<object> args = new List<object>(); | |||||
| public object this[int index] | |||||
| { | |||||
| get | |||||
| { | |||||
| return args.Count < index ? args[index] : null; | |||||
| } | |||||
| } | |||||
| public T Get<T>(int index) | |||||
| { | |||||
| return args.Count < index ? (T)args[index] : default(T); | |||||
| } | |||||
| public void Add<T>(T arg) | |||||
| { | |||||
| args.Add(arg); | |||||
| } | |||||
| } | |||||
| } | |||||
| @@ -4,7 +4,7 @@ using System.Text; | |||||
| namespace Tensorflow.Keras.Engine | namespace Tensorflow.Keras.Engine | ||||
| { | { | ||||
| class Node | |||||
| public class Node | |||||
| { | { | ||||
| } | } | ||||
| } | } | ||||
| @@ -4,7 +4,8 @@ using System.Text; | |||||
| namespace Tensorflow.Keras.Engine | namespace Tensorflow.Keras.Engine | ||||
| { | { | ||||
| class Sequential | |||||
| public class Sequential | |||||
| { | { | ||||
| } | } | ||||
| } | } | ||||
| @@ -1,10 +1,39 @@ | |||||
| using System; | using System; | ||||
| using System.Collections; | |||||
| using System.Collections.Generic; | using System.Collections.Generic; | ||||
| using System.Text; | using System.Text; | ||||
| namespace Tensorflow.Keras.Metrics | namespace Tensorflow.Keras.Metrics | ||||
| { | { | ||||
| public abstract class Metric | |||||
| public abstract class Metric : Layers.Layer | |||||
| { | { | ||||
| public string dtype | |||||
| { | |||||
| get | |||||
| { | |||||
| throw new NotImplementedException(); | |||||
| } | |||||
| } | |||||
| public Metric(string name, string dtype) | |||||
| { | |||||
| throw new NotImplementedException(); | |||||
| } | |||||
| public void __new__ (Metric cls, Args args, KwArgs kwargs) => throw new NotImplementedException(); | |||||
| public Tensor __call__(Metric cls, Args args, KwArgs kwargs) => throw new NotImplementedException(); | |||||
| public virtual Hashtable get_config() => throw new NotImplementedException(); | |||||
| public virtual void reset_states() => throw new NotImplementedException(); | |||||
| public abstract void update_state(Args args, KwArgs kwargs); | |||||
| public abstract Tensor result(); | |||||
| public void add_weight(string name, TensorShape shape= null, VariableAggregation aggregation= VariableAggregation.Sum, | |||||
| VariableSynchronization synchronization = VariableSynchronization.OnRead, Initializers.Initializer initializer= null, | |||||
| string dtype= null) => throw new NotImplementedException(); | |||||
| } | } | ||||
| } | } | ||||
| @@ -1,14 +1,42 @@ | |||||
| using System; | |||||
| using Keras.Layers; | |||||
| using System; | |||||
| using System.Collections; | |||||
| using System.Collections.Generic; | using System.Collections.Generic; | ||||
| using System.Text; | using System.Text; | ||||
| using Tensorflow.Keras.Engine; | |||||
| namespace Tensorflow.Keras | namespace Tensorflow.Keras | ||||
| { | { | ||||
| class Models | class Models | ||||
| { | { | ||||
| public class Model : Keras.Engine.Training.Model | |||||
| { | |||||
| public class Model : Keras.Engine.Training.Model{} | |||||
| } | |||||
| public static Layer share_weights(Layer layer) => throw new NotImplementedException(); | |||||
| private static Layer _clone_layer(Layer layer) => throw new NotImplementedException(); | |||||
| private static Layer _insert_ancillary_layers(Model model, Layer ancillary_layers, string[] metrics_names, Node[] new_nodes) => throw new NotImplementedException(); | |||||
| private static Node[] _make_new_nodes(Node[] nodes_by_depth, Func<Layer, Layer> layer_fn, Hashtable layer_map, Hashtable tensor_map) => throw new NotImplementedException(); | |||||
| private static Model _clone_functional_model(Model model, Tensor[] input_tensors = null, Func<Layer, Layer> layer_fn = null) => throw new NotImplementedException(); | |||||
| private static (Hashtable, Layer[]) _clone_layers_and_model_config(Model model, Layer[] input_layers, Func<Layer, Layer> layer_fn) => throw new NotImplementedException(); | |||||
| private static (Layer[], Layer[]) _remove_ancillary_layers(Model model, Hashtable layer_map, Layer[] layers) => throw new NotImplementedException(); | |||||
| private static Sequential _clone_sequential_model(Model model, Tensor[] input_tensors = null, Func<Layer, Layer> layer_fn = null) => throw new NotImplementedException(); | |||||
| public static Model clone_model(Model model, Tensor[] input_tensors = null, Func<Layer, Layer> layer_fn = null) => throw new NotImplementedException(); | |||||
| private static void _in_place_subclassed_model_reset(Model model) => throw new NotImplementedException(); | |||||
| private static void _reset_build_compile_trackers(Model model) => throw new NotImplementedException(); | |||||
| public static void in_place_subclassed_model_state_restoration(Model model) => throw new NotImplementedException(); | |||||
| public static void clone_and_build_model(Model model, Tensor[] input_tensors= null, Tensor[] target_tensors= null, object custom_objects= null, | |||||
| bool compile_clone= true, bool in_place_reset= false, VariableV1 optimizer_iterations= null, Hashtable optimizer_config= null) | |||||
| => throw new NotImplementedException(); | |||||
| } | } | ||||
| } | } | ||||
| @@ -1,10 +0,0 @@ | |||||
| using System; | |||||
| using System.Collections.Generic; | |||||
| using System.Text; | |||||
| namespace Tensorflow.Keras | |||||
| { | |||||
| class Ops | |||||
| { | |||||
| } | |||||
| } | |||||
| @@ -1,10 +1,60 @@ | |||||
| using System; | using System; | ||||
| using System.Collections.Generic; | using System.Collections.Generic; | ||||
| using System.Reflection; | |||||
| using System.Text; | using System.Text; | ||||
| namespace Tensorflow.Keras.Utils | namespace Tensorflow.Keras.Utils | ||||
| { | { | ||||
| class MetricsUtils | |||||
| public class MetricsUtils | |||||
| { | { | ||||
| public static class Reduction | |||||
| { | |||||
| public const string SUM = "sum"; | |||||
| public const string SUM_OVER_BATCH_SIZE = "sum_over_batch_size"; | |||||
| public const string WEIGHTED_MEAN = "weighted_mean"; | |||||
| } | |||||
| public static class ConfusionMatrix | |||||
| { | |||||
| public const string TRUE_POSITIVES = "tp"; | |||||
| public const string FALSE_POSITIVES = "fp"; | |||||
| public const string TRUE_NEGATIVES = "tn"; | |||||
| public const string FALSE_NEGATIVES = "fn"; | |||||
| } | |||||
| public static class AUCCurve | |||||
| { | |||||
| public const string ROC = "ROC"; | |||||
| public const string PR = "PR"; | |||||
| public static string from_str(string key) => throw new NotImplementedException(); | |||||
| } | |||||
| public static class AUCSummationMethod | |||||
| { | |||||
| public const string INTERPOLATION = "interpolation"; | |||||
| public const string MAJORING = "majoring"; | |||||
| public const string MINORING = "minoring"; | |||||
| public static string from_str(string key) => throw new NotImplementedException(); | |||||
| } | |||||
| public static dynamic update_state_wrapper(Func<Args, KwArgs, Func<bool>> update_state_fn) => throw new NotImplementedException(); | |||||
| public static dynamic result_wrapper(Func<Args, Tensor> result_fn) => throw new NotImplementedException(); | |||||
| public static WeakReference weakmethod(MethodInfo method) => throw new NotImplementedException(); | |||||
| public static void assert_thresholds_range(float[] thresholds) => throw new NotImplementedException(); | |||||
| public static void parse_init_thresholds(float[] thresholds, float default_threshold = 0.5f) => throw new NotImplementedException(); | |||||
| public static Operation update_confusion_matrix_variables(variables variables_to_update, Tensor y_true, Tensor y_pred, float[] thresholds, | |||||
| int? top_k= null,int? class_id= null, Tensor sample_weight= null, bool multi_label= false, | |||||
| Tensor label_weights= null) => throw new NotImplementedException(); | |||||
| private static Tensor _filter_top_k(Tensor x, int k) => throw new NotImplementedException(); | |||||
| private static (Tensor[], Tensor) ragged_assert_compatible_and_get_flat_values(Tensor[] values, Tensor mask = null) => throw new NotImplementedException(); | |||||
| } | } | ||||
| } | } | ||||