X Tutup
using OneOf; using Tensorflow.NumPy; namespace Tensorflow.Util { /// /// ValidationDataPack is used to pass validation data to fit method. /// It can recive data which could be A tuple `(x_val, xy_val)` or `(x_val, y_val, sample_weight_val)` of Numpy arrays. /// public class ValidationDataPack { internal OneOf val_x; internal NDArray val_y; internal NDArray val_sample_weight = null; public bool val_x_is_array = false; public ValidationDataPack((NDArray, NDArray) validation_data) { this.val_x = validation_data.Item1; this.val_y = validation_data.Item2; } public ValidationDataPack((NDArray, NDArray, NDArray) validation_data) { this.val_x = validation_data.Item1; this.val_y = validation_data.Item2; this.val_sample_weight = validation_data.Item3; } public ValidationDataPack((IEnumerable, NDArray) validation_data) { this.val_x = validation_data.Item1.ToArray(); this.val_y = validation_data.Item2; val_x_is_array = true; } public ValidationDataPack((IEnumerable, NDArray, NDArray) validation_data) { this.val_x = validation_data.Item1.ToArray(); this.val_y = validation_data.Item2; this.val_sample_weight = validation_data.Item3; val_x_is_array = true; } public static implicit operator ValidationDataPack((NDArray, NDArray) validation_data) => new ValidationDataPack(validation_data); public static implicit operator ValidationDataPack((NDArray, NDArray, NDArray) validation_data) => new ValidationDataPack(validation_data); public static implicit operator ValidationDataPack((IEnumerable, NDArray) validation_data) => new ValidationDataPack(validation_data); public static implicit operator ValidationDataPack((IEnumerable, NDArray, NDArray) validation_data) => new ValidationDataPack(validation_data); public void Deconstruct(out NDArray val_x, out NDArray val_y) { val_x = this.val_x.AsT0; val_y = this.val_y; } public void Deconstruct(out NDArray val_x, out NDArray val_y, out NDArray val_sample_weight) { val_x = this.val_x.AsT0; val_y = this.val_y; val_sample_weight = this.val_sample_weight; } // add a unuse parameter to make it different from Deconstruct(out NDArray val_x, out NDArray val_y, out NDArray val_sample_weight) public void Deconstruct(out NDArray[] val_x_array, out NDArray val_y, out NDArray val_sample_weight, out NDArray unuse) { val_x_array = this.val_x.AsT1; val_y = this.val_y; val_sample_weight = this.val_sample_weight; unuse = null; } } }
X Tutup