Overview of TensorFlow

本文介绍了TensorFlow这一开源软件库,它使用数据流图进行数值计算,最初由Google Brain团队开发,用于机器学习和深度神经网络研究。TensorFlow具备广泛的适用性,并提供了丰富的功能和工具集,支持从桌面设备到服务器集群等多种平台上的部署。此外,文章还列举了使用TensorFlow的一些知名企业和项目案例。
What’s Tensorflow?
  • Open source software library for numerical computation using data flow graphs.
  • Originally developed by Google Brain Team to conduct machine learning and deep neural networks research.
  • General enough to be applicable in a wide variety of other domains as well.

TensorFlow provides an extensive suite of functions and classes that allow users to build various models from scratch

Why TensorFlow?
  • Python API
  • Portability: deploy computation to one or more CPUs or GPUs in a desktop,server, or mobile device with a single API
  • Flexibility: from Raspberry Pi, Android, Windows, iOS, Linux to server farms
  • Visualization (TensorBoard is da bomb)
  • Checkpoints (for managing experiments)
    Auto-differentiation autodiff (no more taking derivatives by hand. Yay)
  • Large community (> 10,000 commits and > 3000 TF-related repos in 1 year)
  • Awesome projects already using TensorFlow
Companies using Tensorflow
  • Google
  • OpenAI
  • DeepMind
  • Snapchat
  • Uber
  • Airbus
  • eBay
  • Dropbox
    A bunch of startups
Some cool projects using TensorFlow
  • Neural Style Translation
  • Generative Handwriting
  • WaveNet: Text to Speech
Goals
  • Understand TF’s computation graph approach
  • Explore TF’s built-in functions
  • Learn how to build and structure models best suited for a deep learning project.
Books
  • 《TensorFlow for Machine Intelligence》 (TFFMI)
  • 《Hands-On Machine Learning with Scikit-Learn and TensorFlow》 Chapter 9: Up and running with TensorFlow
  • 《Fundamentals of Deep Learning》 Chapter 3:Implementing Neural Networks in TensorFlow (FODL)
Website
Simplified TensorFlow?
  • TF Learn (tf.contrib.learn): simplified interface that helps users transition from the the world of one-liner such as scikit-learn
  • TF Slim (tf.contrib.slim): lightweight library for defining, training and evaluating complex models in TensorFlow.
  • High level API: Keras, TFLearn, Pretty Tensor

But we don’t need baby Tensorflow …

### TensorFlow on ARM Installation and Usage #### Overview of TensorFlow Support for ARM Architecture TensorFlow provides support for various architectures including ARM, which is commonly used in mobile devices like smartphones and tablets. This allows developers to deploy machine learning models efficiently on these platforms. #### Installing TensorFlow Lite for Android ARM64 Devices For deploying TensorFlow models specifically tailored for Android devices with an ARM64 architecture, one can compile the TensorFlow Lite library using Bazel as shown below: ```bash bazel build -c opt //tensorflow/lite:libtensorflowLite.so --config=android_arm64 --cxxopt="-std=c++11"[^2] ``` This command compiles the `libtensorflowLite.so` shared object file optimized for performance on Android ARM64 systems while adhering to C++11 standards. #### Compiling TensorFlow Library for ARM Systems with Limited Memory Resources When working within environments that have limited memory resources such as embedded systems or low-end hardware running ARM processors, it's advisable to limit the number of parallel jobs during compilation to avoid resource exhaustion. The following example demonstrates how this could be achieved by setting up a two-threaded build process: ```bash bazel build --jobs=2 --config=opt //tensorflow/tools/lib_package:libtensorflow[^4] ``` By specifying `--jobs=2`, only two threads will handle tasks simultaneously throughout the entire building phase, reducing peak RAM consumption significantly without compromising too much speed. #### Python Package Installation Example for Older Versions Like TensorFlow 1.6.0 In some cases where specific versions are required due to compatibility reasons, direct installation from pre-built wheel files might become necessary. An instance involving TensorFlow version 1.6.0 installed via pip under Linux environment would look something similar to what follows: ```bash sudo pip install /tmp/tensorflow_pkg/tensorflow-1.6.0-py2-none-any.whl[^1] ``` Here, `/tmp/tensorflow_pkg/` represents the directory containing the downloaded `.whl` package intended for installation into the system-wide site-packages area accessible through root privileges (`sudo`). --related questions-- 1. What considerations should be taken when choosing between different TensorFlow releases? 2. How does optimizing TensorFlow builds impact application performance on ARM-based devices? 3. Can you provide guidance on troubleshooting common errors encountered during cross-compilation targeting ARM architectures? 4. Are there any best practices recommended for integrating TensorFlow applications onto IoT devices powered by ARM CPUs?
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值