Learning TensorFlowRoughly inspired by the human brain, deep neural networks trained with large amounts of data can solve complex tasks with unprecedented accuracy. This practical book provides an end-to-end guide to TensorFlow, the leading open source software library that helps you build and train neural networks for computer vision, natural language processing (NLP), speech recognition, and general predictive analytics.
Authors Tom Hope, Yehezkel Resheff, and Itay Lieder provide a hands-on approach to TensorFlow fundamentals for a broad technical audience - from data scientists and engineers to students and researchers. You'll begin by working through some basic examples in TensorFlow before diving deeper into topics such as neural network architectures, TensorBoard visualization, TensorFlow abstraction libraries, and multithreaded input pipelines. Once you finish this book, you'll know how to build and deploy production-ready deep learning systems in TensorFlow.
Get up and running with TensorFl ...
Modern Java RecipesThe introduction of functional programming concepts in Java SE 8 was a drastic change for this venerable object-oriented language. Lambda expressions, method references, and streams fundamentally changed the idioms of the language, and many developers have been trying to catch up ever since. This cookbook will help. With more than 70 detailed recipes, author Ken Kousen shows you how to use the newest features of Java to solve a wide range of problems.
For developers comfortable with previous Java versions, this guide covers nearly all of Java SE 8, and includes a chapter focused on changes coming in Java 9. Need to understand how functional idioms will change the way you write code? This cookbook - chock full of use cases - is for you.
Recipes cover: The basics of lambda expressions and method references; Interfaces in the java.util.function package; Stream operations for transforming and filtering data; Comparators and Collectors for sorting and converting streaming data; Combining ...
Data Science with JavaData Science is booming thanks to R and Python, but Java brings the robustness, convenience, and ability to scale critical to today's data science applications. With this practical book, Java software engineers looking to add data science skills will take a logical journey through the data science pipeline. Author Michael Brzustowicz explains the basic math theory behind each step of the data science process, as well as how to apply these concepts with Java.
You'll learn the critical roles that data IO, linear algebra, statistics, data operations, learning and prediction, and Hadoop MapReduce play in the process. Throughout this book, you'll find code examples you can use in your applications. Examine methods for obtaining, cleaning, and arranging data into its purest form;Understand the matrix structure that your data should take;Learn basic concepts for testing the origin and validity of data;Transform your data into stable and usable numerical val ...
Reinforcement LearningMaster reinforcement learning, a popular area of machine learning, starting with the basics: discover how agents and the environment evolve and then gain a clear picture of how they are inter-related. You'll then work with theories related to reinforcement learning and see the concepts that build up the reinforcement learning process.
Reinforcement Learning discusses algorithm implementations important for reinforcement learning, including Markov's Decision process and Semi Markov Decision process. The next section shows you how to get started with Open AI before looking at Open AI Gym. You'll then learn about Swarm Intelligence with Python in terms of reinforcement learning.
The last part of the book starts with the TensorFlow environment and gives an outline of how reinforcement learning can be applied to TensorFlow. There's also coverage of Keras, a framework that can be used with reinforcement learning. Finally, you'll delve into Google's Deep Mind and see scenarios where rein ...
Java Game Development with LibGDXLearn to design and create video games using the Java programming language and the LibGDX software library. Working through the examples in this book, you will create 12 game prototypes in a variety of popular genres, from collection-based and shoot-em-up arcade games to side-scrolling platformers and sword-fighting adventure games. With the flexibility provided by LibGDX, specialized genres such as card games, rhythm games, and visual novels are also covered in this book.
Major updates in this edition include chapters covering advanced topics such as alternative sources of user input, procedural content generation, and advanced graphics. Appendices containing examples for game design documentation and a complete JavaDoc style listing of the extension classes developed in the book have also been added.Create 12 complete video game projects;Master advanced Java programming concepts, including data structures, encapsulation, inheritance, and algorithms, in the context o ...
Learn Computer Science with SwiftMaster the basics of solving logic puzzles, and creating algorithms using Swift on Apple platforms. This book is based on the curriculum currently being used in common computer classes. You'll learn to automate algorithmic processes that scale using Swift in the context of iOS, macOS, tvOS, and watchOS.
Begin by understanding how to think computationally: to formulate a computational problem and recognize patterns and ways to validate it. Then jump ahead past the abstractions and conceptual work into using code snippets to build frameworks and write code using Xcode and Swift. Once you have frameworks in place, you'll learn to use algorithms and structure data. Finally, you'll see how to bring people into what you've built through a useable UI and how UI and code relate. ...
Spring RESTSpring REST is a practical guide for designing and developing RESTful APIs using the Spring Framework. This book walks you through the process of designing and building a REST application while taking a deep dive into design principles and best practices for versioning, security, documentation, error handling, paging, and sorting.
This book provides a brief introduction to REST, HTTP, and web infrastructure. You will learn about several Spring projects such as Spring Boot, Spring MVC, Spring Data JPA, and Spring Security and the role they play in simplifying REST application development. You will learn how to build clients that consume REST services. Finally, you will learn how to use the Spring MVC test framework to unit test and integration test your REST API.
After reading this book, you will come away with all the skills to build sophisticated REST applications using Spring technologies. ...
Programming RustRust is a new systems programming language that combines the performance and low-level control of C and C++ with memory safety and thread safety. Rust's modern, flexible types ensure your program is free of null pointer dereferences, double frees, dangling pointers, and similar bugs, all at compile time, without runtime overhead. In multi-threaded code, Rust catches data races at compile time, making concurrency much easier to use.
Written by two experienced systems programmers, this book explains how Rust manages to bridge the gap between performance and safety, and how you can take advantage of it.
Topics include:How Rust represents values in memory (with diagrams);Complete explanations of ownership, moves, borrows, and lifetimes;Cargo, rustdoc, unit tests, and how to publish your code on crates.io, Rust's public package repository;High-level features like generic code, closures, collections, and iterators that make Rust productive and flexibl ...
Mastering Bitcoin, 2nd EditionJoin the technological revolution that's taking the financial world by storm. Mastering Bitcoin is your guide through the seemingly complex world of bitcoin, providing the knowledge you need to participate in the internet of money. Whether you're building the next killer app, investing in a startup, or simply curious about the technology, this revised and expanded second edition provides essential detail to get you started.
Bitcoin, the first successful decentralized digital currency, is still in its early stages and yet it's already spawned a multi-billion-dollar global economy open to anyone with the knowledge and passion to participate. Mastering Bitcoin provides the knowledge. You simply supply the passion.
The second edition includes:A broad introduction of bitcoin and its underlying blockchain—ideal for non-technical users, investors, and business executives;An explanation of the technical foundations of bitcoin and cryptographic currencies for developers ...
The Cucumber Book, 2nd EditionExpress your customers wild ideas as a set of clear, executable specifications that everyone on the team can read. Feed those examples into Cucumber and let it guide your development. Build just the right code to keep your customers happy. You can use Cucumber to test almost any system or any platform.
Get started by using the core features of Cucumber and working with Cucumber's Gherkin DSL to describe - in plain language - the behavior your customers want from the system. Then write Ruby code that interprets those plain-language specifications and checks them against your application. Next, consolidate the knowledge you've gained with a worked example, where you'll learn more advanced Cucumber techniques, test asynchronous systems, and test systems that use a database. Recipes highlight some of the most difficult and commonly seen situations the authors have helped teams solve. With these patterns and techniques, test Ajax-heavy web applications with Capybara and Selenium, REST we ...