Author: Micha Gorelick
Publisher: O'Reilly Media
ISBN: 1492054992
Category : Computers
Languages : en
Pages : 469
Book Description
Your Python code may run correctly, but you need it to run faster. Updated for Python 3, this expanded edition shows you how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. By exploring the fundamental theory behind design choices, High Performance Python helps you gain a deeper understanding of Python’s implementation. How do you take advantage of multicore architectures or clusters? Or build a system that scales up and down without losing reliability? Experienced Python programmers will learn concrete solutions to many issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and more. Get a better grasp of NumPy, Cython, and profilers Learn how Python abstracts the underlying computer architecture Use profiling to find bottlenecks in CPU time and memory usage Write efficient programs by choosing appropriate data structures Speed up matrix and vector computations Use tools to compile Python down to machine code Manage multiple I/O and computational operations concurrently Convert multiprocessing code to run on local or remote clusters Deploy code faster using tools like Docker
High Performance Python
Author: Micha Gorelick
Publisher: O'Reilly Media
ISBN: 9781492055020
Category : Computers
Languages : en
Pages : 450
Book Description
Your Python code may run correctly, but you need it to run faster. By exploring the fundamental theory behind design choices, the updated edition of this practical guide, expanded and enhanced for Python 3, helps you gain a deeper understanding of Python's implementation. You'll learn how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. How can you take advantage of multicore architectures or clusters? Or build a system that can scale up and down without losing reliability? Experienced Python programmers and students alike will learn concrete solutions to these and other issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and other situations. Get a better grasp of NumPy, Cython, and profilers Learn how Python abstracts the underlying computer architecture Understand performant pandas Use profiling to find bottlenecks in CPU time and memory usage Write efficient programs by choosing appropriate data structures Speed up matrix, vector, and even tensor computations Use tools to compile Python down to machine code, on CPUs and GPUs Manage multiple I/O and computational operations concurrently Convert multiprocessing code to run on a local or remote cluster Deploy code faster using tools like Docker Solve large problems while using less RAM Get real-life stories and lessons from Python programmers
Publisher: O'Reilly Media
ISBN: 9781492055020
Category : Computers
Languages : en
Pages : 450
Book Description
Your Python code may run correctly, but you need it to run faster. By exploring the fundamental theory behind design choices, the updated edition of this practical guide, expanded and enhanced for Python 3, helps you gain a deeper understanding of Python's implementation. You'll learn how to locate performance bottlenecks and significantly speed up your code in high-data-volume programs. How can you take advantage of multicore architectures or clusters? Or build a system that can scale up and down without losing reliability? Experienced Python programmers and students alike will learn concrete solutions to these and other issues, along with war stories from companies that use high-performance Python for social media analytics, productionized machine learning, and other situations. Get a better grasp of NumPy, Cython, and profilers Learn how Python abstracts the underlying computer architecture Understand performant pandas Use profiling to find bottlenecks in CPU time and memory usage Write efficient programs by choosing appropriate data structures Speed up matrix, vector, and even tensor computations Use tools to compile Python down to machine code, on CPUs and GPUs Manage multiple I/O and computational operations concurrently Convert multiprocessing code to run on a local or remote cluster Deploy code faster using tools like Docker Solve large problems while using less RAM Get real-life stories and lessons from Python programmers
Python High Performance
Author: Gabriele Lanaro
Publisher: Packt Publishing Ltd
ISBN: 1787282430
Category : Computers
Languages : en
Pages : 264
Book Description
Learn how to use Python to create efficient applications About This Book Identify the bottlenecks in your applications and solve them using the best profiling techniques Write efficient numerical code in NumPy, Cython, and Pandas Adapt your programs to run on multiple processors and machines with parallel programming Who This Book Is For The book is aimed at Python developers who want to improve the performance of their application. Basic knowledge of Python is expected What You Will Learn Write efficient numerical code with the NumPy and Pandas libraries Use Cython and Numba to achieve native performance Find bottlenecks in your Python code using profilers Write asynchronous code using Asyncio and RxPy Use Tensorflow and Theano for automatic parallelism in Python Set up and run distributed algorithms on a cluster using Dask and PySpark In Detail Python is a versatile language that has found applications in many industries. The clean syntax, rich standard library, and vast selection of third-party libraries make Python a wildly popular language. Python High Performance is a practical guide that shows how to leverage the power of both native and third-party Python libraries to build robust applications. The book explains how to use various profilers to find performance bottlenecks and apply the correct algorithm to fix them. The reader will learn how to effectively use NumPy and Cython to speed up numerical code. The book explains concepts of concurrent programming and how to implement robust and responsive applications using Reactive programming. Readers will learn how to write code for parallel architectures using Tensorflow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark. By the end of the book, readers will have learned to achieve performance and scale from their Python applications. Style and approach A step-by-step practical guide filled with real-world use cases and examples
Publisher: Packt Publishing Ltd
ISBN: 1787282430
Category : Computers
Languages : en
Pages : 264
Book Description
Learn how to use Python to create efficient applications About This Book Identify the bottlenecks in your applications and solve them using the best profiling techniques Write efficient numerical code in NumPy, Cython, and Pandas Adapt your programs to run on multiple processors and machines with parallel programming Who This Book Is For The book is aimed at Python developers who want to improve the performance of their application. Basic knowledge of Python is expected What You Will Learn Write efficient numerical code with the NumPy and Pandas libraries Use Cython and Numba to achieve native performance Find bottlenecks in your Python code using profilers Write asynchronous code using Asyncio and RxPy Use Tensorflow and Theano for automatic parallelism in Python Set up and run distributed algorithms on a cluster using Dask and PySpark In Detail Python is a versatile language that has found applications in many industries. The clean syntax, rich standard library, and vast selection of third-party libraries make Python a wildly popular language. Python High Performance is a practical guide that shows how to leverage the power of both native and third-party Python libraries to build robust applications. The book explains how to use various profilers to find performance bottlenecks and apply the correct algorithm to fix them. The reader will learn how to effectively use NumPy and Cython to speed up numerical code. The book explains concepts of concurrent programming and how to implement robust and responsive applications using Reactive programming. Readers will learn how to write code for parallel architectures using Tensorflow and Theano, and use a cluster of computers for large-scale computations using technologies such as Dask and PySpark. By the end of the book, readers will have learned to achieve performance and scale from their Python applications. Style and approach A step-by-step practical guide filled with real-world use cases and examples
High Performance Python
Author: Micha Gorelick
Publisher: "O'Reilly Media, Inc."
ISBN: 1449361773
Category : Computers
Languages : en
Pages : 370
Book Description
"If you're an experienced Python programmer, High Performance Python will guide you through the various routes of code optimization. You'll learn how to use smarter algorithms and leverage peripheral technologies, such as numpy, cython, cpython, and various multi-threaded and multi-node strategies. There's a lack of good learning and reference material available if you want to learn Python for highly computational tasks. Because of it, fields from physics to biology and systems infrastructure to data science are hitting barriers. They need the fast prototyping nature of Python, but too few people know how to wield it"--Publisher's description
Publisher: "O'Reilly Media, Inc."
ISBN: 1449361773
Category : Computers
Languages : en
Pages : 370
Book Description
"If you're an experienced Python programmer, High Performance Python will guide you through the various routes of code optimization. You'll learn how to use smarter algorithms and leverage peripheral technologies, such as numpy, cython, cpython, and various multi-threaded and multi-node strategies. There's a lack of good learning and reference material available if you want to learn Python for highly computational tasks. Because of it, fields from physics to biology and systems infrastructure to data science are hitting barriers. They need the fast prototyping nature of Python, but too few people know how to wield it"--Publisher's description
Mastering Python High Performance
Author: Fernando Doglio
Publisher: Packt Publishing Ltd
ISBN: 1783989319
Category : Computers
Languages : en
Pages : 260
Book Description
Measure, optimize, and improve the performance of your Python code with this easy-to-follow guide About This Book Master the do's and don'ts of Python performance programming Learn how to use exiting new tools that will help you improve your scripts A step-by-step, conceptual guide to teach you how to optimize and fine-tune your critical pieces of code Who This Book Is For If you're a Python developer looking to improve the speed of your scripts or simply wanting to take your skills to the next level, then this book is perfect for you. What You Will Learn Master code optimization step-by-step and learn how to use different tools Understand what a profiler is and how to read its output Interpret visual output from profiling tools and improve the performance of your script Use Cython to create fast applications using Python and C Take advantage of PyPy to improve performance of Python code Optimize number-crunching code with NumPy, Numba, Parakeet, and Pandas In Detail Simply knowing how to code is not enough; on mission-critical pieces of code, every bit of memory and every CPU cycle counts, and knowing how to squish every bit of processing power out of your code is a crucial and sought-after skill. Nowadays, Python is used for many scientific projects, and sometimes the calculations done in those projects require some serious fine-tuning. Profilers are tools designed to help you measure the performance of your code and help you during the optimization process, so knowing how to use them and read their output is very handy. This book starts from the basics and progressively moves on to more advanced topics. You'll learn everything from profiling all the way up to writing a real-life application and applying a full set of tools designed to improve it in different ways. In the middle, you'll stop to learn about the major profilers used in Python and about some graphic tools to help you make sense of their output. You'll then move from generic optimization techniques onto Python-specific ones, going over the main constructs of the language that will help you improve your speed without much of a change. Finally, the book covers some number-crunching-specific libraries and how to use them properly to get the best speed out of them. After reading this book, you will know how to take any Python code, profile it, find out where the bottlenecks are, and apply different techniques to remove them. Style and approach This easy-to-follow, practical guide will help you enhance your optimization skills by improving real-world code.
Publisher: Packt Publishing Ltd
ISBN: 1783989319
Category : Computers
Languages : en
Pages : 260
Book Description
Measure, optimize, and improve the performance of your Python code with this easy-to-follow guide About This Book Master the do's and don'ts of Python performance programming Learn how to use exiting new tools that will help you improve your scripts A step-by-step, conceptual guide to teach you how to optimize and fine-tune your critical pieces of code Who This Book Is For If you're a Python developer looking to improve the speed of your scripts or simply wanting to take your skills to the next level, then this book is perfect for you. What You Will Learn Master code optimization step-by-step and learn how to use different tools Understand what a profiler is and how to read its output Interpret visual output from profiling tools and improve the performance of your script Use Cython to create fast applications using Python and C Take advantage of PyPy to improve performance of Python code Optimize number-crunching code with NumPy, Numba, Parakeet, and Pandas In Detail Simply knowing how to code is not enough; on mission-critical pieces of code, every bit of memory and every CPU cycle counts, and knowing how to squish every bit of processing power out of your code is a crucial and sought-after skill. Nowadays, Python is used for many scientific projects, and sometimes the calculations done in those projects require some serious fine-tuning. Profilers are tools designed to help you measure the performance of your code and help you during the optimization process, so knowing how to use them and read their output is very handy. This book starts from the basics and progressively moves on to more advanced topics. You'll learn everything from profiling all the way up to writing a real-life application and applying a full set of tools designed to improve it in different ways. In the middle, you'll stop to learn about the major profilers used in Python and about some graphic tools to help you make sense of their output. You'll then move from generic optimization techniques onto Python-specific ones, going over the main constructs of the language that will help you improve your speed without much of a change. Finally, the book covers some number-crunching-specific libraries and how to use them properly to get the best speed out of them. After reading this book, you will know how to take any Python code, profile it, find out where the bottlenecks are, and apply different techniques to remove them. Style and approach This easy-to-follow, practical guide will help you enhance your optimization skills by improving real-world code.
Interpretable Machine Learning with Python
Author: Serg Masís
Publisher: Packt Publishing Ltd
ISBN: 1800206577
Category : Computers
Languages : en
Pages : 737
Book Description
A deep and detailed dive into the key aspects and challenges of machine learning interpretability, complete with the know-how on how to overcome and leverage them to build fairer, safer, and more reliable models Key Features Learn how to extract easy-to-understand insights from any machine learning model Become well-versed with interpretability techniques to build fairer, safer, and more reliable models Mitigate risks in AI systems before they have broader implications by learning how to debug black-box models Book DescriptionDo you want to gain a deeper understanding of your models and better mitigate poor prediction risks associated with machine learning interpretation? If so, then Interpretable Machine Learning with Python deserves a place on your bookshelf. We’ll be starting off with the fundamentals of interpretability, its relevance in business, and exploring its key aspects and challenges. As you progress through the chapters, you'll then focus on how white-box models work, compare them to black-box and glass-box models, and examine their trade-off. You’ll also get you up to speed with a vast array of interpretation methods, also known as Explainable AI (XAI) methods, and how to apply them to different use cases, be it for classification or regression, for tabular, time-series, image or text. In addition to the step-by-step code, this book will also help you interpret model outcomes using examples. You’ll get hands-on with tuning models and training data for interpretability by reducing complexity, mitigating bias, placing guardrails, and enhancing reliability. The methods you’ll explore here range from state-of-the-art feature selection and dataset debiasing methods to monotonic constraints and adversarial retraining. By the end of this book, you'll be able to understand ML models better and enhance them through interpretability tuning. What you will learn Recognize the importance of interpretability in business Study models that are intrinsically interpretable such as linear models, decision trees, and Naïve Bayes Become well-versed in interpreting models with model-agnostic methods Visualize how an image classifier works and what it learns Understand how to mitigate the influence of bias in datasets Discover how to make models more reliable with adversarial robustness Use monotonic constraints to make fairer and safer models Who this book is for This book is primarily written for data scientists, machine learning developers, and data stewards who find themselves under increasing pressures to explain the workings of AI systems, their impacts on decision making, and how they identify and manage bias. It’s also a useful resource for self-taught ML enthusiasts and beginners who want to go deeper into the subject matter, though a solid grasp on the Python programming language and ML fundamentals is needed to follow along.
Publisher: Packt Publishing Ltd
ISBN: 1800206577
Category : Computers
Languages : en
Pages : 737
Book Description
A deep and detailed dive into the key aspects and challenges of machine learning interpretability, complete with the know-how on how to overcome and leverage them to build fairer, safer, and more reliable models Key Features Learn how to extract easy-to-understand insights from any machine learning model Become well-versed with interpretability techniques to build fairer, safer, and more reliable models Mitigate risks in AI systems before they have broader implications by learning how to debug black-box models Book DescriptionDo you want to gain a deeper understanding of your models and better mitigate poor prediction risks associated with machine learning interpretation? If so, then Interpretable Machine Learning with Python deserves a place on your bookshelf. We’ll be starting off with the fundamentals of interpretability, its relevance in business, and exploring its key aspects and challenges. As you progress through the chapters, you'll then focus on how white-box models work, compare them to black-box and glass-box models, and examine their trade-off. You’ll also get you up to speed with a vast array of interpretation methods, also known as Explainable AI (XAI) methods, and how to apply them to different use cases, be it for classification or regression, for tabular, time-series, image or text. In addition to the step-by-step code, this book will also help you interpret model outcomes using examples. You’ll get hands-on with tuning models and training data for interpretability by reducing complexity, mitigating bias, placing guardrails, and enhancing reliability. The methods you’ll explore here range from state-of-the-art feature selection and dataset debiasing methods to monotonic constraints and adversarial retraining. By the end of this book, you'll be able to understand ML models better and enhance them through interpretability tuning. What you will learn Recognize the importance of interpretability in business Study models that are intrinsically interpretable such as linear models, decision trees, and Naïve Bayes Become well-versed in interpreting models with model-agnostic methods Visualize how an image classifier works and what it learns Understand how to mitigate the influence of bias in datasets Discover how to make models more reliable with adversarial robustness Use monotonic constraints to make fairer and safer models Who this book is for This book is primarily written for data scientists, machine learning developers, and data stewards who find themselves under increasing pressures to explain the workings of AI systems, their impacts on decision making, and how they identify and manage bias. It’s also a useful resource for self-taught ML enthusiasts and beginners who want to go deeper into the subject matter, though a solid grasp on the Python programming language and ML fundamentals is needed to follow along.
Practices of the Python Pro
Author: Dane Hillard
Publisher: Simon and Schuster
ISBN: 1638350132
Category : Computers
Languages : en
Pages : 363
Book Description
Summary Professional developers know the many benefits of writing application code that’s clean, well-organized, and easy to maintain. By learning and following established patterns and best practices, you can take your code and your career to a new level. With Practices of the Python Pro, you’ll learn to design professional-level, clean, easily maintainable software at scale using the incredibly popular programming language, Python. You’ll find easy-to-grok examples that use pseudocode and Python to introduce software development best practices, along with dozens of instantly useful techniques that will help you code like a pro. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Professional-quality code does more than just run without bugs. It’s clean, readable, and easy to maintain. To step up from a capable Python coder to a professional developer, you need to learn industry standards for coding style, application design, and development process. That’s where this book is indispensable. About the book Practices of the Python Pro teaches you to design and write professional-quality software that’s understandable, maintainable, and extensible. Dane Hillard is a Python pro who has helped many dozens of developers make this step, and he knows what it takes. With helpful examples and exercises, he teaches you when, why, and how to modularize your code, how to improve quality by reducing complexity, and much more. Embrace these core principles, and your code will become easier for you and others to read, maintain, and reuse. What's inside Organizing large Python projects Achieving the right levels of abstraction Writing clean, reusable code Inheritance and composition Considerations for testing and performance About the reader For readers familiar with the basics of Python, or another OO language. About the author Dane Hillard has spent the majority of his development career using Python to build web applications. Table of Contents: PART 1 WHY IT ALL MATTERS 1 ¦ The bigger picture PART 2 FOUNDATIONS OF DESIGN 2 ¦ Separation of concerns 3 ¦ Abstraction and encapsulation 4 ¦ Designing for high performance 5 ¦ Testing your software PART 3 NAILING DOWN LARGE SYSTEMS 6 ¦ Separation of concerns in practice 7 ¦ Extensibility and flexibility 8 ¦ The rules (and exceptions) of inheritance 9 ¦ Keeping things lightweight 10 ¦ Achieving loose coupling PART 4 WHAT’S NEXT? 11 ¦ Onward and upward
Publisher: Simon and Schuster
ISBN: 1638350132
Category : Computers
Languages : en
Pages : 363
Book Description
Summary Professional developers know the many benefits of writing application code that’s clean, well-organized, and easy to maintain. By learning and following established patterns and best practices, you can take your code and your career to a new level. With Practices of the Python Pro, you’ll learn to design professional-level, clean, easily maintainable software at scale using the incredibly popular programming language, Python. You’ll find easy-to-grok examples that use pseudocode and Python to introduce software development best practices, along with dozens of instantly useful techniques that will help you code like a pro. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the technology Professional-quality code does more than just run without bugs. It’s clean, readable, and easy to maintain. To step up from a capable Python coder to a professional developer, you need to learn industry standards for coding style, application design, and development process. That’s where this book is indispensable. About the book Practices of the Python Pro teaches you to design and write professional-quality software that’s understandable, maintainable, and extensible. Dane Hillard is a Python pro who has helped many dozens of developers make this step, and he knows what it takes. With helpful examples and exercises, he teaches you when, why, and how to modularize your code, how to improve quality by reducing complexity, and much more. Embrace these core principles, and your code will become easier for you and others to read, maintain, and reuse. What's inside Organizing large Python projects Achieving the right levels of abstraction Writing clean, reusable code Inheritance and composition Considerations for testing and performance About the reader For readers familiar with the basics of Python, or another OO language. About the author Dane Hillard has spent the majority of his development career using Python to build web applications. Table of Contents: PART 1 WHY IT ALL MATTERS 1 ¦ The bigger picture PART 2 FOUNDATIONS OF DESIGN 2 ¦ Separation of concerns 3 ¦ Abstraction and encapsulation 4 ¦ Designing for high performance 5 ¦ Testing your software PART 3 NAILING DOWN LARGE SYSTEMS 6 ¦ Separation of concerns in practice 7 ¦ Extensibility and flexibility 8 ¦ The rules (and exceptions) of inheritance 9 ¦ Keeping things lightweight 10 ¦ Achieving loose coupling PART 4 WHAT’S NEXT? 11 ¦ Onward and upward
Serious Python
Author: Julien Danjou
Publisher: No Starch Press
ISBN: 1593278799
Category : Computers
Languages : en
Pages : 242
Book Description
An indispensable collection of practical tips and real-world advice for tackling common Python problems and taking your code to the next level. Features interviews with high-profile Python developers who share their tips, tricks, best practices, and real-world advice gleaned from years of experience. Sharpen your Python skills as you dive deep into the Python programming language with Serious Python. You'll cover a range of advanced topics like multithreading and memorization, get advice from experts on things like designing APIs and dealing with databases, and learn Python internals to help you gain a deeper understanding of the language itself. Written for developers and experienced programmers, Serious Python brings together over 15 years of Python experience to teach you how to avoid common mistakes, write code more efficiently, and build better programs in less time. As you make your way through the book's extensive tutorials, you'll learn how to start a project and tackle topics like versioning, layouts, coding style, and automated checks. You'll learn how to package your software for distribution, optimize performance, use the right data structures, define functions efficiently, pick the right libraries, build future-proof programs, and optimize your programs down to the bytecode. You'll also learn how to: - Make and use effective decorators and methods, including abstract, static, and class methods - Employ Python for functional programming using generators, pure functions, and functional functions - Extend flake8 to work with the abstract syntax tree (AST) to introduce more sophisticated automatic checks into your programs - Apply dynamic performance analysis to identify bottlenecks in your code - Work with relational databases and effectively manage and stream data with PostgreSQL If you've been looking for a way to take your Python skills from good to great, Serious Python will help you get there. Learn from the experts and get seriously good at Python with Serious Python!
Publisher: No Starch Press
ISBN: 1593278799
Category : Computers
Languages : en
Pages : 242
Book Description
An indispensable collection of practical tips and real-world advice for tackling common Python problems and taking your code to the next level. Features interviews with high-profile Python developers who share their tips, tricks, best practices, and real-world advice gleaned from years of experience. Sharpen your Python skills as you dive deep into the Python programming language with Serious Python. You'll cover a range of advanced topics like multithreading and memorization, get advice from experts on things like designing APIs and dealing with databases, and learn Python internals to help you gain a deeper understanding of the language itself. Written for developers and experienced programmers, Serious Python brings together over 15 years of Python experience to teach you how to avoid common mistakes, write code more efficiently, and build better programs in less time. As you make your way through the book's extensive tutorials, you'll learn how to start a project and tackle topics like versioning, layouts, coding style, and automated checks. You'll learn how to package your software for distribution, optimize performance, use the right data structures, define functions efficiently, pick the right libraries, build future-proof programs, and optimize your programs down to the bytecode. You'll also learn how to: - Make and use effective decorators and methods, including abstract, static, and class methods - Employ Python for functional programming using generators, pure functions, and functional functions - Extend flake8 to work with the abstract syntax tree (AST) to introduce more sophisticated automatic checks into your programs - Apply dynamic performance analysis to identify bottlenecks in your code - Work with relational databases and effectively manage and stream data with PostgreSQL If you've been looking for a way to take your Python skills from good to great, Serious Python will help you get there. Learn from the experts and get seriously good at Python with Serious Python!
Python for Data Analysis
Author: Wes McKinney
Publisher: "O'Reilly Media, Inc."
ISBN: 1491957611
Category : Computers
Languages : en
Pages : 553
Book Description
Get complete instructions for manipulating, processing, cleaning, and crunching datasets in Python. Updated for Python 3.6, the second edition of this hands-on guide is packed with practical case studies that show you how to solve a broad set of data analysis problems effectively. You’ll learn the latest versions of pandas, NumPy, IPython, and Jupyter in the process. Written by Wes McKinney, the creator of the Python pandas project, this book is a practical, modern introduction to data science tools in Python. It’s ideal for analysts new to Python and for Python programmers new to data science and scientific computing. Data files and related material are available on GitHub. Use the IPython shell and Jupyter notebook for exploratory computing Learn basic and advanced features in NumPy (Numerical Python) Get started with data analysis tools in the pandas library Use flexible tools to load, clean, transform, merge, and reshape data Create informative visualizations with matplotlib Apply the pandas groupby facility to slice, dice, and summarize datasets Analyze and manipulate regular and irregular time series data Learn how to solve real-world data analysis problems with thorough, detailed examples
Publisher: "O'Reilly Media, Inc."
ISBN: 1491957611
Category : Computers
Languages : en
Pages : 553
Book Description
Get complete instructions for manipulating, processing, cleaning, and crunching datasets in Python. Updated for Python 3.6, the second edition of this hands-on guide is packed with practical case studies that show you how to solve a broad set of data analysis problems effectively. You’ll learn the latest versions of pandas, NumPy, IPython, and Jupyter in the process. Written by Wes McKinney, the creator of the Python pandas project, this book is a practical, modern introduction to data science tools in Python. It’s ideal for analysts new to Python and for Python programmers new to data science and scientific computing. Data files and related material are available on GitHub. Use the IPython shell and Jupyter notebook for exploratory computing Learn basic and advanced features in NumPy (Numerical Python) Get started with data analysis tools in the pandas library Use flexible tools to load, clean, transform, merge, and reshape data Create informative visualizations with matplotlib Apply the pandas groupby facility to slice, dice, and summarize datasets Analyze and manipulate regular and irregular time series data Learn how to solve real-world data analysis problems with thorough, detailed examples
Hands-On GPU Programming with Python and CUDA
Author: Dr. Brian Tuomanen
Publisher: Packt Publishing Ltd
ISBN: 1788995228
Category : Computers
Languages : en
Pages : 300
Book Description
Build real-world applications with Python 2.7, CUDA 9, and CUDA 10. We suggest the use of Python 2.7 over Python 3.x, since Python 2.7 has stable support across all the libraries we use in this book. Key FeaturesExpand your background in GPU programming—PyCUDA, scikit-cuda, and NsightEffectively use CUDA libraries such as cuBLAS, cuFFT, and cuSolverApply GPU programming to modern data science applicationsBook Description Hands-On GPU Programming with Python and CUDA hits the ground running: you’ll start by learning how to apply Amdahl’s Law, use a code profiler to identify bottlenecks in your Python code, and set up an appropriate GPU programming environment. You’ll then see how to “query” the GPU’s features and copy arrays of data to and from the GPU’s own memory. As you make your way through the book, you’ll launch code directly onto the GPU and write full blown GPU kernels and device functions in CUDA C. You’ll get to grips with profiling GPU code effectively and fully test and debug your code using Nsight IDE. Next, you’ll explore some of the more well-known NVIDIA libraries, such as cuFFT and cuBLAS. With a solid background in place, you will now apply your new-found knowledge to develop your very own GPU-based deep neural network from scratch. You’ll then explore advanced topics, such as warp shuffling, dynamic parallelism, and PTX assembly. In the final chapter, you’ll see some topics and applications related to GPU programming that you may wish to pursue, including AI, graphics, and blockchain. By the end of this book, you will be able to apply GPU programming to problems related to data science and high-performance computing. What you will learnLaunch GPU code directly from PythonWrite effective and efficient GPU kernels and device functionsUse libraries such as cuFFT, cuBLAS, and cuSolverDebug and profile your code with Nsight and Visual ProfilerApply GPU programming to datascience problemsBuild a GPU-based deep neuralnetwork from scratchExplore advanced GPU hardware features, such as warp shufflingWho this book is for Hands-On GPU Programming with Python and CUDA is for developers and data scientists who want to learn the basics of effective GPU programming to improve performance using Python code. You should have an understanding of first-year college or university-level engineering mathematics and physics, and have some experience with Python as well as in any C-based programming language such as C, C++, Go, or Java.
Publisher: Packt Publishing Ltd
ISBN: 1788995228
Category : Computers
Languages : en
Pages : 300
Book Description
Build real-world applications with Python 2.7, CUDA 9, and CUDA 10. We suggest the use of Python 2.7 over Python 3.x, since Python 2.7 has stable support across all the libraries we use in this book. Key FeaturesExpand your background in GPU programming—PyCUDA, scikit-cuda, and NsightEffectively use CUDA libraries such as cuBLAS, cuFFT, and cuSolverApply GPU programming to modern data science applicationsBook Description Hands-On GPU Programming with Python and CUDA hits the ground running: you’ll start by learning how to apply Amdahl’s Law, use a code profiler to identify bottlenecks in your Python code, and set up an appropriate GPU programming environment. You’ll then see how to “query” the GPU’s features and copy arrays of data to and from the GPU’s own memory. As you make your way through the book, you’ll launch code directly onto the GPU and write full blown GPU kernels and device functions in CUDA C. You’ll get to grips with profiling GPU code effectively and fully test and debug your code using Nsight IDE. Next, you’ll explore some of the more well-known NVIDIA libraries, such as cuFFT and cuBLAS. With a solid background in place, you will now apply your new-found knowledge to develop your very own GPU-based deep neural network from scratch. You’ll then explore advanced topics, such as warp shuffling, dynamic parallelism, and PTX assembly. In the final chapter, you’ll see some topics and applications related to GPU programming that you may wish to pursue, including AI, graphics, and blockchain. By the end of this book, you will be able to apply GPU programming to problems related to data science and high-performance computing. What you will learnLaunch GPU code directly from PythonWrite effective and efficient GPU kernels and device functionsUse libraries such as cuFFT, cuBLAS, and cuSolverDebug and profile your code with Nsight and Visual ProfilerApply GPU programming to datascience problemsBuild a GPU-based deep neuralnetwork from scratchExplore advanced GPU hardware features, such as warp shufflingWho this book is for Hands-On GPU Programming with Python and CUDA is for developers and data scientists who want to learn the basics of effective GPU programming to improve performance using Python code. You should have an understanding of first-year college or university-level engineering mathematics and physics, and have some experience with Python as well as in any C-based programming language such as C, C++, Go, or Java.