Browse Source

Merge pull request #178 from PppBr/master

tf.nn.moments
tags/v0.8.0
Haiping GitHub 6 years ago
parent
commit
ae5a109010
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 94 additions and 13 deletions
  1. +0
    -6
      TensorFlow.NET.sln
  2. +11
    -0
      src/TensorFlowNET.Core/APIs/tf.nn.cs
  3. +29
    -0
      src/TensorFlowNET.Core/Operations/math_ops.py.cs
  4. +32
    -0
      src/TensorFlowNET.Core/Operations/nn_impl.py.cs
  5. +0
    -4
      src/TensorFlowNET.Core/TensorFlowNET.Core.csproj
  6. +22
    -2
      test/TensorFlowNET.Examples/NaiveBayesClassifier.cs
  7. +0
    -1
      test/TensorFlowNET.Examples/TensorFlowNET.Examples.csproj

+ 0
- 6
TensorFlow.NET.sln View File

@@ -13,8 +13,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TensorFlowNET.Utility", "sr
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TensorFlowNET.Visualization", "TensorFlowNET.Visualization\TensorFlowNET.Visualization.csproj", "{4BB2ABD1-635E-41E4-B534-CB5B6A2D754D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NumSharp.Core", "..\NumSharp\src\NumSharp.Core\NumSharp.Core.csproj", "{0AB4662E-7E3C-455F-BF0C-23D56CBE74F3}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -41,10 +39,6 @@ Global
{4BB2ABD1-635E-41E4-B534-CB5B6A2D754D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4BB2ABD1-635E-41E4-B534-CB5B6A2D754D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4BB2ABD1-635E-41E4-B534-CB5B6A2D754D}.Release|Any CPU.Build.0 = Release|Any CPU
{0AB4662E-7E3C-455F-BF0C-23D56CBE74F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0AB4662E-7E3C-455F-BF0C-23D56CBE74F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0AB4662E-7E3C-455F-BF0C-23D56CBE74F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0AB4662E-7E3C-455F-BF0C-23D56CBE74F3}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE


+ 11
- 0
src/TensorFlowNET.Core/APIs/tf.nn.cs View File

@@ -0,0 +1,11 @@
using System;
using System.Collections.Generic;
using System.Text;

namespace Tensorflow
{
public static partial class tf
{
public static nn_impl nn => new nn_impl();
}
}

+ 29
- 0
src/TensorFlowNET.Core/Operations/math_ops.py.cs View File

@@ -23,6 +23,35 @@ namespace Tensorflow
return x;
});
}
/// <summary>
///
/// </summary>
/// <param name="input_tensor"></param>
/// <param name="axes"></param>
/// <param name="keepdims"></param>
/// <param name="name"></param>
public static Tensor reduce_mean(Tensor input_tensor, int[] axes = null, bool keepdims = false, string name = null)
{
throw new NotFiniteNumberException();
}
/// <summary>
/// Reduction Operation
/// </summary>
/// <param name="x"></param>
/// <param name="axis"></param>
/// <param name="reduction_indices"></param>
public void _ReductionDims(Tensor x, int[] axis, int[] reduction_indices = null)
{
if (reduction_indices != null || reduction_indices.Length != 0)
{
if (axis != null)
{
}
}

throw new NotSupportedException("Can't specify both axis' and 'reduction_indices'.");
}

/// <summary>
/// Helper function for reduction ops.


+ 32
- 0
src/TensorFlowNET.Core/Operations/nn_impl.py.cs View File

@@ -0,0 +1,32 @@
using System;
using System.Collections.Generic;
using System.Text;

namespace Tensorflow
{
public class nn_impl : Python
{
/// <summary>
/// Calculate the mean and variance of `x`
/// </summary>
/// <param name="x"></param>
/// <param name="axes"></param>
/// <param name="name"></param>
/// <param name="keep_dims"></param>
/// <returns></returns>
public (Tensor, Tensor) moments(Tensor x,
int[] axes,
string name = null,
bool keep_dims = false)
{
with<ops.name_scope>(new ops.name_scope(name, "moments", new { x, axes }), scope =>
{
var y = math_ops.cast(x, TF_DataType.TF_FLOAT);
// mean = math_ops.reduce_mean(y, axes, keepdims = True, name = "mean")

});

throw new NotImplementedException("");
}
}
}

+ 0
- 4
src/TensorFlowNET.Core/TensorFlowNET.Core.csproj View File

@@ -51,8 +51,4 @@ Docs: https://tensorflownet.readthedocs.io</Description>
<Content CopyToOutputDirectory="PreserveNewest" Include="./runtimes/win-x64/native/tensorflow.dll" Link="tensorflow.dll" Pack="true" PackagePath="runtimes/win-x64/native/tensorflow.dll" />
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\NumSharp\src\NumSharp.Core\NumSharp.Core.csproj" />
</ItemGroup>

</Project>

+ 22
- 2
test/TensorFlowNET.Examples/NaiveBayesClassifier.cs View File

@@ -2,6 +2,8 @@
using System.Collections.Generic;
using System.Text;
using Tensorflow;
using NumSharp.Core;
using System.Linq;

namespace TensorFlowNET.Examples
{
@@ -9,10 +11,28 @@ namespace TensorFlowNET.Examples
/// https://github.com/nicolov/naive_bayes_tensorflow
/// </summary>
public class NaiveBayesClassifier : Python, IExample
{
{
public void Run()
{
throw new NotImplementedException();
// t/f.nn.moments()
}

public void fit(NDArray X, NDArray y)
{
// separate training points by class
// shape : nb_class * nb_samples * nb_features
NDArray unique_y = y.unique<long>();
NDArray points_by_class = np.array(y.Data<long>().Where(ys => unique_y.Data<long>().Contains(ys)));

foreach (long cls in unique_y)
{

}


// estimate mean and variance for each class / feature
// shape : nb_classes * nb_features
}
}
}

+ 0
- 1
test/TensorFlowNET.Examples/TensorFlowNET.Examples.csproj View File

@@ -11,7 +11,6 @@
</ItemGroup>

<ItemGroup>
<ProjectReference Include="..\..\..\NumSharp\src\NumSharp.Core\NumSharp.Core.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Core\TensorFlowNET.Core.csproj" />
<ProjectReference Include="..\..\src\TensorFlowNET.Utility\TensorFlowNET.Utility.csproj" />
</ItemGroup>


Loading…
Cancel
Save