Network Security Internet Technology Development Database Servers Mobile Phone Android Software Apple Software Computer Software News IT Information

In addition to Weibo, there is also WeChat

Please pay attention

WeChat public account

Shulou

The correct opening posture of PaddlePaddle-GitHub

2025-03-13 Update From: SLTechnology News&Howtos shulou NAV: SLTechnology News&Howtos > Internet Technology >

Share

Shulou(Shulou.com)06/03 Report--

GitHub is a hosting platform for open source and proprietary software projects and a project version management tool, and it is an essential skill for programmers to get started with it. PaddlePaddle is no exception, and all source code and project progress are published on GitHub. But for the students who have just started to write the program, as soon as they open GitHub, they will feel like they don't know how to start. This article introduces PaddlePaddle's quick guide to getting started on GitHub warehouse.

Introduction of PaddlePaddle Project

After logging in to your GitHub account, you will go to your home page. Search for PaddlePaddle in the upper left corner to get to the main page of the PaddlePaddle project:

At the top of the warehouse tab, there are four most commonly used warehouses (Repositories, hereinafter referred to as Repo):

Paddle: all the code of the PaddlePaddle framework is stored in this Repo. Because the package at the time of the Python call is called Paddle, the repository is named Paddle.

Paddle Mobile: Paddle Mobile is a deep learning framework for mobile and embedded devices. He works closely with the PaddlePaddle framework to reduce the performance loss caused by intermediate translation, making it extremely high performance when running the PaddlePaddle model, compatible with a wide range of devices, supporting Android, iOS, ARM development board, Kirin chip, Mali GPU, Snapdragon GPU, raspberry pie, etc., and supporting FPGA development board. If you are engaged in deep learning mobile development, it is highly recommended to use the Paddle Mobile framework.

Models: PaddlePaddle's official model library, which provides reproductions of classic models in many areas of in-depth learning. After each update of the PaddlePaddle version, our testers and developers will test each of these models in 20 simulated development environments to ensure that users avoid problems in learning. At present, most of the classical models in the warehouse should be equipped with the corresponding pre-training model, welcome to experience.

Book:Book, the abbreviation of Jupyter notebook, is the mainstream case teaching scheme of machine learning at present. It has the advantages of installation-free PaddlePaddle, configuration-free environment and interactive web programming page. The PaddlePaddle team provides eight typical experimental cases for beginners, including several mainstream directions of deep learning. Book uses Docker+jupyter 's packaging scheme to make it ready for beginners.

The following section is all the repo in the PaddlePaddle ecology, for example, PARL is the PaddlePaddle reinforcement learning framework, and FluidDoc contains all the PaddlePaddle-related documents, which are not listed here.

Introduction of four Top-setting projects

First, the function introduction of GitHub Repo:

After entering the Paddle warehouse (this is the case with every Repo)

Area ①: there are three buttons in the upper right corner:

Watch is keeping an eye on the Paddle repository, and if there are any updates to the warehouse, it will be pushed to your home page.

Star is a combination of Tiezanga collections, and users can judge public recognition of him by the number of star of a repo. All the repo you have Star can be found in the your star in the drop-down box by clicking on the avatar:

Fork is to copy all the code of the warehouse to your account. In addition to the backup function, you can also submit Pull request to the Paddle project in the future.

Zone ②: in the next tab:

Code is the page that opens by default when visiting the repo, showing the code structure of the repo.

Issues is a small community that asks questions to Paddle R & D personnel. There are R & D students on duty 24 hours a day in Paddle's issues. You can ask questions whenever you have any questions.

Pull requests shows you the progress of the audit of the code submitted by all contributors to the core branch of Paddle, the reason for the failure of the audit, and which code has passed the audit.

Projects is a way of project management in GitHub, which shows the progress of each pending project on a project Kanban.

In Wiki, there are some knowledge and specification documents at the Paddle project and development level.

Insights displays the recent activity information of the Paddle warehouse, the warehouse information and the indicators of the warehouse, making it easy for users to understand the activity tendency of the warehouse.

Area ③: in the following column:

It indicates that the project has had 21423 code updates, 14 project branches, 21 publicly released versions, 180 code contributors and complies with the Apache-2.0 protocol specification. The rainbow bar below represents the percentage of code in each language in the project.

2. Paddle Repo introduction:

Area ④: the most important part of the page is the directory structure of the file content and code:

The Benchmark directory stores the results, code, and data of performance evaluation and comparison.

What is stored in the Cmake directory is the chain structure between source code compilations.

Documentation files are stored in the doc directory, but this directory is no longer maintained and has been migrated to FluidDoc Repo

The Go directory contains distributed code written in the go language with high-performance communications.

The Paddle directory stores the underlying C++ of Paddle and the implementation code of CUDA.

What is stored in the Python directory is the implementation and calling method of the Python interface.

In the Tool directory are some tools for engineering testing and code debugging

In the actual development process, what you see most is the Python directory, which shows the implementation of various function interfaces of Python in the following directory:

There are various function packages used when using Paddle, such as data_feeder, executor, io, optimizer, which are common in Paddle. If you are confused about the implementation and use of a function or operator in the development process, you can directly check the source code of the Python interface here to figure out the problem.

3. Paddle Mobile Repo introduction:

Benchmark is the Paddle Mobile framework in various hardware platforms, using the running efficiency of various classical algorithms test results.

Demo is an official download script for Paddle Mobile testing demo programs, available in Android and iOS

Doc stores development guides for developers on various hardware platforms for Paddle Mobile.

Metal is a graphics rendering framework of iOS, which provides the combination code of Paddle Mobile under this framework.

Src is the abbreviation of source, in which is the implementation code of Paddle Mobile.

The Test directory contains the engineering code that developers use to test the model and op, which can be compiled into binary execution files using CMake.

Most of the debugging programs stored in Tools are needed on the mobile side, such as iOS compilers, Android debugging scripts, and interrupt monitors.

4. Models Repo:

Models is the model repository of PaddlePaddle. In this repo, it shows how to use PaddlePaddle to solve common machine learning tasks, and provides several different neural network models that are easy to learn and use.

Fluid under Models is the latest version of the model implementation code of PaddlePaddle, which is classified according to the application direction of deep learning (speech synthesis, image, natural language processing, speech transcription, etc.).

The weight address of the pre-training exercise is stored in the readme.md document of each subdivided project. Open the document of the subdivided project and pull it to the bottom, such as image_classification:

You can see a Released models table. In the model column of the table is the name of the model, which is a hyperlink corresponding to the download address of the model's pre-training weight. Click on the model name to download the corresponding pre-training model.

For the strategy of using the pre-training model, please refer to the article:

"A large collection of PaddlePaddle pre-training models and official instructions"

5. Book Repo:

Book is a feature of PaddlePaddle's tutorial for beginners. It is an "interactive" e-book-each chapter can be run in a Jupyter Notebook.

As can be seen from the screenshot of the project, a total of 8 learning projects are provided. The learning project is not only arranged step by step, but also includes several mainstream directions of current deep learning: image classification, abstract data processing, recommendation system, text serialization, role semantic annotation, emotion analysis system, machine translation system.

Paddle-book packages Jupyter, PaddlePaddle, and all kinds of dependent software into a Docker image. So you don't need to install all kinds of software and PaddlePaddle yourself, just install Docker.

After installing Docker, you only need to run one step in the command line window to download and run the book's Docker image from DockerHub.com:

Docker run-d-p 8888 8888 paddlepaddle/book

When the download is complete, visit http://localhost:8888 in your local browser to read and edit the book online. Because of the nature of Jupyter, you can even run code directly on it.

This is the end of the Paddle-book roaming guide. For more information, you can log in to PaddlePaddle's GitHub experience: https://github.com/PaddlePaddle/.

You can also log on to PaddlePaddle's official website: www.paddlepaddle.org and enter through the link at the top right:

The New year is coming. I wish you all a happy and comfortable PaddlePaddle in the new year.

Welcome to subscribe "Shulou Technology Information " to get latest news, interesting things and hot topics in the IT industry, and controls the hottest and latest Internet news, technology news and IT industry trends.

Views: 0

*The comments in the above article only represent the author's personal views and do not represent the views and positions of this website. If you have more insights, please feel free to contribute and share.

Share To

Internet Technology

Wechat

© 2024 shulou.com SLNews company. All rights reserved.

12
Report