基于学科交叉视角的线性代数与Python编程案例思考
Reflections on Case Studies in Linear Algebra and Python Programming from an Interdisciplinary Perspective
DOI: 10.12677/aam.2025.146321, PDF, HTML, XML,   
作者: 俞 恒, 颜颖颖:浙江农林大学暨阳学院工程技术学院,浙江 诸暨
关键词: 学科交叉融合Python线性代数兴趣Interdisciplinary Integration Python Linear Algebra Interest
摘要: 学科的交叉与融合是培养符合经济社会发展所需复合型人才的重要手段,高校作为人才培养的重要基地,是学科交叉融合的重要推动力量。学科交叉的深入融合的有效实施,得益于学生兴趣的激发与引导。在计算机专业学生教学过程中,由于学生有一定的编程基础,为培养学生对数学学习的兴趣。我们将线性代数与编程Python结合,促进学生从知识到能力的提升,进而激发学生学习动力与探索欲。
Abstract: Interdisciplinary integration is an important means to cultivate compound talents that meet the needs of economic and social development. Colleges, as an important base for talent training, are an important driving force for interdisciplinary integration. The effective implementation of the in-depth integration of interdisciplinary disciplines benefits from the stimulation and guidance of students’ interests. Because computer students have a certain programming foundation, in order to cultivate students’ interest in mathematics learning, we combine linear algebra with Python to promote the improvement of students’ knowledge and ability, meanwhile stimulating students’ learning motivation and desire to explore.
文章引用:俞恒, 颜颖颖. 基于学科交叉视角的线性代数与Python编程案例思考[J]. 应用数学进展, 2025, 14(6): 302-307. https://doi.org/10.12677/aam.2025.146321

1. 引言

学科的发展历程受多种因素影响,例如,时代发展和社会需求等。从广义上,学科可划分为自然科学、人文科学和社会科学等,狭义上,也可指具体的某一学科,例如,物理学,化学,数学等。在进入21世纪以来,随着社会和科技的迅速发展以及知识发展的完备,学科间的联系越来越紧密,学科交叉与融合的趋势越来越凸显。

由于社会问题的复杂性,单一的知识往往无法解决实际问题,往往需要跨越学科甚至多个学科才能应对,因此社会对综合化和专业化的人才需求越来越强烈。同时高校中学科门类和专业种类的增加使得学科之间的界限越来越模糊,然而对学科专业过小过细的划分会使大多数高校仍面对专业与学科相脱离,学科对专业支持 不够等问题,一方面是由于课时或者教师知识储备有限以及产教不融合等;另一方面是学生对学科的理解弱,未认识到学科对专业的支持,而对学科的兴趣不大。

随着当今社会科技的迅猛飞跃和计算机技术的广泛渗透,数学在科技创新和发展中发挥着至关重要的作用。无论是计算机科学、生命科学、医学、物理学等领域,数学都与其存在着广泛的交叉和融合[1]-[3]。通过数学方法,我们可对其他学科提供理论支持,而理论又指导实践,提供实践的效率和结果,从而更好地解决实际问题。此外数学可以将不同学科结合起来,形成跨学科交叉,有助于促进科技和社会的进步。

线性代数作为工程技术、计算机、经济学等领域的一门基础数学课程,主要讨论有限维空间线性理论,包括矩阵运算、向量空间等,具有较强的逻辑性,抽象性和实用性。 在当今社会也有广泛用途,在医学上,是医学图像和医疗记录的重要处理和分析工具;在运筹学上,对于资源分配、运输调度和生产分配上,是提升经济效益的重要优化手段;在计算机领域,是机器学习和人工智能领域的基础。

本科生的线性代数主要安排大一、大二阶段,此阶段的学生正值思维从高中时期向大学过渡的关键阶段。目前,大多数该阶段的学生,空间想象力不足,仍处于片面学习知识,不能自主将不同学科进行有机结合,因此对数学学习的必要性产生怀疑,认为像线性代数等数学课程与他们的专业甚至就业没什么关系,与个人成长没有直接帮助以及数学由于过于抽象和复杂,难以看到在现实生活中的价值等观点,导致学生对数学兴趣不大。所以教师在教学过程中传授数学知识的同时,将数学与其他学科进行交叉教学,可以优化学科之间的相互联系,有助于让学生对课堂、教学感兴趣,从而使教师的教与学生的学更有成效。

本篇文章主要以计算机等相关专业学生为主,借助线性代数与编程python进行结合[4]-[6],引导学生根据具体问题引发思考,以线性代数为工具,以模式识别为背景,人为建构学科之间的互动和沟通,激发学生的求知欲和兴趣,引导学生有意义地自主学习、融会贯通。

2. 问题的引入

图像分类,本质是通过有效的特征提取方法使得同类样本的特征尽可能地聚集在一起,而不同类的样本尽可能分散开,即同类样本的类内间距离尽可能小,不同类样本的类外间距离尽可能大(这里以同类样本的重心作为该类别的类中心)。由于计算机专业的学生的专业课是编程,数学作为公共基础课,所以遇到这类问题,学生会感到困惑,无从入手。

3. 问题的分析

为了让学生更容易理解并且打开学生的思维,我们从简单的二维空间的2、3个均匀分布点入手,它们分别位于线段的两端以及正三角形的顶点上并且夹角余弦值为 1, 1 2 。由此我们推出三维空间上的2,3,4个均匀分布点分别位于线段的端点、正三角形和正四面体的顶点上且夹角余弦值为 1, 1 2 , 1 3 。由上述特殊情况,可引导学生发现相关规律,在均匀分布点个数k小于或等于空间维数加1下,任意点间的夹角为 1 k1

4. 问题的验证

为达到最大化类间距的目的,假设n维欧几里得空间,k个类别中心点, a i 为均匀分布点,若 kn+1 ,为实现任意类别中心余弦距离最大化[7],则 a i , a j = 1 k1 ,ij;i,j=1,,k

证明:因为k个点是均匀分布的,必存在 a 1 + a 2 ++ a k =0 .可得任意的k − 1个点构成k − 1维空间,不妨证 a 1 , a 2 ,, a k 构成基[8],若假设其线性相关,则必存在一组不全为零的实数 m 1 , m 2 ,, m k1 , m z , m j 0,1j,zk1 ,满足 m 1 a 1 + m 2 a 2 ++ m k1 a k1 =0 。可得

a j = m 1 m j a 1 + m j1 m j a j1 m j+1 m j a j+1 + m k1 m j a k1 ,由于它们是均匀分布点, m i m z m j

a i , a j = m i m j m 1 + m 2 ++ m k1 m i m j m j a i , a j (1)

a z , a j = m z m j m 1 + m 2 ++ m k1 m z m j m j a z , a j (2)

相减后可得 ( m z m i ) a i , a z = m z m i ,即 a z , a j =1 ,显然矛盾,故 a 1 , a 2 ,, a k1 构成k − 1维空间的一组基,又由于有限维欧式空间的每一个子空间都有正交补空间,故有nk + 1维正交补空间。

下面用数学归纳法证明:

n = 2时,当k = 2时,设 a 1 为任意的单位向量,则必存在向量 a 2 满足 a 1 , a 2 =1

k = 3, a 1 V中任意的单位向量,则必存在向量 a 2 , a 3 ,满足 a i , a j = 1 2 ,ij

假设 n=m1 时,对于任意k ( km )个均匀分布的点,满足 a i , a j = 1 k1 ,ij 。现考虑 n=m 时,取任意单位向量 a k ,考虑 W= ( a ) m − 1维欧式空间,根据假设,那么k-1个任意均匀分布的点满足 a i , a j = 1 k2 ,ij,k1m 。不妨这k − 1个均匀分布的向量分别是 β 1 , β 2 ,, β k1 其中 β i a i 的正交投影,那么对于任意的 a i ,满足

a i = k( k2 ) k1 β i 1 k1 a k ,i=1,2,,k1, (3)

从而得到

a i , a j = k( k2 ) ( k1 ) 2 β i , β j + 1 ( k1 ) 2 a k , a k = 1 k1 ,ij (4)

a i , a k = k( k2 ) k1 β i 1 k1 a k , a k = 1 k1 , (5)

由此生成的是固定的 a 1 , a 2 ,, a k

任意的正交矩阵 U,{ U a i },i=1,,k 是经旋转后的向量但长度不变,因此满足

U a i ,U a i = 1 k1 . (6)

借助空间中一固定的均匀分布点,进行任意的旋转,从而生成任意的均匀分布点,且可得到均匀分布点之间夹角余弦值。此题证明的难易程度偏中等,学生如果直接从较多的类别数和较高维空间下进行考虑,很难入手。因此,教师应引导学生从特殊情况考虑,寻找规律。此外,证明过程中,利用正交空间,基等内容,使学生线性代数的学习更扎实。

5. 实验的验证

由于计算机专业学生的专业基础和实践能力的高低是编程,主要包括计算机科学基础课程、计算机语言(如C语言、C++、Python等)等专业课程,因此学生能很快借助编程语言python等利用上述数学算法,快速得到若干个类中心,用于神经网络的训练。

5.1. 基于均匀分布点的神经网络的训练

通过借助空间中一固定的均匀分布点进行任意的旋转后,可将其视作理想的类别中心,进行神经网络的训练。见图1是一个简单的神经网络,第一层是PCA层;第二层是线性层;最后一层是GDA层,主要通过多元高斯分布对样本进行分类。

Figure 1. On the left is a simple neural network. The first layer, PCA, serves as a feature preprocessing layer to select principal components and reduce data redundancy. The second layer is a fully connected layer that combines features through a weight matrix, which is beneficial for image classification. The third layer is a Gaussian distribution layer, which aids in feature extraction

1. 左是简单的神经网络,第一层PCA是特征预处理层用来选取主成分,降低数据的冗余性;第二层是全连接层通过权重矩阵,将特征进行结合,有利于图像分类;第三层是高斯分布层,有利于特征提取

5.2. 在W,W + Tanh,PCA + W + Tanh三种结构下的分类性能

为了验证所提及神经网络的可行性和合理性,我们将前两层结构分为纯线性W,W + Tanh,PCA + W + Tanh三种情况进行对比验证,说明该网络结构的可行性和分类性能。其主要目的在于让学生理解矩阵运算且理解激活函数有助于增加网络结构的非线性,促进特征的提取,加深知识的理解和巩固。

Table 1. Training time and recognition rate of various datasets in pure linear W, nonlinear network W + Tanh, and PCA + W + Tanh analytical feedforward networks

1. 各数据集在纯线性W和非线性网络W + Tanh以及PCA + W + Tanh解析前馈网络的训练时间和识别率

PCA + W + Tanh

W (Class number-1)

W + Tanh

PCA/D

Tr.Ti (s)/Acc. (%)

Tr.Ti. (s)/Accu. (%)

D

Tr. Ti (s)/Accu. (%)

BREAST

20/2

0.024/96.25

0.001/97.36

3

0.002/97.01

WAVEFORM

18/3

0.09/85.62

0.005/86.02

8

0.009/85.53

WINE

13/8

0.015/98.87

0.001/98.33

4

0.001/98.85

IRIS

3/8

0.013/98.66

0.001/97.33

8

0.001/97.77

表1展示了基于Breast、waveform、wine和iris数据集在线性、非线性及神经网络模型下的识别率与训练速度的对比分析。从表1中可以看出,在PCA + W + Tanh网络结构下,除Breast数据集的识别率相较于其他结构略低外,其余数据集的识别性能均表现出显著优势。这一结果表明,该网络结构具有较高的可行性和有效性。同时,Breast数据集的识别率表现暗示其更适合采用线性分类方法进行处理。此外,该网络结构的调整相对简单,适合学生进行操作,旨在培养学生的批判性思维能力、网络可行性的验证能力以及实践动手能力。通过此类实验,学生能够深入理解神经网络的基本原理及其在不同数据集上的适用性,从而提升其解决实际问题的能力。

6. 课程反思

1) 循序渐进原则

本节课以机器学习中一常见图像分类问题——最大化类间距入手,结合线性代数知识,引导学生从简单问题思考。对于二维空间中2,3个均匀分布点的位置关系以及三维空间2,3,4个均匀分布点的分布的问题,可以让学生很容易发现并解决,同时鼓励学生将其与较为熟知的编程结合画出三维空间使得相应图像,学生较为直观地看到均匀分布点的分布特点。这有助于增强学生的自信心和成就感,成功解题的成就感也使得学生体会到数学学习的乐趣,有助于培养学生数学学习的热情,使得他们投入更多的时间和精力。此外,学生会对更难问题产生一种挑战,使得学生对高维空间是否也有这样的现象引发思考并产生兴趣,培养学生整体性和关联性思维。这样由浅入深,由简单到复杂地逐步深入构建知识桥梁,使得学生在先前基础上,建立起学习的自信心,随着学习的深入,知识的掌握和理解日益内化和深刻,打开学生的认识和思维。

2) 因材施教原则

教师应避免“一刀切”的教学模式,针对不同的专业特色以及学生的学习能力,制定适合不同专业的个性化教学。本篇文章是以计算机专业学生为主,借助线性代数课程中正交空间,基于线性相关性等内容与学生专业相关的图像处理联系一起,深化学生对知识的理解,培养学生抽象思维和问题解决能力,获得跨学科的知识。针对金融领域的学生,教师在讲授协方差矩阵时,可与资产相关性概念联系起来,让学生认识到它是个对称矩阵,且每个元素是两个不同资产收益率的协方差。对于电子工程专业学生,教师在讲到线性方程求解问题时,教师可告诉学生电路分析中的节电压法或回路电流法常常用到线性方程解,让学生认识到数学对于专业的学习也是相当重要的,同时有助于加深学生的理解和记忆。

3) 理论与实践相结合原则

在当今教育体系中理论与实践相结合是培养学生综合素质和创新能力的重要途径。大多数学生如今仍面临理论与实践脱节,缺乏与专业相关的实践等问题,主要因素是教学方法不当、 学生的兴趣、动机不足等,因此教师应进行适当的引导。在讲矩阵的加减乘以及求逆时,教师可鼓励金融、统计或者经济等专业学生,借助EVIEWS,R语言等软件计算复杂矩阵,计算机学生可鼓励借用C++、Python等语言计算提高专业实践能力;对于线性方程的求解,对于经济学或统计学,可鼓励学生用EVIEWS软件解决问题。理论与实践相结合,一方面,能够激发学生的好奇心和求知欲,另一方面,提高学生的问题解决能力和决策能力,促使学生尝试新方法,增强学生的批判思维和创新意识。

7. 结语

针对本次案例,我以教师的角度让学生由浅入深地体会数学,认识到数学学习的重要性,并将数学与编程学习结合起来,有助于学生改变旧观念,激发学生的学习兴趣,使学生内心深处加强对内容理解,促进学生认识到学科之间相辅相成的关系。正如习近平总书记所说“要注重方式方法,把道理讲深、讲透、讲活,老师要用心教,学生要用心悟,达到沟通心灵、启智润心、激扬斗志。”青年教师要努力学习将课堂教学和实践教学有机结合起来,促进学生在学习中学会思考,在实践中悟出道理,唤醒学生的学习热情与激情。

参考文献

[1] 谭浅浅, 陈智毅, 左欢, 等. 多学科交叉研究生团队的培养与管理策略探讨——以南华大学医学影像研究所为例[J]. 医学教育管理, 2024, 10(3): 326-331.
[2] 侯海燕, 王亚杰, 梁国强, 等. 基于期刊学科分类的学科交叉特征识别方法——以生物医学工程领域为例[J]. 中国科技期刊研究, 2017, 28(4): 350-357.
[3] 邵丽丽. 新工科背景下计算机类专业线性代数课程教学研究[J]. 科学咨询(科技·管理), 2021(36): 285-286.
[4] 刘庆, 姚丽娜, 余美华. Python编程案例教学[M]. 北京: 航空工业出版社, 2020.
[5] 董付国. Python程序设计[M]. 北京: 清华大学出版社, 2020.
[6] 陈强. 机器学习及Python应用[M]. 北京: 高等教育出版社, 2021.
[7] Hu, H., Yan, Y., Zhu, Q. and Zheng, G. (2021) Generation and Frame Characteristics of Predefined Evenly-Distributed Class Centroids for Pattern Classification. IEEE Access, 9, 113683-113691.
[8] 张禾瑞, 郝鈵新. 高等代数[M]. 北京: 高等教育出版社, 2007.