Browse Source

tf.nn.moments

tags/v0.8.0
Bo Peng 6 years ago
parent
commit
4b6b9f84f8
7 changed files with 87 additions and 2 deletions
  1. +6
    -0
      TensorFlow.NET.sln
  2. +11
    -0
      src/TensorFlowNET.Core/APIs/tf.nn.cs
  3. +11
    -0
      src/TensorFlowNET.Core/Operations/math_ops.py.cs
  4. +32
    -0
      src/TensorFlowNET.Core/Operations/nn_impl.py.cs
  5. +4
    -0
      src/TensorFlowNET.Core/TensorFlowNET.Core.csproj
  6. +22
    -2
      test/TensorFlowNET.Examples/NaiveBayesClassifier.cs
  7. +1
    -0
      test/TensorFlowNET.Examples/TensorFlowNET.Examples.csproj

+ 6
- 0
TensorFlow.NET.sln View File

@@ -15,6 +15,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "TensorFlowNET.Visualization
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "KerasNET.Core", "..\Keras.NET\src\KerasNET.Core\KerasNET.Core.csproj", "{E2F0C39C-D706-4CF5-AE00-81FB447F949D}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "NumSharp.Core", "..\NumSharp\src\NumSharp.Core\NumSharp.Core.csproj", "{62360571-D1F7-473C-B81F-F03CA59E37DD}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -45,6 +47,10 @@ Global
{E2F0C39C-D706-4CF5-AE00-81FB447F949D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E2F0C39C-D706-4CF5-AE00-81FB447F949D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E2F0C39C-D706-4CF5-AE00-81FB447F949D}.Release|Any CPU.Build.0 = Release|Any CPU
{62360571-D1F7-473C-B81F-F03CA59E37DD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{62360571-D1F7-473C-B81F-F03CA59E37DD}.Debug|Any CPU.Build.0 = Debug|Any CPU
{62360571-D1F7-473C-B81F-F03CA59E37DD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{62360571-D1F7-473C-B81F-F03CA59E37DD}.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();
}
}

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

@@ -23,6 +23,17 @@ 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 void reduce_mean(Tensor input_tensor, int[] axes = null, bool keepdims = false, string name = null)
{

}

/// <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("");
}
}
}

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

@@ -55,4 +55,8 @@ Docs: https://tensorflownet.readthedocs.io</Description>
<Folder Include="APIs\Keras\" />
</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
}
}
}

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

@@ -12,6 +12,7 @@

<ItemGroup>
<ProjectReference Include="..\..\..\Keras.NET\src\KerasNET.Core\KerasNET.Core.csproj" />
<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