登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』C++模板元编程实战 一个深度学习框架的初步实现

書城自編碼: 3268524
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: 李伟
國際書號(ISBN): 9787115491701
出版社: 人民邮电出版社
出版日期: 2018-11-01


書度/開本: 16开 釘裝: 平装

售價:HK$ 98.0

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
中国古兵器集成
《 中国古兵器集成 》

售價:HK$ 816.0
空腹力+轻断食:正在横扫全球的瘦身革命(全2册)
《 空腹力+轻断食:正在横扫全球的瘦身革命(全2册) 》

售價:HK$ 123.6
临床牙周病学和口腔种植学 第7版
《 临床牙周病学和口腔种植学 第7版 》

售價:HK$ 1557.6
粤港澳大湾区文化产业圈论纲
《 粤港澳大湾区文化产业圈论纲 》

售價:HK$ 153.6
粤港澳大湾区蓝皮书:粤港澳大湾区建设报告(2023)
《 粤港澳大湾区蓝皮书:粤港澳大湾区建设报告(2023) 》

售價:HK$ 225.6
邂逅晚清——中美的对望与凝视(罕见国内作者所著全面反映晚清中美交往历史的通俗作品)
《 邂逅晚清——中美的对望与凝视(罕见国内作者所著全面反映晚清中美交往历史的通俗作品) 》

售價:HK$ 105.6
广东当代金融史:全三册
《 广东当代金融史:全三册 》

售價:HK$ 717.6
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
《 养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈 》

售價:HK$ 58.8

 

建議一齊購買:

+

HK$ 130.4
《 Python深度学习:基于TensorFlow 》
+

HK$ 126.4
《 分布式机器学习:算法、理论与实践 》
+

HK$ 281.2
《 精通C++(第9版) 》
+

HK$ 224.4
《 C++ Templates 第2版 英文版 》
+

HK$ 140.6
《 Effective Modern C++中文版 》
+

HK$ 156.6
《 现代C++探秘:编码、工程与科研必修(基于C++ 14)(英文版) 》
編輯推薦:
众多知名技术专家联袂推荐
C元编程领域难得一见的精品著作
抽丝剥茧,深入解析C元编程的技术本质与细节
道术并重,详细阐述C元编程在大型项目中的应用
早在20世纪90年代,C模板元编程的方法就已经出现了雏形,但由于使用该技术的门槛较高,因此一直没有像面向对象那样得到广泛地应用。另一方面,大量实践表明,适当地使用该技术,可以更有效地组织代码并提升性能。正因为如此,诸如C STL、BOOST等很多库中都可以见到元编程与编译期计算的身影。
本书将以一个深度学习框架MetaNN的实现为例,讨论如何在一个相对较大的项目中深入应用元编程,为系统性能优化提供更多的可能。
本书内容:
元编程的基本技巧
异类词典与policy模板
深度学习概述
运算与表达式模板
MetaNN中基本层的实现
MetaNN中复合层与循环层的实现
MetaNN中的求值与优化
內容簡介:
《C模板元编程实战:一个深度学习框架的初步实现》以一个深度学习框架的初步实现为例,讨论如何在一个相对较大的项目中深入应用元编程,为系统性能优化提供更多的可能。
《C模板元编程实战:一个深度学习框架的初步实现》分为8章,前两章讨论了一些元编程与编译期计算的基本技术,后面6章则讨论了元编程在深度学习框架中的实际应用,涉及富类型与标签体系、表达式模板、复杂元函数的编写等多个主题,详尽地展示了如何将面向对象与元编程相结合以构造复杂系统。
《C模板元编程实战:一个深度学习框架的初步实现》适合具有一定C基础的读者阅读。对主流深度学习框架的内核有一定了解的读者,也可以参考本书,对比使用元编程与编译期计算所实现的深度学习框架与主流的(主要基于面向对象所构造的)深度学习框架之间的差异。
關於作者:
李伟,2011年毕业于清华大学,曾经在百度自然语言处理部担任深度学习机器翻译系统线上预测部分的开发与维护,目前供职于微软亚洲工程院。主要研究方向为C,拥有10余年相关开发经验,对C模板元编程与编译期计算有着浓厚的兴趣。喜欢尝试新的技术,业余爱好是编程与阅读。
目錄
第 一部分 元编程基础技术
第 1章 基本技巧 3
1.1 元函数与type_traits 3
1.1.1 元函数介绍 3
1.1.2 类型元函数 4
1.1.3 各式各样的元函数 6
1.1.4 type_traits 7
1.1.5 元函数与宏 7
1.1.6 本书中元函数的命名方式 8
1.2 模板型模板参数与容器模板 8
1.2.1 模板作为元函数的输入 9
1.2.2 模板作为元函数的输出 9
1.2.3 容器模板 10
1.3 顺序、分支与循环代码的编写 12
1.3.1 顺序执行的代码 12
1.3.2 分支执行的代码 13
1.3.3 循环执行的代码 19
1.3.4 小心:实例化爆炸与编译崩溃 21
1.3.5 分支选择与短路逻辑 23
1.4 奇特的递归模板式 24
1.5 小结 25
1.6 练习 26
第 2章 异类词典与policy模板 28
2.1 具名参数简介 28
2.2 异类词典 30
2.2.1 模块的使用方式 30
2.2.2 键的表示 32
2.2.3 异类词典的实现 34
2.2.4 VarTypeDict的性能简析 41
2.2.5 用std::tuple作为缓存 41
2.3 policy模板 42
2.3.1 policy介绍 42
2.3.2 定义policy与policy对象(模板) 45
2.3.3 使用policy 47
2.3.4 背景知识:支配与虚继承 49
2.3.5 policy对象与policy支配结构 50
2.3.6 policy选择元函数 52
2.3.7 使用宏简化policy对象的声明 57
2.4 小结 58
2.5 练习 58
 第二部分 深度学习框架
第3章 深度学习概述 63
3.1 深度学习简介 63
3.1.1 从机器学习到深度学习 64
3.1.2 各式各样的人工神经网络 65
3.1.3 深度学习系统的组织与训练 68
3.2 本书所实现的框架:MetaNN 70
3.2.1 从矩阵计算工具到深度学习框架 70
3.2.2 MetaNN介绍 71
3.2.3 本书将要讨论的内容 72
3.2.4 本书不会涉及的主题 75
3.3 小结 75
第4章 类型体系与基本数据类型 76
4.1 类型体系 77
4.1.1 类型体系介绍 77
4.1.2 迭代器分类体系 78
4.1.3 将标签作为模板参数 80
4.1.4 MetaNN的类型体系 81
4.1.5 与类型体系相关的元函数 82
4.2 设计理念 84
4.2.1 支持不同的计算设备与计算单元 84
4.2.2 存储空间的分配与维护 85
4.2.3 浅拷贝与写操作检测 88
4.2.4 底层接口扩展 89
4.2.5 类型转换与求值 91
4.2.6 数据接口规范 92
4.3 标量 92
4.3.1 类模板的声明 93
4.3.2 基于CPU的特化版本 94
4.3.3 标量的主体类型 95
4.4 矩阵 96
4.4.1 Matrix类模板 96
4.4.2 特殊矩阵:平凡矩阵、全零矩阵与独热向量 101
4.4.3 引入新的矩阵类 104
4.5 列表 105
4.5.1 Batch模板 105
4.5.2 Array模板 108
4.5.3 重复与Duplicate模板 113
4.6 小结 116
4.7 练习 116
第5章 运算与表达式模板 119
5.1 表达式模板简介 119
5.2 MetaNN运算模板的设计思想 122
5.2.1 Add模板的问题 122
5.2.2 运算模板的行为分析 122
5.3 运算分类 124
5.4 辅助模板 125
5.4.1 辅助类模板OperElementType_OperDeviceType_ 125
5.4.2 辅助类模板OperXXX_ 126
5.4.3 辅助类模板OperCateCal 126
5.4.4 辅助类模板OperOrganizer 128
5.4.5 辅助类模板OperSeq 130
5.5 运算模板的框架 131
5.5.1 运算模板的类别标签 131
5.5.2 UnaryOp的定义 132
5.6 运算实现示例 133
5.6.1 Sigmoid运算 133
5.6.2 Add运算 136
5.6.3 转置运算 139
5.6.4 折叠运算 141
5.7 MetaNN已支持的运算列表 141
5.7.1 一元运算 141
5.7.2 二元运算 142
5.7.3 三元运算 144
5.8 运算的折衷与局限性 144
5.8.1 运算的折衷 144
5.8.2 运算的局限性 145
5.9 小结 146
5.10 练习 146
第6章 基本层 148
6.1 层的设计理念 148
6.1.1 层的介绍 148
6.1.2 层对象的构造 150
6.1.3 参数矩阵的初始化与加载 151
6.1.4 正向传播 152
6.1.5 存储中间结果 154
6.1.6 反向传播 154
6.1.7 参数矩阵的更新 155
6.1.8 参数矩阵的获取 155
6.1.9 层的中性检测 156
6.2 层的辅助逻辑 156
6.2.1 初始化模块 156
6.2.2 DynamicData类模板 161
6.2.3 层的常用policy对象 166
6.2.4 InjectPolicy元函数 168
6.2.5 通用IO结构 168
6.2.6 通用操作函数 169
6.3 层的具体实现 170
6.3.1 AddLayer 170
6.3.2 ElementMulLayer 172
6.3.3 BiasLayer 176
6.4 MetaNN已实现的基本层 181
6.5 小结 183
6.6 练习 184
第7章 复合层与循环层 185
7.1 复合层的接口与设计理念 186
7.1.1 基本结构 186
7.1.2 结构描述语法 187
7.1.3 policy的继承关系 188
7.1.4 policy的修正 189
7.1.5 复合层的构造函数 190
7.1.6 一个完整的复合层构造示例 190
7.2 policy继承与修正逻辑的实现 191
7.2.1 policy继承逻辑的实现 191
7.2.2 policy修正逻辑的实现 194
7.3 ComposeTopology的实现 195
7.3.1 功能介绍 195
7.3.2 拓扑排序算法介绍 195
7.3.3 ComposeTopology包含的主要步骤 196
7.3.4 结构描述子句与其划分 196
7.3.5 结构合法性检查 198
7.3.6 拓扑排序的实现 200
7.3.7 子层实例化元函数 203
7.4 ComposeKernel的实现 207
7.4.1 类模板的声明 208
7.4.2 子层对象管理 208
7.4.3 参数获取、梯度收集与中性检测 211
7.4.4 参数初始化与加载 212
7.4.5 正向传播 214
7.4.6 反向传播 221
7.5 复合层实现示例 221
7.6 循环层 222
7.6.1 GruStep 222
7.6.2 构建RecurrentLayer类模板 224
7.6.3 RecurrentLayer的使用 230
7.7 小结 230
7.8 练习 230
第8章 求值与优化 233
8.1 MetaNN的求值模型 234
8.1.1 运算的层次结构 234
8.1.2 求值子系统的模块划分 235
8.2 基本求值逻辑 242
8.2.1 主体类型的求值接口 242
8.2.2 非主体基本数据类型的求值 243
8.2.3 运算模板的求值 245
8.2.4 DyanmicData与求值 248
8.3 求值过程的优化 249
8.3.1 避免重复计算 249
8.3.2 同类计算合并 250
8.3.3 多运算协同优化 251
8.4 小结 258
8.5 练习 259
后记方家休见笑,吾道本艰难 260

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.