This tutorial will show you how to install TensorFlow on Ubuntu 22.04. According to their site, TensorFlow is an end-to-end open source platform for machine learning. It has a comprehensive, flexible ecosystem of tools, libraries and community resources that lets researchers push the state-of-the-art in ML and developers easily build and deploy ML powered applications.
Install TensorFlow on Ubuntu 22.04
There are various ways in which you can install TensorFlow on Ubuntu 22.04;
- Install using Python PIP
- Install via Docker
- Build and install from the source.
We will only discuss the PIP installation method in this guide. For other methods refer to the documentation.
Before you can proceed with installation, be sure to check on hardware, system and software requirements.
Install TensorFlow on Ubuntu 22.04 using Python PIP
To install TensorFlow on Ubuntu 22.04 using Python PIP;
- Install Python 3.x
TensorFlow requires Python 3.7-3.10. Fortunately, Ubuntu 22.04 ships with Python 3.10;
python3 -V
Sample output;
Python 3.10.4
- Install PIP on Ubuntu 22.04
pip version 19.0 or higher is required. You can install PIP on Ubuntu 22.04 using the command below;
sudo apt install python3-pip
- Install Required Python Libraries and Virtual Environment
Run the command below to install required Python libraries and virtual environment.
sudo apt install python3-{venv,dev}
- Create TensorFlow Virtual Environment
Next, run the command below to install TensorFlow;
mkdir ~/tensorflow && cd ~/tensorflow
Create virtual environment, in this case we called our virtual environment, tensorflow_venv. You can use any name!
python3 -m venv tensorflow_venv
Activate the virtual environment created;
source ./tensorflow_venv/bin/activate
You will see the shell prompt change;
(tensorflow_venv) [email protected]:~/tensorflow$
- Upgrade PIP;
pip install --upgrade pip
Verify installed PIP version;
pip3 --version
pip 22.1.1 from /home/kifarunix/tensorflow/tensorflow_venv/lib/python3.10/site-packages/pip (python 3.10)
- Install TensorFlow on Ubuntu 22.04 using PIP
Within the virtual environment, run the command below to install TensorFlow on Ubuntu 22.04 using PIP.
pip install --upgrade tensorflow
Sample installation output;
Collecting tensorflow Downloading tensorflow-2.9.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (511.7 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 511.7/511.7 MB ? eta 0:00:00 WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ReadTimeoutError("HTTPSConnectionPool(host='pypi.org', port=443): Read timed out. (read timeout=15)")': /simple/flatbuffers/ Collecting flatbuffers<2,>=1.12 Downloading flatbuffers-1.12-py2.py3-none-any.whl (15 kB) Collecting libclang>=13.0.0 Downloading libclang-14.0.1-py2.py3-none-manylinux1_x86_64.whl (14.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 14.5/14.5 MB 2.0 MB/s eta 0:00:00 Collecting protobuf<3.20,>=3.9.2 Downloading protobuf-3.19.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.1 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.1/1.1 MB 1.6 MB/s eta 0:00:00 Collecting keras<2.10.0,>=2.9.0rc0 Downloading keras-2.9.0-py2.py3-none-any.whl (1.6 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 1.7 MB/s eta 0:00:00 Collecting packaging Downloading packaging-21.3-py3-none-any.whl (40 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 40.8/40.8 kB 234.4 kB/s eta 0:00:00 Collecting six>=1.12.0 Downloading six-1.16.0-py2.py3-none-any.whl (11 kB) Requirement already satisfied: setuptools in ./tensorflow_venv/lib/python3.10/site-packages (from tensorflow) (59.6.0) Collecting tensorflow-estimator<2.10.0,>=2.9.0rc0 Downloading tensorflow_estimator-2.9.0-py2.py3-none-any.whl (438 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 438.7/438.7 kB 1.3 MB/s eta 0:00:00 Collecting typing-extensions>=3.6.6 Downloading typing_extensions-4.2.0-py3-none-any.whl (24 kB) Collecting termcolor>=1.1.0 Downloading termcolor-1.1.0.tar.gz (3.9 kB) Preparing metadata (setup.py) ... done Collecting absl-py>=1.0.0 Downloading absl_py-1.0.0-py3-none-any.whl (126 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 126.7/126.7 kB 785.5 kB/s eta 0:00:00 Collecting tensorboard<2.10,>=2.9 Downloading tensorboard-2.9.0-py3-none-any.whl (5.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.8/5.8 MB 2.1 MB/s eta 0:00:00 Collecting tensorflow-io-gcs-filesystem>=0.23.1 Downloading tensorflow_io_gcs_filesystem-0.26.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (2.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.4/2.4 MB 2.2 MB/s eta 0:00:00 Collecting h5py>=2.9.0 Downloading h5py-3.7.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (4.5 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.5/4.5 MB 2.1 MB/s eta 0:00:00 Collecting google-pasta>=0.1.1 Downloading google_pasta-0.2.0-py3-none-any.whl (57 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 57.5/57.5 kB 381.0 kB/s eta 0:00:00 Collecting numpy>=1.20 Downloading numpy-1.22.4-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (16.8 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 16.8/16.8 MB 2.0 MB/s eta 0:00:00 Collecting astunparse>=1.6.0 Downloading astunparse-1.6.3-py2.py3-none-any.whl (12 kB) Collecting keras-preprocessing>=1.1.1 Downloading Keras_Preprocessing-1.1.2-py2.py3-none-any.whl (42 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 42.6/42.6 kB 244.3 kB/s eta 0:00:00 Collecting gast<=0.4.0,>=0.2.1 Downloading gast-0.4.0-py3-none-any.whl (9.8 kB) Collecting opt-einsum>=2.3.2 Downloading opt_einsum-3.3.0-py3-none-any.whl (65 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 65.5/65.5 kB 435.2 kB/s eta 0:00:00 Collecting wrapt>=1.11.0 Downloading wrapt-1.14.1-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.9/77.9 kB 376.1 kB/s eta 0:00:00 Collecting grpcio<2.0,>=1.24.3 Downloading grpcio-1.46.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (4.4 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.4/4.4 MB 2.3 MB/s eta 0:00:00 Collecting wheel<1.0,>=0.23.0 Downloading wheel-0.37.1-py2.py3-none-any.whl (35 kB) Collecting requests<3,>=2.21.0 Downloading requests-2.27.1-py2.py3-none-any.whl (63 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 63.1/63.1 kB 413.8 kB/s eta 0:00:00 Collecting google-auth-oauthlib<0.5,>=0.4.1 Downloading google_auth_oauthlib-0.4.6-py2.py3-none-any.whl (18 kB) Collecting google-auth<3,>=1.6.3 Downloading google_auth-2.6.6-py2.py3-none-any.whl (156 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 156.7/156.7 kB 887.7 kB/s eta 0:00:00 Collecting tensorboard-plugin-wit>=1.6.0 Downloading tensorboard_plugin_wit-1.8.1-py3-none-any.whl (781 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 781.3/781.3 kB 1.7 MB/s eta 0:00:00 Collecting markdown>=2.6.8 Downloading Markdown-3.3.7-py3-none-any.whl (97 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 97.8/97.8 kB 675.6 kB/s eta 0:00:00 Collecting tensorboard-data-server<0.7.0,>=0.6.0 Downloading tensorboard_data_server-0.6.1-py3-none-manylinux2010_x86_64.whl (4.9 MB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.9/4.9 MB 2.6 MB/s eta 0:00:00 Collecting werkzeug>=1.0.1 Downloading Werkzeug-2.1.2-py3-none-any.whl (224 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 224.9/224.9 kB 1.0 MB/s eta 0:00:00 Collecting pyparsing!=3.0.5,>=2.0.2 Downloading pyparsing-3.0.9-py3-none-any.whl (98 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 98.3/98.3 kB 655.9 kB/s eta 0:00:00 Collecting rsa<5,>=3.1.4 Downloading rsa-4.8-py3-none-any.whl (39 kB) Collecting cachetools<6.0,>=2.0.0 Downloading cachetools-5.1.0-py3-none-any.whl (9.2 kB) Collecting pyasn1-modules>=0.2.1 Downloading pyasn1_modules-0.2.8-py2.py3-none-any.whl (155 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.3/155.3 kB 962.0 kB/s eta 0:00:00 Collecting requests-oauthlib>=0.7.0 Downloading requests_oauthlib-1.3.1-py2.py3-none-any.whl (23 kB) Collecting charset-normalizer~=2.0.0 Downloading charset_normalizer-2.0.12-py3-none-any.whl (39 kB) Collecting idna<4,>=2.5 Downloading idna-3.3-py3-none-any.whl (61 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 61.2/61.2 kB 427.0 kB/s eta 0:00:00 Collecting urllib3<1.27,>=1.21.1 Downloading urllib3-1.26.9-py2.py3-none-any.whl (138 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 139.0/139.0 kB 666.8 kB/s eta 0:00:00 Collecting certifi>=2017.4.17 Downloading certifi-2022.5.18.1-py3-none-any.whl (155 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 155.2/155.2 kB 854.3 kB/s eta 0:00:00 Collecting pyasn1<0.5.0,>=0.4.6 Downloading pyasn1-0.4.8-py2.py3-none-any.whl (77 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 77.1/77.1 kB 462.5 kB/s eta 0:00:00 Collecting oauthlib>=3.0.0 Downloading oauthlib-3.2.0-py3-none-any.whl (151 kB) ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 151.5/151.5 kB 929.3 kB/s eta 0:00:00 Using legacy 'setup.py install' for termcolor, since package 'wheel' is not installed. Installing collected packages: termcolor, tensorboard-plugin-wit, pyasn1, libclang, keras, flatbuffers, wrapt, wheel, werkzeug, urllib3, typing-extensions, tensorflow-io-gcs-filesystem, tensorflow-estimator, tensorboard-data-server, six, rsa, pyparsing, pyasn1-modules, protobuf, oauthlib, numpy, markdown, idna, gast, charset-normalizer, certifi, cachetools, requests, packaging, opt-einsum, keras-preprocessing, h5py, grpcio, google-pasta, google-auth, astunparse, absl-py, requests-oauthlib, google-auth-oauthlib, tensorboard, tensorflow Running setup.py install for termcolor ... done Successfully installed absl-py-1.0.0 astunparse-1.6.3 cachetools-5.1.0 certifi-2022.5.18.1 charset-normalizer-2.0.12 flatbuffers-1.12 gast-0.4.0 google-auth-2.6.6 google-auth-oauthlib-0.4.6 google-pasta-0.2.0 grpcio-1.46.3 h5py-3.7.0 idna-3.3 keras-2.9.0 keras-preprocessing-1.1.2 libclang-14.0.1 markdown-3.3.7 numpy-1.22.4 oauthlib-3.2.0 opt-einsum-3.3.0 packaging-21.3 protobuf-3.19.4 pyasn1-0.4.8 pyasn1-modules-0.2.8 pyparsing-3.0.9 requests-2.27.1 requests-oauthlib-1.3.1 rsa-4.8 six-1.16.0 tensorboard-2.9.0 tensorboard-data-server-0.6.1 tensorboard-plugin-wit-1.8.1 tensorflow-2.9.1 tensorflow-estimator-2.9.0 tensorflow-io-gcs-filesystem-0.26.0 termcolor-1.1.0 typing-extensions-4.2.0 urllib3-1.26.9 werkzeug-2.1.2 wheel-0.37.1 wrapt-1.14.1
Check installed version of TensorFlow;
python3 -c 'import tensorflow as tf;print(tf.version.VERSION)'
Sample output;
2.9.1
You can now use TensorFlow. Refer to the documentation for more information.
You can deactivate the virtual environment using the command;
deactivate
You should see the shell prompt change.
And that is all on how to install TensorFlow on Ubuntu 22.04.
Other Tutorials
Install Java 11|Java 17|Java 18 on Debian 11