yahboom
HomeLearn
Solution
Blog
Online Store
About Us
EN/中文
ROSMASTER X3📖
1.About ROSMASTER X3
  • 1.1 Wiring Introduction
  • 1.2 Precautions for battery
  • 1.3 First Trial
2.Assembly steps
  • Installation Video(1-10)
  • Installation Video(11-18)
  • Installation Video(20-28)
  • Installation Video(29-30)
3.ROS1-Remote control course
  • 3.1 APP remote control
  • 3.2 Model aircraft remote control
  • 3.3 Handle remote control
4.ROS1-Hardware course
  • 4.1 About expansion board_V3.0
  • 4.1 About expansion board_V1.0
  • 4.2 STM32 Development environment
  • 4.3 Button to control the buzzer to whistle
  • 4.4 FreeRTOS application
  • 4.5 Serial communication
  • 4.6 SBUS model aircraft remote control
  • 4.7 CAN bus communication
  • 4.8 RGB colorful light bar
  • 4.9 Timer interrupt to control PWM servo
  • 4.10 Control serial port servos
  • 4.11 Nine-axis attitude sensor to obtain data
  • 4.12 Control motor
  • 4.13 Timer captures the encoder data
  • 4.14.1 Kinematic Analysis of Mecanum Wheel
  • 4.14.2 Kinematics Analysis of Ackermann Car
  • 4.15 PID control robot movement
5.ROS1-Basic course
  • 5.1 Update the firmware
  • 5.2 Turn off the self-starting process at startup
  • 5.3 Install the Rosmaster driver library
  • 5.4 Buzzer whistle
  • 5.5 Control PWM servo
  • 5.6 RGB colorful light bar special effects display
  • 5.7 Control motor
  • 5.8 Control robot movement
  • 5.9 Control Serial Servo
6.ROS1-Linux operating system
  • 6.1 Virtual machine installation and use
  • 6.2 Linux basics
  • 6.3 Remote control
  • 6.4 Multi-machine communication configuration
  • 6.5 Static IP and hotspot mode
  • 6.6 Bind the device ID
  • 6.7 Web page real-time monitoring
  • 6.8 Expansion tutorial
  • 6.9.1 Jetson Nano write sytem
  • 6.9.2 Jetson Xavier NX write system
  • 6.9.3 Jetson TX2 NX write system
  • 6.9.4 Raspberry Pi write system
7.ROS1-Docker-pi5
  • 1、Docker overview and docker installation
  • 2、Common commands for docker image containers
  • 3、Docker images deeply understand and publish images
  • 4、Docker hardware interaction and data processing
  • 5、Enter the bot's docker container
  • 6、Robot development environment construction in Docker
  • 7、How customers can update docker images in the future
8.ROS1-ROS basic course
  • 1.ROS introduction
  • 2.ROS installation
  • 3.ROS common command tools
  • 4.ROS workspace
  • 5.ROS function package
  • 6.ROS node
  • 7.ROS topic publisher
  • 8.ROS topic subscribers
  • 9.ROS service client
  • 10.ROS service server
  • 11.ROS action client
  • 12.ROS action server
  • 13.ROS custom message reception
  • 14.ROS-launch file
  • 15.ROS-TF transformation
  • 16.ROS parameter service
  • 17.ROS-rviz use
  • 18.ROS-rqt tool usage
  • 19.Topic message recording and playback
  • 20.urdf model introduction
  • 21.gazebo introduction
  • 22.ROS distributed communication
9.ROS1-OpenCV courses
  • 9.1 Getting started with Open Source CV
  • 9.2 Geometric transformation
  • 9.3 Image processing and drawing text line segments
  • 9.4 Image beautification
  • 9.5 Opencv application
  • 9.6 AR vision
  • 9.7 AR QR code
  • 9.8 ROS+Opencv foundation
  • 9.9 ROS+Opencv application
  • 9.10 Data transformation and point cloud
  • 9.11 MediaPipe development
10.ROS1-Robot control course
  • 10.1 PID algorithm theory
  • 10.2 Robot PID debugging
  • 10.3 Robot information release
  • 10.4 Robot keyboard control
  • 10.5 Robot handle control
  • 10.6 Robot state estimation
  • 10.7 Robot calibration
  • 10.8 Robot URDF model
11.ROS1-Depth camera course
  • 11.1 How to use the Astra camera
  • 11.2 Astra camera calibration
  • 11.3 Astra Color Tracking
  • 11.4 Astra Object Tracking
  • 11.5 Visual tracking autopilot
  • 11.6 Pure visual 2D mapping and navigation
  • 11.7 RTAB-Map 3D mapping navigation
  • 11.8 ORB_SLAM2 basics
  • 11.9 ORB_SLAM2_Octomap
12.ROS1-Lidar course
  • 12.1 Lidar basic-SLAM
  • 12.1 Lidar basic-4ROS
  • 12.2 Lidar avoiding
  • 12.3 Lidar guard
  • 12.4 Lidar follow
  • 12.5 Patrol game
  • 12.6 gmapping mapping algorithm
  • 12.7 hector mapping algorithm
  • 12.8 karto mapping algorithm
  • 12.9 cartographer mapping algorithm
  • 12.10 rrt_exploration mapping algorithm
  • 12.11 AMCL
  • 12.12 Navigation and avoiding
  • 12.13 APP mapping and navigation
13.ROS1-Multi-robot control course
  • 13.1 Multi-machine handle control
  • 13.2 Multi-machine navigation
  • 13.3 Multi-machine formation
  • 13.4 Multi-machine surround
14.ROS1-Deep learning courses
  • 14.1 KNN recognizes handwritten digits
  • 14.2 Basic use of TensorFlow
  • 14.3 Basic use of PyTorch(jetson)
  • 14.4 yolov5 model training(jetson)
  • 14.5 yolov5+tensorrt acceleration(jetson)
  • 14.6 yolov4-tiny
15.ROS1-Voice control courses
  • 15.0 How to use old voice module in new image
  • 15.1 Introduction of voice control module-NEW
  • 15.2 Voice control module port binding-NEW
  • 15.1 Introduction of voice control module-Old
  • 15.2 Voice control module port binding-Old
  • 15.3 Voice control car movement
  • 15.4 Voice control Autopilot
  • 14.5 Voice control color recognition
  • 15.6 Voice control color tracking
  • 15.7 Voice control multi-point navigation
16.ROS1-Model training Autopilot
  • 16.0 ReadMe
  • 16.1 yolov5 to train traffic signs
  • 16.2 TensorRt acceleration identification mark
  • 16.3 Road sign indication function description
  • 16.4 Collect data
  • 16.5 Training model
  • 16.6 Model transformation and application
  • 16.7 AI Autopilot
17.ROS2- Remote control course
  • 1. APP control
  • 2. Model aircraft control
  • 3. Wireless Handle Control Tutorial
18.ROS2- Hardware course
  • 1. About expansion board_V1.0
  • 1. About expansion board_V3.0
  • 2. STM32 Development environment
  • 3. Button control
  • 4. FreeRTOS application
  • 5. Serial communication
  • 6. SBUS model aircraft remote control
  • 7. CAN bus communication
  • 8. RGB colorful light bar
  • 9. Timer interrupt to control PWM servo
  • 10. Control serial port servos
  • 11. Nine-axis attitude sensor to obtain data
  • 12. Control motor
  • 13. Timer captures the encoder data
  • 14. Robot kinematics analysis theory
  • 15. PID control robot movement
19.ROS2- ROSMASTER basic course
  • 1. Update the firmware
  • 2. Turn off the self-starting process at startup
  • 3. Install the Rosmaster driver library
  • 4. Buzzer whistle
  • 5. Control PWM servo
  • 6. RGB colorful light bar special effects display
  • 7. Control motor
  • 8. Control robot movement
  • 9. Control Serial Servo
20.ROS2- Linux operating systemnew
  • 1. Virtual machine installation and use
  • 2. Linux basics
  • 3. Remote control
  • 4. Multi-machine communication configuration
  • 5. Static IP and hotspot mode
  • 6. Bind the device ID
  • 7. Web page real-time monitoring
  • 8. Expansion tutorial
  • 9.1 Jetson Nano write sytem
  • 9.2 Raspberry Pi write system
  • 9.3 Orin series write system
  • 10.Jetpack old system upgraded to SUPER systemnew
21.ROS2- Docker(Nano Pi)
  • 1. Docker Overview and Docker Installation
  • 2.Common commands for docker image containers
  • 3.Docker images deeply understand and publish images
  • 4. Docker hardware interaction and data processing
  • 5. Entering the Docker Container of the Robot
  • 6. Building a Robot Development Environment in Docker
  • 7. Method for customers to update Docker images in the future
22.ROS2- ROS2 Basic Tutorial
  • 1.Introduction to ROS2
  • 2.ROS2 install Humble
  • 3.ROS2 development environment
  • 4.ROS2 workspace
  • 5.ROS2 function package
  • 6.ROS2 node
  • 7.ROS2 topic communication
  • 8.ROS2 service communication
  • 9.ROS2 action communication
  • 10.ROS2 custom interface message
  • 11.ROS2 parameter service case
  • 12.ROS2 meta-function package
  • 13.ROS2 distributed communication
  • 14.ROS2 DDS
  • 15.ROS2 time related API
  • 16.ROS2 common command tools
  • 17.ROS2 rviz2 use
  • 18.ROS2 Rqt Toolbox
  • 19.ROS2 Launch startup file configuration
  • 20.ROS2 recording and playback tool
  • 21.ROS2 URDF model
  • 22.ROS2 Gazebo simulation platform
  • 23.ROS2 TF2 coordinate transformation
23.ROS2- Robot control course
  • 1. PID Algorithm Theory
  • 2. Robot information release
  • 3. Robot control
  • 4. Robot state estimation
  • 5. Robot calibration
  • 6. URDF model
24.ROS2- Depth camera course
  • 1.Depth camera usage
  • 2. Camera internal reference calibration
  • 3. color tracking
  • 4. KCF object tracking
  • 5. ORB_SLAM2 basics
  • 6. ORB_ SLAM2 PCL mapping
  • 7. ORB_ SLAM2 Octomap mapping
  • 8. RTAB-Map 3D mapping navigation
25.ROS2- Lidar course
  • 1. Introduction and Use of Lidar
  • 2. Lidar avoiding
  • 3. Lidar follow
  • 4. Lidar guard
  • 5. Patrol game
  • 6. Gmapping mapping algorithm
  • 7. Cartographer mapping algorithm
  • 8. Navigation and obstacle avoidance
  • 9. Rosmaster_ X3 conducts mapping through the APP
  • 10. Rosmaster_ X3 Navigation through APP
26.ROS2- OpenCV courses
  • 1. OpenCV Basic Course
  • 2. ROS+opencv application
  • 3. QR code creation and recognition
  • 4. AR Vision
  • 5. Mediapipe fun gameplay
  • 6、line patrol automatic driving
27.ROS2- Voice control courses
  • 0.How to use old voice module in new image
  • 1. Introduction of voice module-new
  • 2. Voice control module port binding-new
  • 1. Introduction of voice module and port binding-old
  • 3. Voice control car movement
  • 4. Voice control Autopilot
  • 5. Voice control color recognition
  • 6. Voice control color tracking
  • 7. Voice control multi-point navigation
28.Deep learning courses(SUPER)
  • 1.KNN recognizes handwritten digitsnew
  • 2.Basic use of TensorFlownew
  • 3.Basic use of PyTorch(jetson)new
  • 4.YOLOv11Model conversion(SUPER)new
  • 5.YOLOv11Dataset annotation(SUPER)new
  • 6.YOLOv11Model conversion + tensorrt acceleration(SUPER)new
  • 7.YOLOv11Object recognition(SUPER)new
29.ROS2-Multi-robot control
  • 1. Multi-robot control
  • 2. Multi-robot navigation
LLM tutorial
1.Development environment
  • 0. Model usage instructions
  • 1.Environments deployment
  • 2.Dialogue platform installation
2.Jetson Nano B01
  • 1.Qwen2 model
  • 2.TinyLlama model
  • 3.Phi-3 model
  • 4.Gemma model
  • 5.Orca Mini model
  • 6.StarCoder2 model
  • 7.DeepSeek-R1 model
  • 8.Expand LLaVA-Phi3
3.Jetson Orin NXNANO
  • 1.Llama3 model
  • 2.Qwen2 model
  • 3.Phi-3 model
  • 4.Gemma model
  • 5.WizardLM2 model
  • 6.Codellama model
  • 7.DeepSeek-R1 model
  • 8.Orca Mini model
  • 9.StarCoder2 model
  • 10.TinyLlama model
  • 11.Expand LLaVA
  • 12.Expand LLaVA-Phi3
4.Raspberry Pi 5B
  • 1.Meta AI Llama3 model
  • 2.Qwen2 model
  • 3.Phi-3 model
  • 4.Gemma model
  • 5.WizardLM2 model
  • 6.Meta AI Codellama model
  • 7.DeepSeek-R1 model
  • 8.Expand LLaVA
FAQ
  • 1.Using your own Jetson board, ROSMASTER X3 cannot start normally
Download
  • RemoteCtrl_APP(Android/iOS)
  • Mapping_APP(iOS_Android)
  • Instruction Manual
  • SystemFile_ROS2
  • SystemFile_ROS1
  • SystemFile_ROS2_OrinNANOSUPER
  • SystemFile_ROS2_OrinNXSUPER
  • Code
  • Jetson_Boot_USB.tar.gz
  • VM software
  • Autopilot Annex
  • Other_Annex_File
  • LLM_SystemFile
  • ROS2_Basic_VM
Download ZIP
FAQ
  • 1、How to connect OLED?

Welcome to ROSMASTER X3 repository

14.2 Basic use of TensorFlow

2. TensorFlow

2.1. What is TensorFlow?

2.1.1. Definition

TensorFlow™ is a symbolic mathematics system based on data flow programming (dataflow programming) and is widely used in various types of machine learning Programming implementation of (machine learning) algorithm, its predecessor is the neural network of Google Network algorithm library DistBelief.

Tensorflow has a multi-level structure and can be deployed on various servers, PC terminals and web pages and supports GPU and TPU high performance Numerical calculation, is widely used in Google’s internal product development and scientific research in various fields

2.1.2. Core components

The core components of distributed TensorFlow (core runtime) include: distribution center (distributed master), executor (dataflow executor/worker service), kernel application (kernel implementation) and the bottom [device layer] (https://baike. baidu.com/item/Device Layer/8983070) (device layer)/Network Layer (networking layer).

image-20220223174953830

1), distribution center (distributed master)

The distribution center clips subgraphs from the input data flow graph, divides them into operational fragments and starts executors. When the distribution center processes the data flow graph, it will perform preset operation optimizations, including common subexpression elimination (common subexpression elimination), constant folding (constant folding), etc.

  1. The executor is responsible for running graph operations in processes and devices, and sending and receiving results from other executors. Distributed TensorFlow has a parameter server to aggregate and update model parameters returned by other executors. The executor will choose to perform parallel computing and GPU acceleration when scheduling local devices.

  2. The kernel application is responsible for a single graph operation, including mathematical calculations, array manipulation, control flow and state management operations. The kernel application uses Eigen to perform parallel calculations of tensors, cuDNN libraries, etc. to perform GPU acceleration, and gemmlowp to perform low numerical precision calculations. In addition, users can perform low numerical precision calculations in the kernel application. Register additional kernels (fused kernels) to improve the efficiency of basic operations such as activation functions and their gradient calculations.

2.2, TensorFlow 2

2.2.1. Introduction

TensorFlow is a deep learning open source tool released by Google in November 2015. We can use it to quickly build deep neural networks and train deep learning models. The main purpose of using TensorFlow and other open source frameworks is to provide us with a module toolbox that is more conducive to building deep learning networks, so that the code can be simplified during development, and the final model will be more concise and easy to understand.

2.2.2. Upgrade direction

  1. Use Keras and Eager Execution to easily build models.

  2. Achieve robust production environment model deployment on any platform.

3). Provide powerful experimental tools for research.

  1. Simplify the API by cleaning up obsolete APIs and reducing duplication.

2.3. TensorFlow basic concept syntax

2.3.1. Tensor

  1. Tensor is the core data unit of TensorFlow, which is essentially an array of arbitrary dimensions. We call a 1-dimensional array a vector, a 2-dimensional array a matrix, and a tensor can be regarded as an N-dimensional array.

  2. In TensorFlow, each Tensor has two basic attributes: data type (default: float32) and shape. The data types are roughly as shown in the following table,

Tensor typeDescription
tf.float3232-bit floating point number
tf.float6464-bit floating point number
tf.int6464-bit signed integer type
tf.int3232-bit signed integer type
tf.int1616-bit signed integer type
tf.int88-bit signed integer type
tf.uint88-bit unsigned integer type
tf.stringVariable length byte array
tf.boolBoolean type
tf.complex64Real and imaginary numbers

3). According to different uses, there are two main tensor types in TensorFlow, namely

  • tf.Variable: variable Tensor, which needs to specify an initial value and is often used to define variable parameters, such as the weights of neural networks.

  • tf.constant: constant Tensor, the initial value needs to be specified to define a tensor that does not change

4), define a variable Tensor

Create a new python file, name it Tensor_Variable, and then give it execution permissions.

xxxxxxxxxx
sudo chmod a+x Tensor_Variable.py

Paste the following code inside,

xxxxxxxxxx
import tensorflow astf
v = tf.Variable([[1, 2], [3, 4]]) # Two-dimensional variable with shape (2, 2)
print(v)

run the test,

xxxxxxxxxx
python3Tensor_Variable.py

Note: ROSMASTER must use python3 to properly use tensorflow2.0 or above

output,

xxxxxxxxxx
<tf.Variable 'Variable:0' shape=(2, 2) dtype=int32, numpy=
array([[1, 2],
        [3, 4]], dtype=int32)>

5), define a constant Tensor

Create a new python file, name it Tensor_constant, and then give it execution permissions.

xxxxxxxxxx
sudo chmod a+x Tensor_constant.py

Paste the following code inside,

xxxxxxxxxx
import tensorflow astf
v = tf.constant([[1, 2], [3, 4]]) # Two-dimensional variable with shape (2, 2)
print(v)

run the test,

xxxxxxxxxx
python3 Tensor_constant.py

output,

xxxxxxxxxx
<tf.Tensor: id=9, shape=(2, 2), dtype=int32, numpy=
array([[1, 2],
        [3, 4]], dtype=int32)>

If you look closely, you will find that the output tensor has three attributes: shape, data type dtype, and NumPy array.

  1. Commonly used methods to create new special constant tensors:

  • tf.zeros: Create a new constant Tensor with the specified shape and all 0s

    Example: c = tf.zeros([2, 2]) # 2x2 constant Tensor with all 0s

    output,

xxxxxxxxxx
<tf.Tensor: id=12, shape=(2, 2), dtype=float32, numpy=
array([[0., 0.],
        [0., 0.]], dtype=float32)
  • tf.ones_like: Refer to a certain shape and create a new constant Tensor with all 1’s

Example: v = tf.ones_like(c) # A constant Tensor that is consistent with the shape (shape) of tensor c and is all 1. Note that the shape here refers to the attribute shape of the tensor

Output,

xxxxxxxxxx
<tf.Tensor: id=15, shape=(3, 3), dtype=float32, numpy=
array([[1., 1.],
        [1., 1.]],dtype=float32)
  • tf.fill: Create a new constant Tensor with a specified shape and all scalar values.

Example: a = tf.fill([2, 3], 6) # 2x3 is a constant Tensor of all 6

Output,

xxxxxxxxxx
<tf.Tensor: id=18, shape=(2, 3), dtype=int32, numpy=
array([[6, 6, 6],
        [6, 6, 6]], dtype=int32)>
  • tf.linspace: Create an equally spaced sequence

    Example: c = tf.linspace(1.0, 10.0, 5, name="linspace")

Output,

xxxxxxxxxx
<tf.Tensor: id=22, shape=(5,), dtype=float32, numpy=array([ 1. , 3.25, 5.5 , 7.75, 10. ], dtype=float32)>
  • tf.range: Create a sequence of numbers

    Example: c = tf.range(start=2, limit=8, delta=2)

    output,

xxxxxxxxxx
<tf.Tensor: id=26, shape=(5,), dtype=int32, numpy=array([2, 4, 6, 8], dtype=int32)>

For this part of the code, please refer to:

xxxxxxxxxx
~/TensorFlow_demo/tensor_init.py

2.3.2. Use Eager Execution (dynamic graph) mechanism to perform operations on tensors

  1. Changes in the tensor operation mechanism of TensorFlow2 and TensorFlow1.x

The dynamic graph mechanism is the biggest difference between TensorFlow2.x and TensorFlow1.x. It is similar to PyTorch and simplifies the code and execution process.

  1. Take tensor addition as an example to illustrate,

Create a new python file, name it tensor_plus, and then give it execution permissions.

xxxxxxxxxx
sudo chmod a+x tensor_plus.py

Paste the following code inside,

xxxxxxxxxx
a = tf.fill([2, 3], 6)
b = tf.fill([2, 3], 2)
c = a + b
print(a)
print(b)
print(c)

run the test,

xxxxxxxxxx
python3 tensor_plus.py

image-20220224102821953

It can be found that the execution process of this python is the same, and if it is in Tersorflow1.x, a session needs to be established, and the addition operation in the session is performed.

  1. Commonly used APIs of TensorFlow:

  • tf.math: Mathematical calculation module, which provides a large number of mathematical calculation functions.

  • tf.linalg: Linear algebra module, which provides a large number of linear algebra calculation methods and classes.

  • tf.image: Image processing module, which provides classes such as image cropping, transformation, encoding, and decoding.

  • tf.train: Provides components for training, such as optimizers, learning rate decay strategies, etc.

  • tf.nn: Provides underlying functions for building neural networks to help implement various functional layers of deep neural networks.

  • tf.keras: the high-level API of the original Keras framework. Contains high-order neural network layers in the original tf.layers.

  • tf.data: Input data processing module, which provides classes such as tf.data.Dataset for encapsulating input data, specifying batch size, etc.

For usage of these commonly used APIs, please refer to the official documentation:

Module: tf | TensorFlow Core v2.8.0 (google.cn)

2.3.3. Neural network

  1. Neural network is a mathematical model that exists in the nervous system of a computer. It is connected by a large number of neurons and performs calculations. It changes the internal structure based on external information and is often used to process input. Model complex relationships between outputs. The structure of a basic neural network has an input layer, a hidden layer, and an output layer. The picture below is a neural network diagram,

image-20220427131059873

  1. Input layer: receives sensory information;

  2. Hidden layer: processing of input information;

4). Output layer: outputs the computer’s understanding of the input information.

2.3.4. Build and train neural network (kear)

1), import data

xxxxxxxxxx
x_train = datasets.load_iris().data
y_train = datasets.load_iris().target

For more information about data, please refer to: tf.data.Dataset | TensorFlow Core v2.8.0 (google.cn)

  1. Define a structural network that describes the neural network

xxxxxxxxxx
model = tf.keras.models.Sequential()

Example:

xxxxxxxxxx
model = tf.keras.Sequential([
     tf.keras.layers.Dense(3, activation='softmax', kernel_regularizer=tf.keras.regularizers.l2())
])

The input parameters represent the network structure from the input layer to the output layer, generally including the following three:

  • Straighten layers: tf.keras.layers.Flatten()

    Please refer to the official documentation: tf.keras.layers.Flatten | TensorFlow Core v2.8.0 (google.cn)

  • Fully connected layer: tf.keras.layers.Dense()

    Please refer to the official documentation: tf.keras.layers.Dense | TensorFlow Core v2.8.0 (google.cn)

  • Convolution layer: tf.keras.layers.Conv2D()

    Please refer to the official documentation: tf.keras.layers.Conv2D | TensorFlow Core v2.8.0 (google.cn)

  1. Configure the training method for training the neural network

xxxxxxxxxx
model.compile( optimizer = optimizer, loss = loss function, metrics = ["accuracy"])

Example:

xxxxxxxxxx
model.compile(optimizer=tf.keras.optimizers.SGD(lr=0.1),
               loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=False),
               metrics=[tf.keras.metrics.sparse_categorical_accuracy])

The input parameters are composed of the following three parts:

  • optimizer: optimizer

    Mainly set the learning rate lr, learning decay rate decay and momentum parameters.

  • loss: loss function

  • metrics: accuracy

    Multiple accuracy rates can be specified.

For the specific values of the three parameters, please refer to: tf.keras.Model | TensorFlow Core v2.8.0 (google.cn)

  1. Execute the training process

xxxxxxxxxx
model.fit (x=input features of the training set, y=label of the training set, batch_size=specifies the number of samples included in each batch when performing gradient descent,
epochs = value at the end of training, validation_data = (input features of the test set, label of the test set),
validation_split = What proportion is divided from the training set to the test set,
validation_freq = number of epoch intervals for testing)

Example:

xxxxxxxxxx
model.fit(x_train, y_train, batch_size=32, epochs=5, validation_data=(x_test, y_test), validation_freq=1)

For specific parameter settings, please refer to: tf.keras.Model | TensorFlow Core v2.8.0 (google.cn)

5), print network structure and parameter statistics

xxxxxxxxxx
model.summary()

For specific parameter settings, please refer to: tf.keras.Model | TensorFlow Core v2.8.0 (google.cn)

2.3.4. Training neural network example - classic example of training cat and dog images

1), code path reference

xxxxxxxxxx
~/TensorFlow_demo/cats_dogs_demo.py

2), run the program

xxxxxxxxxx
cd TensorFlow_demo/
python3 cats_dogs_demo.py
  1. Screenshots of program running

When pictures of kittens and puppies appear, in the picture display window, press the q key to continue executing the program.

image-20220228121929519

image-20220228122605151

The number of training epochs for this model is 10, and the number of sample batches is 10. The coordinate curve on the left shows that as the number of training times increases, the accuracy acc and error loss will increase and decrease.

KNN recognizes handwritten digits
Basic use of PyTorch(jetson)

COMPANY

  • About us
  • Team Style
  • Blog

LEARNING & EXPLORATION

  • Tutorials
  • Edge AI hardware
  • Educational robots
  • Embedded intelligent hardware

WHERE TO BUY

  • Yahboom Online Store
  • Amazon
  • Alibaba
  • AliExpress
  • Mercado

TECHNOLOGY SUPPORT

  • Email: support@yahboom.com

BE A DISTRIBUTOR

  • Email: sales@yahboom.com
QR Code

Copyright © 2017-2026 Yahboom. All Rights Reserved.

EN/中文