C++ Template Metaprogramming in Practice: A Deep Learning Framework

· CRC Press
電子書
338
符合資格

關於本電子書

Using the implementation of a deep learning framework as an example, C++ Template Metaprogramming in Practice: A Deep Learning Framework explains the application of metaprogramming in a relatively large project and emphasizes ways to optimize systems performance. The book is suitable for developers with a basic knowledge of C++. Developers familiar with mainstream deep learning frameworks can also refer to this book to compare the differences between the deep learning framework implemented with metaprogramming and compile-time computing with deep learning frameworks using object-oriented methods.

Consisting of eight chapters, the book starts with two chapters discussing basic techniques of metaprogramming and compile-time computing. The rest of the book’s chapters focus on the practical application of metaprogramming in a deep learning framework. It examines rich types and systems, expression templates, and writing complex meta-functions, as well as such topics as:

  • Heterogeneous dictionaries and policy templates
  • An introduction to deep learning
  • Type system and basic data types
  • Operations and expression templates
  • Basic layers
  • Composite and recurrent layers
  • Evaluation and its optimization

Metaprogramming can construct flexible and efficient code. For C++ developers who are familiar with object-oriented programming, the main difficulty in learning and mastering C++ metaprogramming is establishing the thinking mode of functional programming. The meta-programming approach involved at compile time is functional, which means that the intermediate results of the construction cannot be changed, and the impact may be greater than expected. This book enables C++ programmers to develop a functional mindset and metaprogramming skills. The book also discusses the development cost and use cost of metaprogramming and provides workarounds for minimizing these costs.

關於作者

Li Wei graduated from Tsinghua University in 2011 and has been engaged in the development and maintenance of the online prediction section of the deep learning machine translation system at Baidu's Natural Language Processing Department. He currently works for Microsoft Advanced Technology Center and has more than ten years of relevant development experience, with a strong interest in C++ template meta-programming and compile-time computing.

為這本電子書評分

歡迎提供意見。

閱讀資訊

智慧型手機與平板電腦
只要安裝 Google Play 圖書應用程式 Android 版iPad/iPhone 版,不僅應用程式內容會自動與你的帳戶保持同步,還能讓你隨時隨地上網或離線閱讀。
筆記型電腦和電腦
你可以使用電腦的網路瀏覽器聆聽你在 Google Play 購買的有聲書。
電子書閱讀器與其他裝置
如要在 Kobo 電子閱讀器這類電子書裝置上閱覽書籍,必須將檔案下載並傳輸到該裝置上。請按照說明中心的詳細操作說明,將檔案傳輸到支援的電子閱讀器上。