I tried to summarize the AI framework of Python. From a personal point of view, Tensorflow seemed to have the most documentation and examples.
What is the Python framework? The Python framework refers to software that functions as the basis for developing AI (artificial intelligence) and web applications such as machine learning and deep learning using Python. In other words, it is a framework and framework formed by adding functionality to common code (each programming language). Especially when developing AI (artificial intelligence) such as machine learning and deep learning and Web applications, it is necessary to write a huge amount of programs. However, by using the framework, it is possible to significantly reduce the amount of program description and man-hours. Even inexperienced engineers can create programs with guaranteed security.
Differences between frameworks and libraries Let me tell you a brief difference between frameworks and libraries.
·Framework A framework is a collection of classes and libraries used in programming to implement the standard structure of an application for a particular operating system. In other words, it is a framework or framework that organizes what is needed for general purposes.
·Library A library is a collection of multiple highly versatile programs. In other words, it is a part of the source code provided as a group of parts such as classes and functions.
merit
・ Improvement of work efficiency Developing using a framework leads to improved work efficiency. The framework consists of templates that can be used in their original form, reusable classes, libraries, APIs, and so on. By introducing a framework that many people can use and trust, most of the coding does not need to be prepared, which leads to improvement of work efficiency. In addition, you can easily customize the functions and design, so you can develop high-quality applications in a short time.
・ Maintains code uniformity
When developing as a team, using a framework has the advantage of maintaining code integrity. In particular, since technical skills such as coding differ from one freelance engineer to another, the code becomes inconsistent, and as a result, work efficiency and development speed often drop. By using a common rule called framework, we reduce coding differences between freelance engineers.
・ Reduction of bugs Coding without a framework increases the likelihood of bugs in many places. This may simply be due to lack of development competence, but using flakework tends to be less prone to bugs than writing on your own.
Demerit
・ Some study time is required In addition to learning Python itself, you have to spend time learning the Python framework. You need a quick catch-up of knowledge. It is also possible that the documentation is written in English and that the small market Python framework does not have much information.
・ Some frameworks are expensive Some Python frameworks are free to use, while others are expensive. Do some research in advance before learning the Python framework.
Python framework market trends As Python is stable as a technology and the population of development engineers is increasing year by year, the need for a Python framework will increase as well as development languages. By 2030, there is expected to be a shortage of 550,000 IT engineers who will be responsible for cutting-edge technologies such as IoT and AI (artificial intelligence). In particular, development using Tensorflow, Keras, and Pytorch's machine learning and deep learning frameworks is likely to expand in the future. However, frameworks are out of fashion, and new ones are still being developed. Therefore, keep an eye on the latest market trends and keep updating your knowledge.
5 Recommended Python Frameworks Python is a development language that has been attracting attention in recent years, from web applications to AI (artificial intelligence) such as machine learning and deep learning. In addition, we are developing using Python for many services such as YouTube, Dropbox, Reddit, Instagram, etc., and the number of job offers and projects is increasing year by year. For this reason, a variety of frameworks are used, from feature-rich frameworks to lightweight frameworks. In this chapter, we will introduce 5 Python frameworks that are often used when developing Python. If you're a freelance engineer, take a look at the Python frameworks you're interested in.
・ Django
Django is an open source framework for web development published in 2005. It is the most popular Python web framework. Suitable for large-scale web application development. In addition, it is a Python framework that is often required as development experience in Python job offers and projects. Django has web features such as sitemaps, user authentication, and RSS feeds, and is designed to make web system development easier. Django is also used on Instagram and Pinterest's well-known web apps.
・ Bottle
bottle is a very simple Python framework for the web. The feature is that it is WSGI (Web Server Gateway Interface). WSGI refers to defining an interface in Python for connecting a web server and a web application. Bottle is recommended for those who are new to the Python framework, as it can be used just by understanding the simple mechanism. Suitable for small and medium scale web application development.
・ Flask
Flask, like bottle, is a Python framework for developing web applications with WSGI. Sometimes referred to as a micro-web framework, it is characterized by its light weight and minimal functionality. Applications implemented in Flask can be easily run on a WSGI-enabled HTTP server. It is suitable for small and medium-sized Web application development.
・ Tornado
Tornado is a Python framework for the web developed by FriendFeed. Unlike other Python frameworks for the Web, it has the feature of being able to postpone the time-consuming IO processing and accept the request processing first. In 2009, FriendFeed was acquired by Facebook.
・ Plone
Plone is a Python framework for open source web applications. Plone features an all-in-one package with all the features you need. Therefore, the database / Web server is provided in Plone, and there is no need to install Apache or MySQL. Plone is mainly used to create CMS (Content Management System) for enterprises.
・ Tensorflow
Tensorflow is a framework developed by Google and open source for machine learning and deep learning. Originally a library developed to handle tensor calculations, it is a framework that can perform calculation processing and has abundant functions related to neural networks. As the field of AI (artificial intelligence and) machine learning is developing, it is expected that services using TensorFlow will increase. In addition, it is also known as Google's OSS (Open Software Library), and it is also famous for the dramatic increase in the number of users in the months since it was released.
・ Keras
Keras is a neural network library that runs on TensorFlow and Theano. A neural network library is a group of software that supports implementations such as machine learning and deep learning. Keras is easy to understand even for beginners, so it is a very good Python framework for engineers who are starting to learn machine learning and deep learning.
・ Pytorch
Pytorch is a deep learning framework led by Facebook. Pytorch is very popular among deep learning libraries because it allows you to write highly flexible neural networks. Since the user community is expanding year by year, it is attractive that it is easy to find implementations written by other researchers.
Recommended Posts