计算机科学
Learning Spark, 2nd Edition
Douban
Tathagata Das / Jules Damji … publishing house: O'Reilly Media 2020 - 7
Data is getting bigger, arriving faster, and coming in varied formats—and it all needs to be processed at scale for analytics or machine learning. How can you process such varied data workloads efficiently? Enter Apache Spark. Updated to emphasize new features in Spark 2.x., this second edition shows data engineers and scientists why structure and unification in Spark matters. Specifically, this book explains how to perform simple and complex data analytics and employ machine-learning algorithms. Through discourse, code snippets, and notebooks, you’ll be able to: Learn Python, SQL, Scala, or Java high-level APIs: DataFrames and Datasets Peek under the hood of the Spark SQL engine to understand Spark transformations and performance Inspect, tune, and debug your Spark operations with Spark configurations and Spark UI Connect to data sources: JSON, Parquet, CSV, Avro, ORC, Hive, S3, or Kafka Perform analytics on batch and streaming data using Structured Streaming Build reliable data pipelines with open source Delta Lake and Spark Develop machine learning pipelines with MLlib and productionize models using MLflow Use open source Pandas framework Koalas and Spark for data transformation and feature engineering
Artificial Intelligence (4/e)
Douban Goodreads Skybridge
Stuart Russell / Peter Norvig publishing house: Pearson 2020 - 5 other title: Artificial Intelligence: A Modern Approach
The most comprehensive, up-to-date introduction to the theory and practice of artificial intelligence The long-anticipated revision of Artificial Intelligence: A Modern Approach explores the full breadth and depth of the field of artificial intelligence (AI). The 4th Edition brings readers up to date on the latest technologies, presents concepts in a more unified manner, and offers new or expanded coverage of machine learning, deep learning, transfer learning, multiagent systems, robotics, natural language processing, causality, probabilistic programming, privacy, fairness, and safe AI.
Deep Learning with PyTorch
Douban Goodreads
Eli Stevens / Luca Antiga publishing house: Manning Publications 2020 - 6
Deep Learning with PyTorch teaches you how to implement deep learning algorithms with Python and PyTorch. This book takes you into a fascinating case study: building an algorithm capable of detecting malignant lung tumors using CT scans. As the authors guide you through this real example, you'll discover just how effective and fun PyTorch can be. After a quick introduction to the deep learning landscape, you'll explore the use of pre-trained networks and start sharpening your skills on working with tensors. You'll find out how to represent the most common types of data with tensors and how to build and train neural networks from scratch on practical examples, focusing on images and sequences. After covering the basics, the book will take you on a journey through larger projects. The centerpiece of the book is a neural network designed for cancer detection. You'll discover ways for training networks with limited inputs and start processing data to get some results. You'll sift through the unreliable initial results and focus on how to diagnose and fix the problems in your neural network. Finally, you'll look at ways to improve your results by training with augmented data, make improvements to the model architecture, and perform other fine tuning. what's inside Using the PyTorch tensor API Understanding automatic differentiation in PyTorch Training deep neural networks Monitoring training and visualizing results Implementing modules and loss functions Loading data in Python for PyTorch Interoperability with NumPy Deploying a PyTorch model for inference
Reading July 7, 2020
PyTorch
@PyTorch
·
6h
The full version of the Deep Learning with PyTorch book from Luca Antiga, Eli Stevens, and Thomas Viehmann is now available! New chapters include in-depth real-world examples and production deployment. Grab a free digital copy on:
AI 机器学习 计算机科学 2020
Real World Cryptography
Douban
David Wong publishing house: Manning Publications 2020 - 3
Real World Cryptography helps you understand the cryptographic techniques at work in common tools, frameworks, and protocols so you can make excellent security choices for your systems and applications. There’s no unnecessary theory or jargon—just the most up-to-date techniques you’ll need in your day-to-day work as a developer or systems administrator. Cryptography expert David Wong takes you hands-on with cryptography building blocks such as hash functions and key exchanges, then shows you how to use them as part of your security protocols and applications. Alongside modern methods, the book also anticipates the future of cryptography, diving into emerging and cutting-edge advances such as cryptocurrencies, password-authenticated key exchange, and post-quantum cryptography. Throughout, all techniques are fully illustrated with diagrams and real-world use cases so you can easily see how to put them into practice. what's inside Best practices for using cryptography Diagrams and explanations of cryptographic algorithms Identifying and fixing cryptography bad practices in applications Picking the right cryptographic tool to solve problems
To read July 6, 2020
Why I’m Writing A Book On Cryptography. Hey! I'm David, a security engineer at the Blockchain team of Facebook
2021 计算机科学 软件工程
Thinking Functionally with Haskell
Douban
Richard Bird publishing house: 劍橋大學出版社 2014
Richard Bird is famed for the clarity and rigour of his writing. His new textbook, which introduces functional programming to students, emphasises fundamental techniques for reasoning mathematically about functional programs. By studying the underlying equational laws, the book enables students to apply calculational reasoning to their programs, both to understand their properties and to make them more efficient. The book has been designed to fit a first- or second-year undergraduate course and is a thorough overhaul and replacement of his earlier textbooks. It features case studies in Sudoku and pretty-printing, and over 100 carefully selected exercises with solutions. This engaging text will be welcomed by students and teachers alike.
Reading
July 1, 2020
1. Why functional programming matters
• programs are values, not commands
• supports good old-fashioned equational reasoning
• . . . with program texts, without needing a distinct language
• calculate efficient implementations from clear specifications
• using Haskell
• a plea for simplicity : no GADTs, no Monads, no Traversables. . .
计算机科学 Haskell 软件工程 PL
Algorithm Design with Haskell
Douban
Richard Bird / Jeremy Gibbons publishing house: 劍橋大學出版社 2020 - 7
This book is devoted to five main principles of algorithm design: divide and conquer, greedy algorithms, thinning, dynamic programming, and exhaustive search. These principles are presented using Haskell, a purely functional language, leading to simpler explanations and shorter programs than would be obtained with imperative languages. Carefully selected examples, both new and standard, reveal the commonalities and highlight the differences between algorithms. The algorithm developments use equational reasoning where applicable, clarifying the applicability conditions and correctness arguments. Every chapter concludes with exercises (nearly 300 in total), each with complete answers, allowing the reader to consolidate their understanding and apply the techniques to a range of problems. The book serves students (both undergraduate and postgraduate), researchers, teachers, and professionals who want to know more about what goes into a good algorithm and how such algorithms can be expressed in purely functional terms.
Concurrency Control and Recovery in Data Base Systems
Douban
Philip A. Bernstein / Vassos Hadzilacos … publishing house: Addison Wesley 1988 - 9
Mathematics of Big Data
Douban
Jeremy Kepner / Hayden Jananthan … publishing house: MIT Press 2018 - 7
The first book to present the common mathematical foundations of big data analysis across a range of applications and technologies. Today, the volume, velocity, and variety of data are increasing rapidly across a range of fields, including Internet search, healthcare, finance, social media, wireless devices, and cybersecurity. Indeed, these data are growing at a rate beyond our capacity to analyze them. The tools―including spreadsheets, databases, matrices, and graphs―developed to address this challenge all reflect the need to store and operate on data as whole sets rather than as individual elements. This book presents the common mathematical foundations of these data sets that apply across many applications and technologies. Associative arrays unify and simplify data, allowing readers to look past the differences among the various tools and leverage their mathematical similarities in order to solve the hardest big data challenges. The book first introduces the concept of the associative array in practical terms, presents the associative array manipulation system D4M (Dynamic Distributed Dimensional Data Model), and describes the application of associative arrays to graph analysis and machine learning. It provides a mathematically rigorous definition of associative arrays and describes the properties of associative arrays that arise from this definition. Finally, the book shows how concepts of linearity can be extended to encompass associative arrays. Mathematics of Big Data can be used as a textbook or reference by engineers, scientists, mathematicians, computer scientists, and software engineers who analyze big data.
Grokking Streaming Systems
Google Books Douban
Josh Fischer / 王柠 publishing house: Manning Publications 2021 - 3
Grokking Streaming Systems helps you unravel what streaming systems are, how they work, and whether they’re right for your business. Written to be tool-agnostic, you’ll be able to apply what you learn no matter which framework you choose. You’ll start with the key concepts and then work your way through increasingly complex examples, including tracking a real-time count of IoT sensor events and detecting fraudulent credit card transactions in real-time. You’ll even be able to easily experiment with your own streaming system, by downloading the custom-built and super-simplified streaming framework designed for this book. By the time you’re done, you’ll be able to easily assess the capabilities of streaming frameworks, and solve common challenges that arise when building streaming systems. what's inside Implement and troubleshoot streaming systems Design streaming systems for complex functionalities Assess parallelization requirements Spot networking bottlenecks and resolve back pressures Group data for high-performance systems Handle delayed events in real-time systems
Algorithms Illuminated (Part 3)
Douban
Tim Roughgarden publishing house: Soundlikeyourself Publishing, LLC 2019 - 5
Accessible, no-nonsense, and programming language-agnostic introduction to algorithms. Includes hints or solutions to all quizzes and problems, and a series of YouTube videos by the author accompanies the book. Part 3 covers greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes) and dynamic programming (knapsack, sequence alignment, shortest paths, optimal search trees).
Data Science with Python and Dask
Douban
Jesse Daniel publishing house: Manning Publications 2019 - 7
Summary Dask is a native parallel analytics tool designed to integrate seamlessly with the libraries you're already using, including Pandas, NumPy, and Scikit-Learn. With Dask you can crunch and work with huge datasets, using the tools you already have. And Data Science with Python and Dask is your guide to using Dask for your data projects without changing the way you work! Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. You'll find registration instructions inside the print book. About the Technology An efficient data pipeline means everything for the success of a data science project. Dask is a flexible library for parallel computing in Python that makes it easy to build intuitive workflows for ingesting and analyzing large, distributed datasets. Dask provides dynamic task scheduling and parallel collections that extend the functionality of NumPy, Pandas, and Scikit-learn, enabling users to scale their code from a single laptop to a cluster of hundreds of machines with ease. About the Book Data Science with Python and Dask teaches you to build scalable projects that can handle massive datasets. After meeting the Dask framework, you'll analyze data in the NYC Parking Ticket database and use DataFrames to streamline your process. Then, you'll create machine learning models using Dask-ML, build interactive visualizations, and build clusters using AWS and Docker. What's inside Working with large, structured and unstructured datasets Visualization with Seaborn and Datashader Implementing your own algorithms Building distributed apps with Dask Distributed Packaging and deploying Dask apps
Hands-on Scala Programming
Douban
Li Haoyi publishing house: Gumroad books 2020 - 6
Hands-on Scala Programming teaches you how to use the Scala programming language in a practical, project-based fashion. This book is designed to quickly teach an existing programmer everything they need to build all sorts of production applications, taking you from "hello world" to building interactive websites, parallel web crawlers, and distributed applications in Scala. In the process you will learn how to use the Scala language to solve challenging problems in an elegant and intuitive manner.
机器学习理论导引
Douban
周志华 / 王魏 … publishing house: 机械工业出版社 2020 - 6
机器学习领域著名学者周志华教授领衔的南京大学LAMDA团队四位教授合著 系统梳理机器学习理论中的七大重要概念或理论工具,并给出若干分析实例 机器学习理论内容浩瀚广博,旨在为机器学习理论研究的读者提供入门导引 本书旨在为有志于机器学习理论学习和研究的读者提供一个入门导引。在预备知识之后,全书各章分别聚焦于:可学性、(假设空间)复杂度、泛化界、稳定性、一致性、收敛率、遗憾界。 除介绍基本概念外,还给出若干分析实例,如显示如何将不同理论工具应用于支持向量机这种常见机器学习技术。
Graph Theory With Applications
Douban
John Adrian Bondy / U.S.R. Murty publishing house: Palgrave 1976 - 6
Now in a new, revised edition, this book provides readers with an introduction to graph theory. The authors enhance the basic material by including a wide variety of applications to both other branches of mathematics and to real-world problems. Each application has been carefully selected and is treated in some depth. Also emphasized throughout the book is the importance of efficient methods of solving problems.
Your Computer Is on Fire
Douban Skybridge
Thomas S. Mullaney / Benjamin Peters … publishing house: MIT Press 2020 - 11
This book sounds an alarm: after decades of being lulled into complacency by narratives of technological utopianism and neutrality, people are waking up to the large-scale consequences of Silicon Valley–led technophilia. This book trains a spotlight on the inequality, marginalization, and biases in our technological systems, showing how they are not just minor bugs to be patched, but part and parcel of ideas that assume technology can fix—and control—society. The essays in Your Computer Is on Fire interrogate how our human and computational infrastructures overlap, showing why technologies that centralize power tend to weaken democracy. These practices are often kept out of sight until it is too late to question the costs of how they shape society. From energy-hungry server farms to racist and sexist algorithms, the digital is always IRL, with everything that happens algorithmically or online influencing our offline lives as well. Each essay proposes paths for action to understand and solve technological problems that are often ignored or misunderstood.
To read June 1, 2020
- Machine Ethics
- Algorithmic Politics
- Techno-racial formations
- Dialect normativity
- Critical Media
- and more

Friday, February 9, 2018
9:00 am – 6:00 pm
Building 200, Room 307
社会学 计算机科学 2020 政治学
Spring in Action, Sixth Edition
Douban
Craig Walls publishing house: Manning Publications 2021 - 3
about the book Spring in Action, 6th Edition guides you through Spring’s core features explained in Craig Walls’ famously clear style. You’ll roll up your sleeves and build a secure database-backed web app step by step. Along the way, you’ll explore reactive programming, microservices, service discovery, RESTful APIs, deployment, and expert best practices. The latest version of a bestseller upgraded for Spring 5.2, this new edition also covers the RSocket specification for reactive networking between applications, and delves deep into essential features of Spring Security. Whether you’re just discovering Spring or leveling up to Spring 5.2, this Manning classic is your ticket! what's inside Building reactive applications Relational and NoSQL databases Integrating via HTTP and REST-based services, and sand reactive RSocket services Reactive programming techniques Deploying applications to traditional servers and containers Securing applications with Spring Security Covers Spring 5.2
97 Things Every Java Programmer Should Know
Douban
Kevlin Henney publishing house: O'Reilly Media 2020 - 5
If you want to push your Java skills to the next level, this practical book provides expert advice from leading luminaries within the Java ecosystem. You’ll be encouraged to stretch yourself by learning new techniques, look at problems in new ways, take responsibility for your work, and become as good at the entire craft of programming as you possibly can. Edited by Kevlin Henney, 97 Things Every Java Programmer Should Know reflects many lifetimes of experience writing Java software and living with the process of software development. Some of the best Java programmers on the planet share their collected wisdom to help you rethink Java best practices and techniques to incorporate the changes in Java 8.
Real-World Software Development
Douban
publishing house: O'Reilly Media 2019
Explore the latest Java-based software development techniques and methodologies through the project-based approach in this practical guide. Unlike books that use abstract examples and lots of theory, Real-World Software Development shows you how to develop several relevant projects while learning best practices along the way. With this engaging approach, junior developers capable of writing basic Java code will learn about state-of-the-art software development practices for building modern, robust and maintainable Java software. You’ll work with many different software development topics that are often excluded from software develop how-to references. Featuring real-world examples, this book teaches you techniques and methodologies for functional programming, automated testing, security, architecture, and distributed systems.
Performance Modeling and Design of Computer Systems
Douban
Mor Harchol-Balter publishing house: 劍橋大學出版社 2013 - 2
Tackling the questions that systems designers care about, this book brings queueing theory decisively back to computer science. The book is written with computer scientists and engineers in mind and is full of examples from computer systems, as well as manufacturing and operations research. Fun and readable, the book is highly approachable, even for undergraduates, while still being thoroughly rigorous and also covering a much wider span of topics than many queueing books. Readers benefit from a lively mix of motivation and intuition, with illustrations, examples and more than 300 exercises - all while acquiring the skills needed to model, analyze and design large-scale systems with good performance and low cost. The exercises are an important feature, teaching research-level counterintuitive lessons in the design of computer systems. The goal is to train readers not only to customize existing analyses but also to invent their own.