Racket Programming the Fun Way
At last, a lively guided tour through all the features, functions, and applications of the Racket programming language. You'll learn a variety of coding paradigms, including iterative, object oriented, and logic programming; create interactive graphics, draw diagrams, and solve puzzles as you explore Racket through fun computer science topics - from statistical analysis to search algorithms, the Turing machine, and more.
Early chapters cover basic Racket concepts like data types, syntax, variables, strings, and formatted output. You'll learn how to perform math in Racket's rich numerical environment, and use programming constructs in different problem domains (like coding solutions to the Tower of Hanoi puzzle). Later, you'll play with plotting, grapple with graphics, and visualize data. Then, you'll escape the confines of the command line to produce animations, interactive games, and a card trick program that'll dazzle your friends.
You'll learn how tot:
- Use DrRacket, an inte ...
Machine Learning for Kids
Artificial intelligence (AI) is the ability of computers to simulate human thinking. Machine learning (ML) is one of the building blocks of AI. It's based on the idea that computers can be taught to do things on their own from the data and feedback you give them.
Machine Learning for Kids consists of this book and a kid-friendly companion website paired with the educational coding platform, Scratch. Together, they provide an easy-to-use guided programming environment for adding ML capabilities to your own AI projects!
As you work through each chapter you'll discover how ML systems can be taught to recognize text, images, numbers, and sounds, and different ways of training ML models to improve their accuracy. You'll turn your models into fun computer games and apps (and see what happens when an AI system gets confused by bad data) while building:
- A Rock, Paper, Scissors game that knows your hand shapes;
- A smart question-answering chatbot;
- A computer character that reacts ...
Patterns in the Machine
Discover how to apply software engineering patterns to develop more robust firmware faster than traditional embedded development approaches. In the authors' experience, traditional embedded software projects tend towards monolithic applications that are optimized for their target hardware platforms. This leads to software that is fragile in terms of extensibility and difficult to test without fully integrated software and hardware. Patterns in the Machine focuses on creating loosely coupled implementations that embrace both change and testability.
This book illustrates how implementing continuous integration, automated unit testing, platform-independent code, and other best practices that are not typically implemented in the embedded systems world is not just feasible but also practical for today's embedded projects.
After reading this book, you will have a better idea of how to structure your embedded software projects. You will recognize that while writing unit tests, creating ...
Beginning Mathematica and Wolfram for Data Science
Enhance your data science programming and analysis with the Wolfram programming language and Mathematica, an applied mathematical tools suite. The book will introduce you to the Wolfram programming language and its syntax, as well as the structure of Mathematica and its advantages and disadvantages.
You'll see how to use the Wolfram language for data science from a theoretical and practical perspective. Learning this language makes your data science code better because it is very intuitive and comes with pre-existing functions that can provide a welcoming experience for those who use other programming languages.
You'll cover how to use Mathematica where data management and mathematical computations are needed. Along the way you'll appreciate how Mathematica provides a complete integrated platform: it has a mixed syntax as a result of its symbolic and numerical calculations allowing it to carry out various processes without superfluous lines of code. You'll learn to use its noteb ...
How Computers Really Work
How Computers Really Work is a hands-on guide to the computing ecosystem: everything from circuits to memory and clock signals, machine code, programming languages, operating systems, and the internet.
But you won't just read about these concepts, you'll test your knowledge with exercises, and practice what you learn with 41 optional hands-on projects. Build digital circuits, craft a guessing game, convert decimal numbers to binary, examine virtual memory usage, run your own web server, and more.
Explore concepts like how to:
- Think like a software engineer as you use data to describe a real world concept;
- Use Ohm's and Kirchhoff's laws to analyze an electrical circuit;
- Think like a computer as you practice binary addition and execute a program in your mind, step-by-step.
The book's projects will have you translate your learning into action, as you:
- Learn how to use a multimeter to measure resistance, current, and voltage;
- Build a half adder to see how logical op ...
Machine Learning for Algorithmic Trading, 2nd Edition
The explosive growth of digital data has boosted the demand for expertise in trading strategies that use machine learning (ML). This thoroughly revised and expanded 2nd edition enables you to build and evaluate sophisticated supervised, unsupervised, and reinforcement learning models.
This edition introduces end-to-end machine learning for the trading workflow, from the idea and feature engineering to model optimization, strategy design, and backtesting. It illustrates this workflow using examples that range from linear models and tree-based ensembles to deep-learning techniques from the cutting edge of the research frontier.
This revised version shows how to work with market, fundamental, and alternative data, such as tick data, minute and daily bars, SEC filings, earnings call transcripts, financial news, or satellite images to generate tradeable signals. It illustrates how to engineer financial features or alpha factors that enable a machine learning model to predict returns f ...
Python Machine Learning By Example, 3rd Edition
Python Machine Learning By Example, 3rd Edition serves as a comprehensive gateway into the world of machine learning (ML).
With six new chapters, on topics including movie recommendation engine development with Naïve Bayes, recognizing faces with support vector machine, predicting stock prices with artificial neural networks, categorizing images of clothing with convolutional neural networks, predicting with sequences using recurring neural networks, and leveraging reinforcement learning for making decisions, the book has been considerably updated for the latest enterprise requirements.
At the same time, this book provides actionable insights on the key fundamentals of ML with Python programming. Hayden applies his expertise to demonstrate implementations of algorithms in Python, both from scratch and with libraries.
Each chapter walks through an industry-adopted application. With the help of realistic examples, you will gain an understanding of the mechanics of ML techniques ...
Machine Learning Design Patterns
The design patterns in this book capture best practices and solutions to recurring problems in machine learning. The authors, three Google engineers, catalog proven methods to help data scientists tackle common problems throughout the ML process. These design patterns codify the experience of hundreds of experts into straightforward, approachable advice.
In this book, you will find detailed explanations of 30 patterns for data and problem representation, operationalization, repeatability, reproducibility, flexibility, explainability, and fairness. Each pattern includes a description of the problem, a variety of potential solutions, and recommendations for choosing the best technique for your situation.
You'll learn how to: Identify and mitigate common challenges when training, evaluating, and deploying ML models; Represent data for different ML model types, including embeddings, feature crosses, and more; Choose the right model type for specific problems; Build a robust training ...
Write Great Code: Volume 1, 2nd Edition
This, the first volume in Randall Hyde's Write Great Code series, dives into machine organization without the extra overhead of learning assembly language programming. Written for high-level language programmers, Understanding the Machine fills in the low-level details of machine organization that are often left out of computer science and engineering courses.
Learn: How the machine represents numbers, strings, and high-level data structures, so you'll know the inherent cost of using them; How to organize your data, so the machine can access it efficiently; How the CPU operates, so you can write code that works the way the machine does; How I/O devices operate, so you can maximize your application's performance when accessing those devices; How to best use the memory hierarchy to produce the fastest possible programs.
Great code is efficient code. But before you can write truly efficient code, you must understand how computer systems execute programs and how abstractions in prog ...
AI as a Service
Companies everywhere are moving everyday business processes over to the cloud, and AI is increasingly being given the reins in these tasks. As this massive digital transformation continues, the combination of serverless computing and AI promises to become the de facto standard for business-to-consumer platform development - and developers who can design, develop, implement, and maintain these systems will be in high demand! AI as a Service is a practical handbook to building and implementing serverless AI applications, without bogging you down with a lot of theory. Instead, you'll find easy-to-digest instruction and two complete hands-on serverless AI builds in this must-have guide!
Cloud-based AI services can automate a variety of labor intensive business tasks in areas such as customer service, data analysis, and financial reporting. The secret is taking advantage of pre-built tools like Amazon Rekognition for image analysis or AWS Comprehend for natural language processing. That ...
Optimizing software in C++
This is an optimization manual for advanced C++ programmers. This book are not for beginners.
- The choice of platform and operating system.
- Choice of compiler and framework.
- Finding performance bottlenecks.
- The efficiency of different C++ constructs.
- Multi-core systems.
- Parallelization with vector operations.
- CPU dispatching. Efficient container class templates. ...