@@ -11,7 +11,16 @@ TensorFlow.NET is a member project of [SciSharp STACK](https://github.com/SciSha | |||||
 |  | ||||
### Why should we use TensorFlow.NET ? | |||||
`SciSharp STASK`'s mission is to create a zero learning curve on the .NET based technology stack Machine Learning tool library. Let's take a look at a comparison picture and you can see why TensorFlow.NET is the tool that is the most comfortable for you. | |||||
 | |||||
SciSharp's philosophy allows a large number of machine learning code written in python to be quickly migrated to .NET, allowing a large number of .NET Developers to use more updated models. | |||||
### How to use | ### How to use | ||||
Install TensorFlow.NET through NuGet. | Install TensorFlow.NET through NuGet. | ||||
```sh | ```sh | ||||
PM> Install-Package TensorFlow.NET | PM> Install-Package TensorFlow.NET | ||||
@@ -1,2 +0,0 @@ | |||||
# Chapter. Attribute | |||||
@@ -1,4 +0,0 @@ | |||||
# Chapter. Name Scoping | |||||
Typical TensorFlow graphs can have many thousands of nodes--far too many to see easily all at once, or even to lay out using standard graph tools. To simplify, variable names can be scoped and the visualization uses this information to define a hierarchy on the nodes in the graph. By default, only the top of this hierarchy is shown. Here is an example that defines three operations under the `hidden` name scope using `tf.name_scope`: | |||||
@@ -1,2 +1,3 @@ | |||||
# Chapter. Operation | # Chapter. Operation | ||||
`Operation` represents a `Graph` node that performs computation on tensors. An operation is a `Node` in a `Graph` that takes zero or more `Tensor`s (produced by other Operations in the Graph) as input, and produces zero or more Tensors as output. |
@@ -18,12 +18,24 @@ TensorFlow是一个用于机器学习的开源项目,尤其适用于深度学 | |||||
In order to avoid confusion, the unique classes defined in TensorFlow are not translated in this book. For example, Tensor, Graph, Shape will retain the English name. | In order to avoid confusion, the unique classes defined in TensorFlow are not translated in this book. For example, Tensor, Graph, Shape will retain the English name. | ||||
为了避免混淆,本书中对TensorFlow中定义的特有类不进行翻译,比如Tensor, Graph, Shape这些词都会保留英文名称。 | |||||
为了避免混淆,本书中对TensorFlow中定义的特有类不进行翻译,比如Tensor, Graph, Session, Shape这些词都会保留英文名称。 | |||||
Terminology: | |||||
Terminology 术语: | |||||
TF: Google TensorFlow | TF: Google TensorFlow | ||||
TF.NET: TensorFlow.NET | |||||
TF.NET: TensorFlow.NET | |||||
Graph: 计算图 | |||||
Session: 会话 | |||||
Variable: 变量 | |||||
Tensor: 张量 | |||||
Operation: 操作 | |||||
Node: 节点 |
@@ -2,9 +2,13 @@ | |||||
TensorFlow **session** runs parts of the graph across a set of local and remote devices. A session allows to execute graphs or part of graphs. It allocates resources (on one or more machines) for that and holds the actual values of intermediate results and variables. | TensorFlow **session** runs parts of the graph across a set of local and remote devices. A session allows to execute graphs or part of graphs. It allocates resources (on one or more machines) for that and holds the actual values of intermediate results and variables. | ||||
TensorFlow **Session** 运行预定义的计算图,并且支持跨设备运行和分配GPU。Session可以运行整个计算图或者图的一部分,这样做的好处是对开发模型来话很方便,不需要每次都执行整个图。会话还负责当前计算图的内存分配,保留和传递中间结果。 | |||||
### Running Computations in a Session | ### Running Computations in a Session | ||||
Let's complete the example in last chapter. | |||||
Let's complete the example in last chapter. To run any of the operations, we need to create a session for that graph. The session will also allocate memory to store the current value of the variable. | |||||
让我们完成上一章的例子,在那个例子里我们只是定义了一个图的结构。为了运行这个图,我们需要创建一个Session来根据图定义来分配资源运行它。 | |||||
```csharp | ```csharp | ||||
with<Graph>(tf.Graph(), graph => | with<Graph>(tf.Graph(), graph => | ||||
@@ -22,3 +26,6 @@ with<Graph>(tf.Graph(), graph => | |||||
}); | }); | ||||
``` | ``` | ||||
The value of our variables is only valid within one session. If we try to get the value in another session. TensorFlow will raise an error of `Attempting to use uninitialized value foo`. Of course, we can use the graph in more than one session, because session copies graph definition to new memory area. We just have to initialize the variables again. The values in the new session will be completely independent from the previous one. | |||||
变量值只会在一个Session里有效。如果我们试图从本Session来访问另一个Session创建的变量和值,就会得到一个`变量未初始化`的错误提示。当然,我们能从多个Session运行同一个计算图,因为计算图只是一个定义,Session初始化的时候会复制整图的定义到新的内存空间里。所以每个Session里的变量值是互相隔离的。 |
@@ -22,8 +22,6 @@ Welcome to TensorFlow.NET's documentation! | |||||
Graph | Graph | ||||
Session | Session | ||||
Operation | Operation | ||||
Attribute | |||||
NameScope | |||||
ControlDependency | ControlDependency | ||||
Gradient | Gradient | ||||
Train | Train | ||||