public Tensor CreateVariable(float[] data, long[] shape, string name = "") { var arr = new CNTK.NDArrayView(BackendUtil.CastShapeInt(shape), data, DeviceManager.Current); var v = new CNTK.Variable(BackendUtil.CastShapeInt(shape), VariableKind.Parameter, CNTK.DataType.Float, arr, false, new AxisVector(), false, name, name); return(Out(v)); }
public override Rect OnGUI() { GUILayout.BeginHorizontal(EditorStyles.toolbar); { // toggle interface type objects EditorGUI.BeginChangeCheck(); { includeInterfaces = GUILayout.Toggle(includeInterfaces, "Include Interfaces", EditorStyles.toolbarButton); } if (EditorGUI.EndChangeCheck()) { api.Rebuild(); } GUILayout.FlexibleSpace(); if (!api.GetTargets().Any() && GUILayout.Button("inspect Unity Object")) { api.ResetTargets(new[] { typeof(UnityEngine.Object) }); } // search field GUILayout.FlexibleSpace(); searchstring = BackendUtil.DrawEntitySelectSearchField(searchstring, api); } GUILayout.EndHorizontal(); return(BackendUtil.GetMaxRect()); }
private Tensor CreateVariable(int[] data, long[] shape, string name = "") { shape = BackendUtil.Row2ColMajor(shape); var arr = new CNTK.NDArrayView(BackendUtil.CastShapeInt(shape), Array.ConvertAll(data, x => (float)x), DeviceManager.Current); var v = new CNTK.Variable(BackendUtil.CastShapeInt(shape), VariableKind.Input, CNTK.DataType.Float, arr, false, new AxisVector(), false, name, name); return(Out(v)); }
public override Rect OnGUI() { GUILayout.BeginHorizontal(EditorStyles.toolbar); { GUILayout.FlexibleSpace(); searchString = BackendUtil.DrawEntitySelectSearchField(searchString, api); } GUILayout.EndHorizontal(); return(BackendUtil.GetMaxRect()); }
public Tensor RandomNormal(long[] shape, float mean, float stddev, int?seed = null) { if (seed.HasValue) { return(Out(C.NormalRandom(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, mean, stddev, (uint)seed.Value))); } else { return(Out(C.NormalRandom(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, mean, stddev))); } }
public Tensor RandomUniform(long[] shape, float min, float max, int?seed = null) { var result = Data.RandUniform <float>(BackendUtil.CastShapeInt(shape)); if (min != 0 || max != 1) { result = Data.Constant <float>((max - min), result.Dimensions) * result + Data.Constant <float>(min, result.Dimensions); } return(Out(result)); }
public Tensor RandomNormal(long[] shape, float mean, float stddev, int?seed = null) { var result = Data.RandNormal <float>(BackendUtil.CastShapeInt(shape)); if (mean != 0 || stddev != 1) { result = Data.Constant <float>(stddev, result.Dimensions) * result + Data.Constant <float>(mean, result.Dimensions); } return(Out(result)); }
public Tensor RandomUniform(long[] shape, float min, float max, int?seed = null) { if (seed.HasValue) { return(Out(C.UniformRandom(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, min, max, (uint)seed.Value))); } else { return(Out(C.UniformRandom(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, min, max))); } }
public Tensor Reshape(Tensor x, params long[] shape) { shape = BackendUtil.Row2ColMajor(shape); long prod = -1 * shape.Aggregate(1L, (a, b) => a * b); for (int i = 0; i < shape.Length; i++) { if (shape[i] == -1) { shape[i] = x.ElementCount / prod; break; } } return(Out(Data.ModDims(In(x), shape))); }
// no need for toolbar or controls public Rect OnGUI() { GUILayout.BeginHorizontal(EditorStyles.toolbar); { if (GUILayout.Button("Show active scene", EditorStyles.toolbarButton, GUILayout.ExpandWidth(false))) { api.ResetTargets(new object[] { sceneObj }); } EditorGUI.BeginChangeCheck(); includeComponents = GUILayout.Toggle(includeComponents, "Include components"); if (EditorGUI.EndChangeCheck()) { api.Rebuild(); } GUILayout.FlexibleSpace(); } GUILayout.EndHorizontal(); return(BackendUtil.GetMaxRect()); }
public Tensor CreateVariable(float[] data, long[] shape, string name = "") { shape = BackendUtil.Row2ColMajor(shape); var result = Out(Data.CreateArray(data)); result.Name = name != "" ? UUID(name) : UUID("V"); if (shape.Length == 2) { result = (NDArrayTensor)result.Reshape(shape); } if (shape.Length == 3) { result = (NDArrayTensor)result.Reshape(shape); } if (shape.Length == 4) { result = (NDArrayTensor)result.Reshape(shape); } return(result); }
public override Rect OnGUI() { GUILayout.BeginHorizontal(EditorStyles.toolbar); { GUILayout.FlexibleSpace(); showLegend = GUILayout.Toggle(showLegend, "Legend", EditorStyles.toolbarButton, GUILayout.ExpandWidth(false)); if (showLegend) { string title = "Node colors"; var colorLegend = new ColorLegendEntry[] { new ColorLegendEntry() { text = "Target Object", color = api.GetSkin().entityWidget.targetBackgroundColor }, new ColorLegendEntry() { text = "Asset", color = api.GetSkin().entityWidget.backgroundColor }, new ColorLegendEntry() { text = "Scene Object", color = sceneNodeColor } }; var boxSize = ColorLegendBox.GetSize(title, colorLegend); float boxPosX = EditorGUIUtility.currentViewWidth - boxSize.x - 10; float boxPosY = 42; ColorLegendBox.Draw(new Rect(boxPosX, boxPosY, boxSize.x, boxSize.y), title, colorLegend); } } GUILayout.EndHorizontal(); return(BackendUtil.GetMaxRect()); }
public override Rect OnGUI() { GUILayout.BeginHorizontal(EditorStyles.toolbar); { // option: use all gameobjects of the active scene as targets if (GUILayout.Button("Show active scene", EditorStyles.toolbarButton)) { api.ResetTargets(Object.FindObjectsOfType <GameObject>().Cast <object>().ToArray()); } // option: remove untagged objects if (ContainsUntaggedTargets() && GUILayout.Button("Hide untagged", EditorStyles.toolbarButton)) { api.ResetTargets(api.GetTargets().Where(IsUntagged).ToArray()); } GUILayout.FlexibleSpace(); searchstring = BackendUtil.DrawEntitySelectSearchField(searchstring, api); } GUILayout.EndHorizontal(); return(base.OnGUI()); }
/// <summary> /// Reshapes the data frame to specified new shape. /// </summary> /// <param name="newShape">The new shape.</param> public void Reshape(params long[] newShape) { UnderlayingVariable = UnderlayingVariable.reshape(new Shape(BackendUtil.CastShapeInt(newShape))); }
public Tensor Constant(float value, long[] shape) { return(Out(Data.Constant <float>(value, BackendUtil.CastShapeInt(shape)))); }
public Tensor Constant(float value, long[] shape) { shape = BackendUtil.Row2ColMajor(shape); return(Out(Data.Constant <float>(value, BackendUtil.CastShapeInt(shape)))); }
public void Load(float[] data, long[] shape) { UnderlayingVariable = np.array <float>(data); UnderlayingVariable.reshape(BackendUtil.CastShapeInt(shape)); }
private NDArray In(float value, params long[] shape) { NDArrayTensor tensor = new NDArrayTensor(Data.Constant(value, BackendUtil.CastShapeInt(shape))); return(tensor.InternalTensor); }
private Variable In(float value, params long[] shape) { return(new Parameter(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, value)); }
public void Print(Tensor x, string title = "") { BackendUtil.Print(x.Shape, x.ToArray()); }
public Tensor Transpose(Tensor x, params int[] dims) { var shape = BackendUtil.Row2ColMajor(BackendUtil.Int2Long(dims)); return(Out(Data.Reorder(In(x), BackendUtil.CastShapeUInt(shape)))); }
public SiaTensor RandomNormal(long[] shape, float mean, float stddev, int? seed = null) { return Out(tf.random_normal(BackendUtil.CastShapeInt(shape), mean, stddev, seed: seed)); }
public long[] GetShape(SiaTensor x) { return BackendUtil.Int2Long(In(x).getShape().Dimensions); }
public SiaTensor RandomUniform(long[] shape, float min, float max, int? seed = null) { return Out(tf.random_uniform(BackendUtil.CastShapeInt(shape), min, max, seed: seed)); }
public SiaTensor Reshape(SiaTensor x, params long[] shape) { return Out(tf.reshape(In(x), BackendUtil.CastShapeInt(shape))); }
public Tensor RandomBernoulli(long[] shape, float p) { return(Out(C.BernoulliRandom(BackendUtil.CastShapeInt(shape), CNTK.DataType.Float, p))); }
private Variable In(float value, params long[] shape) { Constant c = _constant(value, BackendUtil.CastShapeInt(shape)); return(c); }
public Tensor Reshape(Tensor x, params long[] shape) { return(Out(C.Reshape(In(x), BackendUtil.CastShapeInt(shape)))); }
private Shape NDShape(params int[] shape) { return(new Shape(BackendUtil.CastShapeUInt(shape))); }
public Tensor Constant(float value, long[] shape) { shape = BackendUtil.Row2ColMajor(shape); return(Out(In(value, shape))); }