Natural Computing with Python
eBook - ePub

Natural Computing with Python

Learn to implement genetic and evolutionary algorithms to solve problems in a pythonic way

Giancarlo Zaccone

  1. English
  2. ePUB (adapté aux mobiles)
  3. Disponible sur iOS et Android
eBook - ePub

Natural Computing with Python

Learn to implement genetic and evolutionary algorithms to solve problems in a pythonic way

Giancarlo Zaccone

DĂ©tails du livre
Aperçu du livre
Table des matiĂšres
Citations

À propos de ce livre

Step-by-step guide to learn and solve complex computational problems with Nature Inspired algorithms. Key Features

  • Artificial Neural Networks
  • Deep Learning models using Keras
  • Quantum Computers and Programming
  • Genetic Algorithms, CNN and RNNs
  • Swarm Intelligence Systems
  • Reinforcement Learning using OpenAI
  • Artificial Life
  • DNA computing
  • Fractals


Description
Natural Computing is the field of research inspired by nature, that allows the development of new algorithms to solve complex problems, leads to the synthesis of natural models, and may result in the design of new computing systems. This book exactly aims to educate you with practical examples on topics of importance associated with research field of Natural computing. The initial few chapters will quickly walk you through Neural Networks while describing deep learning architectures such as CNN, RNN and AutoEncoders using Keras. As you progress further, you'll gain understanding to develop genetic algorithm to solve traveling saleman problem, implement swarm intelligence techniques using the SwarmPackagePy and Cellular Automata techniques such as Game of Life, Langton's ant, etc. The latter half of the book will introduce you to the world of Fractals such as such as the Cantor Set and the Mandelbrot Set, develop a quantum program with the QiSkit tool that runs on a real quantum computing platform, namely the IBM Q Machine and a Python simulation of the Adleman experiment that showed for the first time the possibility of performing computations at the molecular level. What You Will Learn

  • Mastering Artificial Neural Networks
  • Developing Artificial Intelligence systems
  • Resolving complex problems with Genetic Programming and Swarm intelligence algorithms
  • Programming Quantum Computers
  • Exploring the mathematical world of fractals
  • Simulating complex systems by Cellular Automata
  • Understanding the basics of DNA computation

Who This Book Is For
This book is for all science enthusiasts, in particular who want to understand what are the links between computer sciences and natural systems. Interested readers should have good skills in math and python programming along with some basic knowledge of physics and biology.. Although, some knowledge of the topics covered in the book will be helpful, it is not essential to have worked with the tools covered in the book. Table of Contents

  • Neural Networks
  • Deep Learning
  • Genetic Programming
  • Swarm Intelligence
  • Cellular Automata
  • Fractals
  • Quantum Computing
  • DNA Computing

  • About the Author
    Giancarlo Zaccone has over ten years of experience in managing research projects in scientific and industrial areas.
    He is a Software and Systems Engineer Consultant at European Space Agency (ESTEC).
    Giancarlo holds a master's degree in Physics and an advanced master's degree in Scientific Computing at La Sapienza of Rome. His LinkedIn Profile: https://www.linkedin.com/in/giancarlozaccone/

Foire aux questions

Comment puis-je résilier mon abonnement ?
Il vous suffit de vous rendre dans la section compte dans paramĂštres et de cliquer sur « RĂ©silier l’abonnement ». C’est aussi simple que cela ! Une fois que vous aurez rĂ©siliĂ© votre abonnement, il restera actif pour le reste de la pĂ©riode pour laquelle vous avez payĂ©. DĂ©couvrez-en plus ici.
Puis-je / comment puis-je télécharger des livres ?
Pour le moment, tous nos livres en format ePub adaptĂ©s aux mobiles peuvent ĂȘtre tĂ©lĂ©chargĂ©s via l’application. La plupart de nos PDF sont Ă©galement disponibles en tĂ©lĂ©chargement et les autres seront tĂ©lĂ©chargeables trĂšs prochainement. DĂ©couvrez-en plus ici.
Quelle est la différence entre les formules tarifaires ?
Les deux abonnements vous donnent un accĂšs complet Ă  la bibliothĂšque et Ă  toutes les fonctionnalitĂ©s de Perlego. Les seules diffĂ©rences sont les tarifs ainsi que la pĂ©riode d’abonnement : avec l’abonnement annuel, vous Ă©conomiserez environ 30 % par rapport Ă  12 mois d’abonnement mensuel.
Qu’est-ce que Perlego ?
Nous sommes un service d’abonnement Ă  des ouvrages universitaires en ligne, oĂč vous pouvez accĂ©der Ă  toute une bibliothĂšque pour un prix infĂ©rieur Ă  celui d’un seul livre par mois. Avec plus d’un million de livres sur plus de 1 000 sujets, nous avons ce qu’il vous faut ! DĂ©couvrez-en plus ici.
Prenez-vous en charge la synthÚse vocale ?
Recherchez le symbole Écouter sur votre prochain livre pour voir si vous pouvez l’écouter. L’outil Écouter lit le texte Ă  haute voix pour vous, en surlignant le passage qui est en cours de lecture. Vous pouvez le mettre sur pause, l’accĂ©lĂ©rer ou le ralentir. DĂ©couvrez-en plus ici.
Est-ce que Natural Computing with Python est un PDF/ePUB en ligne ?
Oui, vous pouvez accĂ©der Ă  Natural Computing with Python par Giancarlo Zaccone en format PDF et/ou ePUB ainsi qu’à d’autres livres populaires dans Informatik et Neuronale Netzwerke. Nous disposons de plus d’un million d’ouvrages Ă  dĂ©couvrir dans notre catalogue.

Informations

Année
2019
ISBN
9789388511612

CHEPTER 1

Neural
Networks

Introduction

The history of the Neural Networks has its origins in the years the idea of neural networks learning. Between 1957 and 1958, however, Rosenblatt proposed the first true modern neural network scheme, that is, the perceptron able to recognize shapes and associate configurations.
The perceptron (described in the Perceptron section) exceeds the limitations of the binary structure proposed by McCulloch and Pitts, because it is equipped with variable synaptic weights, which are then able to learn.
Until the 1970s–80s, which is until the advent of modern computers, neural networks fell into the general disinterest of the scientific community, which recalls contact with the work of Werbos in 1974, which describes the mathematical bases for the training of multi-layer neural networks.
The most modern neural network structure is reached in 1986, when Rumelhart, Hilton, and Williams described the training algorithm for backpropagation of the error (introduced in MLP Python implementation section), thanks to which it is possible to modify the weights of the neuronal connections in a systematic way, as long as the response of the network does not become the same—or as close as possible—to the desired one.
A neural network actually presents itself as an “adaptive” system capable of modifying its structure (nodes and interconnections) based both on external data and internal information that connects and passes through the neural network during the learning phase and reasoning.
For this purpose, at the end of the chapter, the TensorFlow software library for machine learning is introduced, which provides tested and optimized modules useful in the implementation of algorithms for diïŹ€erent types of tasks from language processing to image recognition.

Structure

  • Perceptron
    • Developing logic gates by perceptron
  • Activation functions
    • Linear and non-linear models
    • Sigmoid neuron
  • How neural networks learn
  • Neural network architecture
  • Supervised learning
    • Gradient descent
  • MLP Python implementation
  • TensorFlow
    • Logistic regression
  • Conclusion
  • Sitography
NOTE: The examples presented in this book were made for a Python 3.x version. However, as a matter of compatibility with all the examples that will be described in the following chapters, it is recommended to use Python 3.5.2 version, downloadable at the following link: https://www.python.org/downloads/release/python-352/

Biological neuron

Biological neurons are electrically active cells, and the human brain contains about 1011 neurons. They exist in diïŹ€erent forms, although most of them have the shape shown in Figure 1.1. The main cell body is the soma; the dendrites represent the inputs of the neuron and the axon represents its output. Communication between neurons occurs at the junctions, called synapses.
Each neuron is typically connected to a thousand other neurons and, consequently, the number of synapses in the brain exceeds 1014. Each neuron can be found mainly in 2 states: active or rest. When the neuron is activated, it produces an action potential (electrical impulse) that is transported along the axon. Once the signal reaches the synapse, it causes the release of chemicals (neurotransmitters) that cross the junction and enter the body of other neurons.
Depending on the type of synapses, which can be exciters or inhibitors, these substances increase or decrease respectively the probability that the next neuron becomes active. At each synapse, a weight is associated which determines the type and extent of the exciter or inhibitor eïŹ€ect. Following is the diagram of a biological neuron:
Figure 1.1 : Biological neuron representation
So, in a nutshell, each neuron makes a weighted sum of the inputs coming from the other neurons and, if this sum exceeds a certain threshold, the neuron is activated.
Each neuron, operating at a time of millisecond, represents a relatively slow processing system; however, the entire network has a very large number of neurons and synapses that can operate in parallel and simultaneously, making the actual proce...

Table des matiĂšres

  1. Cover
  2. Natural Computing with Python
  3. Copyright
  4. About the Author
  5. Preface
  6. acknowledgement
  7. Errata
  8. Table of Contents
  9. 1. Neural Networks
  10. 2. Deep Learning
  11. 3. Genetic Algorithms and Programming
  12. 4. Swarm Intelligence
  13. 5. Cellular Automata
  14. 6. Fractals
  15. 7. Quantum Computing
  16. 8. DNA Computing
  17. Index
Normes de citation pour Natural Computing with Python

APA 6 Citation

Zaccone, G. (2020). Natural Computing with Python ([edition unavailable]). BPB Publications. Retrieved from https://www.perlego.com/book/1681441/natural-computing-with-python-learn-to-implement-genetic-and-evolutionary-algorithms-to-solve-problems-in-a-pythonic-way-pdf (Original work published 2020)

Chicago Citation

Zaccone, Giancarlo. (2020) 2020. Natural Computing with Python. [Edition unavailable]. BPB Publications. https://www.perlego.com/book/1681441/natural-computing-with-python-learn-to-implement-genetic-and-evolutionary-algorithms-to-solve-problems-in-a-pythonic-way-pdf.

Harvard Citation

Zaccone, G. (2020) Natural Computing with Python. [edition unavailable]. BPB Publications. Available at: https://www.perlego.com/book/1681441/natural-computing-with-python-learn-to-implement-genetic-and-evolutionary-algorithms-to-solve-problems-in-a-pythonic-way-pdf (Accessed: 14 October 2022).

MLA 7 Citation

Zaccone, Giancarlo. Natural Computing with Python. [edition unavailable]. BPB Publications, 2020. Web. 14 Oct. 2022.