learn-python/contrib/machine-learning/tensorFlow.md

64 wiersze
2.4 KiB
Markdown
Czysty Wina Historia

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

# TensorFlow
Developed by the Google Brain team, TensorFlow is an open-source library that provides a comprehensive ecosystem for building and deploying machine learning models. It supports deep learning and neural networks and offers tools for both beginners and experts.
## Key Features
- **Flexible and comprehensive ecosystem**
- **Scalable for both production and research**
- **Supports CPUs, GPUs, and TPUs**
## Basic Example: Linear Regression
Let's start with a simple linear regression example in TensorFlow.
```python
import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt
# Generate synthetic data
X = np.array([1, 2, 3, 4, 5], dtype=np.float32)
Y = np.array([2, 4, 6, 8, 10], dtype=np.float32)
# Define the model
model = tf.keras.Sequential([
tf.keras.layers.Dense(units=1, input_shape=[1])
])
# Compile the model
model.compile(optimizer='sgd', loss='mean_squared_error')
# Train the model
history = model.fit(X, Y, epochs=500)
# Predict
predictions = model.predict(X)
# Plot the results
plt.plot(X, Y, 'ro', label='Original data')
plt.plot(X, predictions, 'b-', label='Fitted line')
plt.legend()
plt.show()
```
In this example:
1. We define a simple dataset with a linear relationship.
2. We build a sequential model with one dense layer (linear regression).
3. We compile the model with stochastic gradient descent (SGD) optimizer and mean squared error loss.
4. We train the model for 500 epochs and then plot the original data and the fitted line.
## When to Use TensorFlow
TensorFlow is a great choice if you:
- **Need to deploy machine learning models in production:** TensorFlows robust deployment options, including TensorFlow Serving, TensorFlow Lite, and TensorFlow.js, make it ideal for production environments.
- **Work on large-scale deep learning projects:** TensorFlows comprehensive ecosystem supports distributed training and has tools like TensorBoard for visualization.
- **Require high performance and scalability:** TensorFlow is optimized for performance and can leverage GPUs and TPUs for accelerated computing.
- **Want extensive support and documentation:** TensorFlow has a large community and extensive documentation, which can be very helpful for both beginners and advanced users.
## Example Use Cases
- Building and deploying complex neural networks for image recognition, natural language processing, or recommendation systems.
- Developing models that need to be run on mobile or embedded devices.