TensorFlow
来源:互联网 发布:js切换效果代码 编辑:程序博客网 时间:2024/05/29 04:33
TensorFlow™ is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API. TensorFlow was originally developed by researchers and engineers working on the Google Brain Team within Google’s Machine Intelligence research organization for the purposes of conducting machine learning and deep neural networks research, but the system is general enough to be applicable in a wide variety of other domains as well.
Using TensorFlow with R
The TensorFlow API is composed of a set of Python modules that enable constructing and executing TensorFlow graphs. The tensorflow package provides access to the complete TensorFlow API from within R. Here’s a simple example of making up some data in two dimensions and then fitting a line to it:
library(tensorflow)# Create 100 phony x, y data points, y = x * 0.1 + 0.3x_data <- runif(100, min=0, max=1)y_data <- x_data * 0.1 + 0.3# Try to find values for W and b that compute y_data = W * x_data + b# (We know that W should be 0.1 and b 0.3, but TensorFlow will# figure that out for us.)W <- tf$Variable(tf$random_uniform(shape(1L), -1.0, 1.0))b <- tf$Variable(tf$zeros(shape(1L)))y <- W * x_data + b# Minimize the mean squared errors.loss <- tf$reduce_mean((y - y_data) ^ 2)optimizer <- tf$train$GradientDescentOptimizer(0.5)train <- optimizer$minimize(loss)# Launch the graph and initialize the variables.sess = tf$Session()sess$run(tf$initialize_all_variables())# Fit the line (Learns best fit is W: 0.1, b: 0.3)for (step in 1:201) { sess$run(train) if (step %% 20 == 0) cat(step, "-", sess$run(W), sess$run(b), "\n")}
The first part of this code builds the data flow graph. TensorFlow does not actually run any computation until the session is created and the run
function is called.
MNIST Tutorials
To whet your appetite further, we suggest you check out what a classical machine learning problem looks like in TensorFlow. In the land of neural networks the most “classic” classical problem is the MNIST handwritten digit classification. We offer two introductions here, one for machine learning newbies, and one for pros. If you’ve already trained dozens of MNIST models in other software packages, please take the red pill. If you’ve never even heard of MNIST, definitely take the blue pill. If you’re somewhere in between, we suggest skimming blue, then red.
Images licensed CC BY-SA 4.0; original by W. Carter
If you’re already sure you want to learn and install TensorFlow you can skip these and charge ahead. Don’t worry, you’ll still get to see MNIST – we’ll also use MNIST as an example in our technical tutorial where we elaborate on TensorFlow features.
Download and Setup
First, install the main TensorFlow distribution:
https://www.tensorflow.org/get_started/os_setup.html#download-and-setup
Next, install the tensorflow R package:
library(devtools)install_github("rstudio/tensorflow")
The tensorflow package will be built against the default version of python found in the PATH
. If you want to build against a specific version of python you can define the TENSORFLOW_PYTHON_VERSION
environment variable before installing. For example:
Sys.setenv(TENSORFLOW_PYTHON_VERSION = 3)install_github("rstudio/tensorflow")
You can verify that your installation is working correctly by running this script:
library(tensorflow)sess = tf$Session()hello <- tf$constant('Hello, TensorFlow!')sess$run(hello)
RStudio IDE
The tensorflow package provides code completion and inline help for the TensorFlow API when running within the RStudio IDE. In order to take advantage of these features you should also install the current Preview Release of RStudio.
Recommended Next Steps
Once you’ve installed the base TensorFlow system and the tensorflow R package, you will likely want work though the series of tutorials that cover TensorFlow basics:
- MNIST For ML Beginners
- Deep MNIST for Experts
- TensorFlow Mechanics 101
These articles cover the core concepts of TensorFlow in more depth as well describe the details of using the TensorFlow API from R:
- TensorFlow API Basic Usage
- Using the TensorFlow API from R
These articles provide more in depth treatments of various topics:
- Variables: Creation, Initialization, Saving, and Loading
- TensorFlow Mechanics 101
- TensorBoard: Visualizing Learning
- TensorBoard: Graph Visualization
Finally, to learn more about neural networks you might enjoy the TensorFlow playground, which lets you tinker with a neural network in your browser.
- tensorflow
- TensorFlow
- TensorFlow
- tensorflow
- tensorflow
- tensorflow
- Tensorflow
- Tensorflow
- tensorFlow
- tensorflow
- Tensorflow
- TensorFlow
- tensorflow
- Tensorflow
- TensorFlow
- TensorFlow
- tensorflow
- TensorFlow
- Java面试题大全(JavaEE五)
- tbscheduler之TBScheduleManager分析
- 5-多分支选择
- 点赞实现
- Android app版本发布!
- TensorFlow
- [LeetCode]--13. Roman to Integer
- 选项卡切换
- Linux学习日记(-1)基础命令。——Arvin
- Java面试题大全(JavaEE六)
- 使用Qt实现简单的图片预览效果
- Linux下grep显示前后几行信息
- 第五周项目一计算圆的周长
- iOS常用三方库、插件、知名技术博客、常用开发工具使用介绍等等,大家可以一次性下载了!