描述
开 本: 16开纸 张: 胶版纸包 装: 软精装是否套装: 否国际标准书号ISBN: 9787302628507
这是一套前所未见的数学书,更是一套具备极高颜值的书。姜伟生博士自谦“小镇做题家”,实际上他是国际著名金融企业的金融科技专家。很难想象一位以“术数”为业的金融家具备如此彻底的分享动机,同时,姜博士有着卓越的艺术品位和设计能力,不仅承担了这套书的精深内容,更承担了全系图书的整体设计。希望读者从枯燥的常规数学书中解脱出来,赏心悦目地慢慢走入缤纷的数学宇宙。
数据科学和机器学习已经深度融合到我们生活的方方面面,而数学正是开启未来大门的钥匙。不是所 有人生来都握有一副好牌,但是掌握“数学 编程 机器学习”是王牌。这次,学习数学不再是为了考试、分数、升学,而是投资时间、自我实现、面向未来。为了让大家学数学、用数学,甚至爱上数学, 在创作这套书时,作者尽量克服传统数学教材的各种弊端,让大家学习时有兴趣、看得懂、有思考、更自信、用得着。
《数学要素:全彩图解 微课 Python编程》打破数学板块的藩篱,将算数、代数、线性代数、几何、解析几何、概率统计、微积分、优化方法等板块有机结合在一起。从加、减、乘、除四则运算讲起,主要内容包括:第 1、2 章讲解向量和矩阵的基本运算;第 3 章讲解常用几何知识;第 4 章讲解代数知识;第 5、6 两章介绍坐标系;第 7、8、9 三章介绍解析几何;第 10 章到第 14 章都是围绕函数展开;第 15 章到第 19 章讲解微积分以及优化问题内容;第20、21 两章是概率统计入门;《数学要素:全彩图解 微课 Python编程》后四章以线性代数收尾。
《数学要素:全彩图解 微课 Python编程》内容编排上突出“图解 编程 机器学习应用”。讲解一些特定数学工具时,《数学要素:全彩图解 微课 Python编程》会穿插介绍其在数据科学和机器学习领域应用场景,让大家学以致用。
《数学要素:全彩图解 微课 Python编程》虽标榜“从加减乘除到机器学习”,但是建议读者至少具备高中数学知识。如果读者正在学习或曾经学过大学数学 ( 微积分、线性代数、概率统计 ),就更容易读了。
绪论 1
第1章 万物皆数 7
1.1 数字和运算:人类思想的伟大飞跃 9
1.2 数字分类:从复数到自然数 11
1.3 加减:基本的数学运算 15
1.4 向量:数字排成行、列 18
1.5 矩阵:数字排列成长方形 19
1.6 矩阵:一组列向量,或一组行向量 23
1.7 矩阵形状:每种形状都有特殊性质和用途 25
1.8 矩阵加减:形状相同,对应位置,批量加减 26
第2章 乘除 29
2.1 算术乘除:先乘除,后加减,括号内先算 31
2.2 向量乘法:标量乘法、向量内积、逐项积 34
2.3 矩阵乘法:重要的线性代数运算规则 36
2.4 矩阵乘法视角 40
2.5 矩阵乘法第二视角 43
2.6 矩阵除法:计算逆矩阵 46
第3章 几何 49
3.1 几何缘起:根植大地,求索星空 51
3.2 点动成线,线动成面,面动成体 54
3.3 角度和弧度 60
3.4 勾股定理到三角函数 62
3.5 圆周率估算初赛:割圆术 64
第4章 代数 69
4.1 代数的前世今生:薪火相传 71
4.2 集合:确定的一堆东西 72
4.3 从代数式到函数 75
4.4 杨辉三角:代数和几何的完美合体 79
4.5 排列组合让二项式系数更具意义 82
4.6 杨辉三角隐藏的数字规律 85
4.7 方程组:求解鸡兔同笼问题 86
第5章 笛卡儿坐标系 91
5.1 笛卡儿:我思故我在 93
5.2 坐标系:代数可视化,几何参数化 94
5.3 图解“鸡兔同笼”问题 100
5.4 极坐标:距离和夹角 102
5.5 参数方程:引入一个参数 103
5.6 坐标系必须是“横平竖直的方格”? 104
第6章 三维坐标系 107
6.1 三维直角坐标系 109
6.2 空间平面:三元一次方程 110
6.3 空间直线:三元一次方程组 114
6.4 不等式:划定区域 117
6.5 三大类不等式:约束条件 120
6.6 三维极坐标 126
第7章 距离 131
7.1 距离:未必是两点间短线段 132
7.2 欧氏距离:两点间短线段 134
7.3 点到直线的距离 140
7.4 等距线:换个视角看距离 144
7.5 距离间的量化关系 146
第8章 圆锥曲线 149
8.1 圆锥曲线外传 150
8.2 圆锥曲线:对顶圆锥和截面相交 152
8.3 正圆:特殊的椭圆 155
8.4 椭圆:机器学习的多面手 157
8.5 旋转椭圆:几何变换的结果 160
8.6 抛物线:不止是函数 164
8.7 双曲线:引力弹弓的轨迹 166
第9章 深入圆锥曲线 169
9.1 圆锥曲线:探索星辰大海 171
9.2 离心率:联系不同类型圆锥曲线 172
9.3 一组有趣的圆锥曲线 173
9.4 特殊椭圆:和给定矩形相切 175
9.5 超椭圆:和范数有关 179
9.6 双曲函数:基于单位双曲线 184
9.7 圆锥曲线的一般形式 186
第10章 函数 191
10.1 当代数式遇到坐标系 193
10.2 一元函数:一个自变量 194
10.3 一元函数性质 197
10.4 二元函数:两个自变量 202
10.5 降维:二元函数切一刀得到一元函数 205
10.6 等高线:由函数值相等点连成 208
第11章 代数函数 211
11.1 初等函数:数学模型的基础 212
11.2 一次函数:一条斜线 214
11.3 二次函数:一条抛物线 218
11.4 多项式函数:从叠加角度来看 221
11.5 幂函数:底数为自变量 224
11.6 分段函数:不连续函数 228
第12章 超越函数 231
12.1 指数函数:指数为自变量 233
12.2 对数函数:把连乘变成连加 235
12.3 高斯函数:高斯分布之基础 238
12.4 逻辑函数:在0和1之间取值 240
12.5 三角函数:周期函数的代表 243
12.6 函数变换:平移、缩放、对称 246
第13章 二元函数 251
13.1 二元一次函数:平面 253
13.2 正圆抛物面:等高线为正圆 257
13.3 椭圆抛物面:等高线为椭圆 260
13.4 双曲抛物面:马鞍面 264
13.5 山谷和山脊:无数极值点 265
13.6 锥面:正圆抛物面开方 267
13.7 值函数:与超椭圆有关 269
13.8 逻辑函数:从一元到二元 272
13.9 高斯函数:机器学习的多面手 274
第14章 数列 277
14.1 芝诺悖论:阿基里斯追不上乌龟 279
14.2 数列分类 281
14.3 等差数列:相邻两项差相等 282
14.4 等比数列:相邻两项比值相等 284
14.5 斐波那契数列 287
14.6 累加:大写西格玛 288
14.7 数列极限:微积分的一块基石 299
14.8 数列极限估算圆周率 301
第15章 极限和导数 305
15.1 牛顿小传 307
15.2 极限:研究微积分的重要数学工具 308
15.3 左极限、右极限 310
15.4 几何视角看导数:切线斜率 312
15.5 导数也是函数 315
第16章 偏导数 323
16.1 几何角度看偏导数 325
16.2 偏导也是函数 329
16.3 二阶偏导:一阶偏导函数的一阶偏导 330
16.4 二元曲面的驻点:一阶偏导为0 333
第17章 微分 337
17.1 几何角度看微分:线性近似 338
17.2 泰勒级数:多项式函数近似 340
17.3 多项式近似和误差 343
17.4 二元泰勒展开:用多项式曲面近似 348
17.5 数值微分:估算一阶导数 352
第18章 积分 355
18.1 莱布尼茨:既生瑜,何生亮 357
18.2 从小车匀加速直线运动说起 357
18.3 一元函数积分 358
18.4 高斯函数积分 361
18.5 误差函数:S型函数的一种 362
18.6 二重积分:类似二重求和 363
18.7 “偏积分”:类似偏求和 365
18.8 估算圆周率:牛顿法 367
18.9 数值积分:黎曼求积 371
第19章 优化入门 377
19.1 优化问题:寻找山峰、山谷 379
19.2 构造优化问题 380
19.3 约束条件:限定搜索区域 383
19.4 一元函数的极值点判定 389
19.5 二元函数的极值点判定 393
第20章 概率入门 401
20.1 概率简史:出身赌场 402
20.2 二叉树:一生二、二生三 403
20.3 抛硬币:正反面概率 407
20.4 聊聊概率:向上还是向下 409
20.5 一枚质地不均匀的硬币 411
20.6 随机中有规律 413
第21章 统计入门 417
21.1 统计的前世今生:强国知十三数 418
21.2 散点图:当数据遇到坐标系 419
21.3 均值:集中程度 421
21.4 标准差:离散程度 424
21.5 协方差:联合变化程度 425
21.6 线性相关系数:线性关系强弱 429
第22章 向量 435
22.1 向量:有大小、有方向 436
22.2 几何视角看向量运算 439
22.3 向量简化距离运算 441
22.4 向量内积与向量夹角 443
22.5 二维到三维 445
22.6 投影:影子的长度 446
第23章 鸡兔同笼1 453
23.1 从鸡兔同笼说起 454
23.2 “鸡”向量与“兔”向量 456
23.3 那几只毛绒耳朵 459
23.4 “鸡兔”套餐 460
23.5 套餐转换:基底转换 463
23.6 猪引发的投影问题 464
23.7 黄鼠狼惊魂夜:“鸡飞兔脱”与超定方程组 466
第24章 鸡兔同笼2 469
24.1 鸡兔数量的有趣关系 470
24.2 试试比例函数:y = ax 471
24.3 小二乘法 473
24.4 再试试一次函数:y = ax b 477
24.5 再探黄鼠狼惊魂夜:超定方程组 479
24.6 统计方法求解回归参数 483
第25章 鸡兔同笼3 485
25.1 鸡兔互变奇妙夜 486
25.2 视角:“鸡/兔→鸡”和“鸡/兔→兔” 489
25.3 第二视角:“鸡→鸡/兔”和“兔→鸡/兔” 491
25.4 连续几夜鸡兔转换 493
25.5 有向量的地方,就有几何 496
25.6 彩蛋 498
感谢
首先感谢大家的信任。
作者仅仅是在学习应用数据科学和机器学习算法时,多读了几本数学书,多做了一些思考和知识整理而已。知者不言,言者不知。知者不博,博者不知。由于作者水平有限,斗胆把自己所学所思与大家分享,作者权当无知者无畏。希望大家在B站视频下方和Github多提意见,让这套书成为作者和读者共同参与创作的作品。
特别感谢清华大学出版社的栾大成老师。从选题策划、内容创作到装帧设计,栾老师事无巨细、一路陪伴。每次与栾老师交流,都能感受到他对优质作品的追求、对知识分享的热情。
出来混总是要还的
曾几何时,考试是我们学习数学的动力。考试是头悬梁的绳,是锥刺股的锥。我们中的大多数人从小到大为各种考试埋头题海,数学味同嚼蜡,甚至让人恨之入骨。
数学给我们带来了无尽的“折磨”。我们甚至恐惧数学,憎恨数学,恨不得一走出校门就把数学抛之脑后,老死不相往来。
可悲可笑的是,我们很多人可能会在毕业的五年或十年以后,因为工作需要,不得不重新学习微积分、线性代数、概率统计,悔恨当初没有学好数学,甚至迁怒于教材和老师。
这一切不能都怪数学,值得反思的是我们学习数学的方法和目的。
再给自己一个学数学的理由
为考试而学数学,是被逼无奈的举动。而为数学而数学,则又太过高尚而遥不可及。
相信对于绝大部分的我们来说,数学是工具、是谋生手段,而不是目的。我们主动学数学,是想用数学工具解决具体问题。
现在,这套书给大家一个“学数学、用数学”的全新动力—数据科学、机器学习。
数据科学和机器学习已经深度融合到我们生活的方方面面,而数学正是开启未来大门的钥匙。不
是所有人生来都握有一副好牌,但是掌握“数学 编程 机器学习”的知识是王牌。这次,学习数学不再是为了考试、分数、升学,而是投资时间、自我实现、面向未来。
未来已来,你来不来?
本套鸢尾花书如何帮到你
为了让大家学数学、用数学,甚至爱上数学,作者可谓颇费心机。在创作这套书时,作者尽量克服传统数学教材的各种弊端,让大家学习时有兴趣、看得懂、有思考、更自信、用得着。
为此,丛书在内容创作上突出以下几个特点。
虽然本书标榜“从加减乘除到机器学习”,但是建议读者朋友们至少具备高中数学知识。如果读者正在学习或曾经学过大学数学 (微积分、线性代数、概率统计),这套书就更容易读懂了。
聊聊数学
数学是工具。锤子是工具,剪刀是工具,数学也是工具。
数学是思想。数学是人类思想高度抽象的结晶体。在其冷酷的外表之下,数学的内核实际上就是人类朴素的思想。学习数学时,知其然,更要知其所以然。不要死记硬背公式定理,理解背后的数学思想才是关键。如果你能画一幅图、用大白话描述清楚一个公式、一则定理,这就说明你真正理解了它。
数学是语言。就好比世界各地不同种族有自己的语言,数学则是人类共同的语言和逻辑。数学这门语言极其精准、高度抽象,放之四海而皆准。虽然我们中大多数人没有被数学“女神”选中,不能为人类对数学认知开疆扩土;但是,这丝毫不妨碍我们使用数学这门语言。就好比,我们不会成为语言学家,我们完全可以使用母语和外语交流。
数学是体系。代数、几何、线性代数、微积分、概率统计、优化方法等,看似一个个孤岛,实际上都是数学网络的一条条织线。建议大家学习时,特别关注不同数学板块之间的联系,见树,更要见林。
数学是基石。拿破仑曾说“数学的日臻完善和国强民富息息相关。”数学是科学进步的根基,是经济繁荣的支柱,是保家卫国的武器,是探索星辰大海的航船。
数学是艺术。数学和音乐、绘画、建筑一样,都是人类艺术体验。通过可视化工具,我们会在看似枯燥的公式、定理、数据背后,发现数学之美。
数学是历史,是人类共同记忆体。“历史是过去,又属于现在,同时在指引未来。”数学是人类的集体学习思考,它把人的思维符号化、形式化,进而记录、积累、传播、创新、发展。从甲骨、泥板、石板、竹简、木牍、纸草、羊皮卷、活字印刷、纸质书,到数字媒介,这一过程持续了数千年, 至今绵延不息。
数学是无穷无尽的想象力,是人类的好奇心,是自我挑战的毅力,是一个接着一个的问题,是看似荒诞不经的猜想,是一次次胆大包天的批判性思考,是敢于站在前人臂膀之上的勇气,是孜孜不倦地延展人类认知边界的不懈努力。
家园、诗、远方
诺瓦利斯曾说:“哲学就是怀着一种乡愁的冲动到处去寻找家园。”
在纷繁复杂的尘世,数学纯粹得就像精神的世外桃源。数学是,一束光,一条巷,一团不灭的希望,一股磅礴的力量,一个值得寄托的避风港。
打破陈腐的锁链,把功利心暂放一边,我们一道怀揣一分乡愁,心存些许诗意,踩着艺术维度,投入数学张开的臂膀,驶入它色彩斑斓、变幻无穷的深港,感受久违的归属,一睹更美、更好的远方。
Acknowledgement
致谢
To my parents.
谨以此书献给我的母亲父亲。
How to Use the Book
使用本书
丛书资源
鸢尾花书提供的配套资源如下:
本书约定
书中为了方便阅读以及查找配套资源,特别设计了如下标识。
数学家、科学家、艺术家等大家语录
配套Python代码完
成核心计算和制图
引出本书或本系列
其他图书相关内容
相关数学家生平贡献介绍
代码中核心Python
库函数和讲解
用Streamlit开发制作App应用
提醒读者需要格外注意的知识点
每章总结或升华本章内容
思维导图总结本章脉络和核心内容
介绍数学工具与
机器学习之间的联系
配套微课视频二维码
核心参考和推荐阅读文献
微课视频
本书配套微课视频均发布在B站—生姜DrGinger。
微课视频是以“聊天”的方式,和大家探讨某个数学话题的重点内容,讲解代码中可能遇到的难点,甚至侃侃历史、说说时事、聊聊生活。
本书配套微课视频的目的是引导大家自主编程实践、探究式学习,并不是“照本宣科”。
纸质图书上已经写得很清楚的内容,视频课程只会强调重点。需要说明的是,图书内容不是视频的“逐字稿”。
App开发
本书几乎每一章都至少有一个用Streamlit开发的App,用来展示数学动画、数据分析、机器学习算法。
Streamlit是个开源的Python库,能够方便快捷地搭建、部署交互型网页App。Streamlit简单易用,很受欢迎。Streamlit兼容目前主流的Python数据分析库,比如NumPy、Pandas、Scikit-learn、PyTorch、TensorFlow等等。Streamlit还支持Plotly、Bokeh、Altair等交互可视化库。
本书中很多App设计都采用Streamlit Plotly方案。此外,本书专门配套教学视频手把手和大家一起做App。
大家可以参考如下页面,更多了解Streamlit:
实践平台
本书作者编写代码时采用的IDE (Integrated Development Environment) 是Spyder,目的是给大家提供简洁的Python代码文件。
但是,建议大家采用JupyterLab或Jupyter Notebook作为鸢尾花书配套学习工具。
简单来说,Jupyter集合“浏览器 编程 文档 绘图 多媒体 发布”众多功能于一身,非常适合探究式学习。
运行Jupyter无须IDE,只需要浏览器。Jupyter容易分块执行代码。Jupyter支持inline打印结果,直接将结果图片打印在分块代码下方。Jupyter还支持很多其他语言,如R和Julia。
使用Markdown文档编辑功能,可以编程同时写笔记,不需要额外创建文档。在Jupyter中插入图片和视频链接都很方便,此外还可以插入Latex公式。对于长文档,可以用边栏目录查找特定内容。
Jupyter发布功能很友好,方便打印成HTML、PDF等格式文件。
Jupyter也并不完美,目前尚待解决的问题有几个:①Jupyter中代码调试不是特别方便。Jupyter 没有variable explorer,可以inline打印数据,也可以将数据写到CSV或Excel文件中再打开。Matplotlib 图像结果不具有交互性,如不能查看某个点的值或者旋转3D图形,此时可以考虑安装 (jupyter matplotlib)。注意,利用Altair或Plotly绘制的图像支持交互功能。对于自定义函数,目前没有快捷键直接跳转到其定义。但是,很多开发者针对这些问题正在开发或已经发布相应插件,请大家留意。
大家可以下载安装Anaconda。JupyterLab、Spyder、PyCharm等常用工具,都集成在Anaconda 中。下载Anaconda的地址为:
代码文件
鸢尾花书的Python代码文件下载地址为:
同时也在如下GitHub地址备份更新:
Python代码文件会不定期修改,请大家注意更新。图书原始创作版本PDF(未经审校和修订, 内容和纸质版略有差异,方便移动终端碎片化学习以及对照代码)和纸质版本勘误也会上传到这个GitHub账户。因此,建议大家注册GitHub账户,给书稿文件夹标星(Star)或分支克隆(Fork)。
考虑再三,作者还是决定不把代码全文印在纸质书中,以便减少篇幅,节约用纸。
本书编程实践例子中主要使用“鸢尾花数据集”,数据来源是Scikit-learn库、Seaborn库。要是给鸢尾花书起个昵称的话,作者乐见“鸢尾花书”。
学习指南
大家可以根据自己的偏好制定学习步骤,本书推荐如下步骤。
1 2 3 浏览本章思维导图, 下载本章配套 观看微课视频,阅 把握核心脉络 Python 代码文件 读本章正文内容 4
用Jupyter 创建笔 5
尝试开发数学动画、 6
翻阅本书推荐参 记,编程实践 机器学习 App 考文献
使用本书
学完每章后,大家可以在社交媒体、技术论坛上发布自己的Jupyter笔记,进一步听取朋友们的意见,共同进步。这样做还可以提高自己学习的动力。
另外,建议大家采用纸质书和电子书配合阅读学习,学习主阵地在纸质书上,学习基础课程重要的是沉下心来,认真阅读并记录笔记,电子书可以配合查看代码,相关实操性内容可以直接在电脑上开发、运行、感受,Jupyter笔记同步记录起来。
强调一点:学习过程中遇到困难,要尝试自行研究解决,不要时间就去寻求他人帮助。
意见建议
欢迎大家对鸢尾花书提意见和建议,丛书专属邮箱地址为:
也欢迎大家在B站视频下方留言互动。
评论
还没有评论。