【人工智能基础2】【1】基础知识:数学、Python、Docker技术

部署运行你感兴趣的模型镜像

一、数学基础部分

1. 什么是矩阵的秩?

是指矩阵中行向量或列向量线性独立个数。
衡量矩阵所包含的“有效信息”的多少。例如,对于一个3×3的矩阵,如果它的三行(或三列)向量中,只有两行(或两列)是线性独立的,那么这个矩阵的秩就是2。

矩阵的秩在很多方面都有重要应用,

  1. 比如判断矩阵是否可逆。当矩阵的秩等于它的阶数时,矩阵可逆;反之则不可逆。
  2. 在求解线性方程组时,通过秩判断方程是否有解,有多少解。如果系数矩阵的秩和增广矩阵的秩相等,方程组有解;

 

2. 什么是特征值和特征向量?

对于给定的方阵A,如果存在非零向量x和标量λ,满足Ax = λx,那么λ就是矩阵A的一个特征值,而x就是对应于特征值λ的一个特征向量。

简而言之,特征向量在矩阵作用下仅经历缩放,而缩放的比例即为特征值。

从几何意义上理解,方向不变(或只是反向),但长度会按照特征值的比例进行缩放。 比如,特征值为2,那么特征向量在矩阵变换A后,长度变为原来的2倍;

 

3. 实对称矩阵有两个相同的特征值,对应的特征向量一定正交嘛?

不一定正交。

  1. 实对称矩阵有两个不同的特征值,对应的特征向量一定正交;
  2. 特征值相同时,其对应的特征向量可以是线性无关的,但不一定正交,不过可以通过施密特正交化。

 

4. 行列式为零的矩阵有什么性质?

行列式为零的矩阵被称为奇异矩阵,它具有一系列特殊性质。

  1. 奇异矩阵不可逆;
  2. 该矩阵的行向量和列向量是线性相关的
  3. 秩小于其阶数、奇异矩阵有特征值为零、齐次方程组有非零解。

几何意义:降维

例如,在一个平面几何问题中,如果用矩阵来表示线性变换,奇异矩阵所对应的变换可能会将整个平面压缩到一条直线或一个点上,丢失了原有的一些信息。

 

5. 条件概率的定义是什么?

条件概率是指在给定某一事件已经发生的前提下,另一个事件发生的概率。

假设我们有两个事件A和B,在事件B已经发生的条件下,事件A发生的条件概率记为P(A|B) 。它的计算公式是 P ( A ∣ B ) = P ( A ∩ B ) P ( B ) P(A|B)=\frac{P(A\cap B)}{P(B)} P(AB)=P(B)P(AB)(其中 P ( B ) > 0 P(B)>0 P(B)>0)。
例如,在掷骰子的实验中,事件A表示掷出的点数是偶数,事件B表示掷出的点数大于3。如果已知事件B发生了,也就是掷出的点数是4、5、6中的一个,那么在这个条件下,事件A发生(即点数是4或6)的概率就是条件概率。

 

6. 大数定律的核心思想是什么?

大数定律的核心思想是,当进行大量相同且独立的随机试验时,样本平均值会趋近于总体期望值

简单来讲,就是试验次数越多,实验结果的平均值就越接近理论上的平均值。比如抛硬币实验,理论上抛一枚均匀的硬币,正面朝上的概率是0.5。如果只抛几次,可能正面朝上的次数与反面朝上的次数差异较大,但当抛的次数足够多,比如成千上万次时,正面朝上的频率就会非常接近0.5。

 

7. 什么是向量的线性相关和线性无关?

向量的线性相关:一组向量中,若存在某个向量可以由其他向量的线性组合得到,则称这组向量线性相关。
向量的线性无关:若没有任何一个向量可以由其他向量的线性组合得到,则称这组向量线性无关。

向量的线性相关和线性无关的概念在向量空间的研究、线性方程组的求解以及机器学习中的特征选择等方面都起着关键作用。

 

8. 什么是正定矩阵?

正定矩阵是一种特殊的对称矩阵,对于所有非零向量x,都满足 x T A x > 0 x^TAx>0 xTAx>0 。这意味着当我们用矩阵A对任意一个非零向量x进行变换,再将变换后的向量与原向量做点积,结果始终是一个正数。

正定矩阵的特征值均为正,这一特性使得它在很多领域都有重要应用。

  1. 在二次型的研究中,正定矩阵可以用来判断二次型的性质;
  2. 在优化问题中,正定矩阵常常出现在目标函数的二阶导数矩阵中,帮助我们判断函数的凸性,进而找到函数的最优解
  3. 正定矩阵一定是可逆的,这也为它在数值计算和矩阵运算中提供了便利。

 

二、Python基础

1. Python中常用的数据结构有什么?

Python常用的数据结构有,列表、元组、字典和集合四种数据结构:

  1. 列表有序可变序列,用[]表示,可含任意类型元素,能通过索引访问元素,支持增删改操作,灵活,用于存储需频繁修改和有序访问的数据,如学生成绩、购物清单。
  2. 元组:有序序列,用()表示,不可变,元素创建后不能修改,用于存固定不变数据,如点坐标、日期信息,在某些场景比列表安全,内存使用更高效。
  3. 字典无序键值对集合,用{}表示,通过键快速访问对应值,适用于依特定标识查找和存储数据,如存用户信息。
  4. 集合:无序且元素唯一,用{}表示(空集合用set()),元素不重复,在去重和判断元素是否存在操作上效率高,可用于统计文章中不重复单词。

 

2. 列表和集合的主要区别是什么?

列表(List)和集合(Set)在多个方面存在明显区别。

  1. 结构特性:列表有序,可通过索引访问元素;集合无序,无索引概念。
  2. 元素特点:列表允许重复元素,如[1, 2, 2, 3] ;集合具有去重功能,元素唯一,如{1, 2, 2, 3} 实际为{1, 2, 3}
  3. 适用场景:列表适用于需有序存储且频繁修改元素的场景,如记录学生成绩;集合适合去重操作及判断元素是否存在,如统计文章中不同单词。

 

3. Python常用于数据处理的库有哪些?

  1. NumPy:提供高效多维数组运算功能,核心是ndarray,能快速进行数学运算,因底层用C语言实现,计算效率远超原生Python循环计算。
  2. Pandas用于数据清洗、分析与处理, 有DataFrame和Series数据结构,可读取多种文件,对结构化数据进行筛选、排序等操作,还能处理数据缺失和重复值。
  3. Matplotlib/Seaborn:用于数据可视化,Matplotlib可绘制多种图表,Seaborn基于它进行高级封装,绘图风格更美观专业,在数据分析和报告中实用。
  4. SciPy:含诸多科学计算函数,覆盖数值积分、优化算法、信号处理等领域,可准确计算积分值、解决优化问题。
  5. scikit-learn:提供机器学习和数据预处理工具,有多种机器学习算法,还能进行数据标准化、特征选择等预处理,提升模型性能,应用于数据挖掘和人工智能领域 。

 

三、Docker技术

1. 什么是Docker?它解决了什么问题?

开发应用常需依赖特定系统、数据库及软件库,不同环境部署易因环境不一致出问题,像开发环境正常的应用在测试环境因缺依赖无法启动。

Docker用容器化技术,把应用及其依赖封装成独立运行环境,涵盖从操作系统到软件库的所有运行要素。

一次构建多次使用:
不管在哪部署容器,应用运行方式都相同,不用担心依赖和配置冲突,极大提升软件交付、部署的效率与可靠性,开发、测试、运维人员能专注业务逻辑。比如互联网公司可把Web应用及其依赖打包成Docker容器,快速部署到不同服务器,保证运行环境一致,减少环境差异引发的问题 。

 

2. 容器和虚拟机有什么区别?

容器基于操作系统级虚拟化共享宿主机操作系统内核,启动快,占用资源少

虚拟机属于硬件级虚拟化,每个虚拟机都有独立操作系统,各自拥有操作系统、CPU、内存等资源。所以虚拟机隔离性高,不同虚拟机间几乎无影响。不过其启动慢,几十秒到几分钟不等,且占用资源多。

适用于对隔离性要求极高的场景,像金融机构不同业务系统部署在不同虚拟机,保障数据安全与系统稳定 。

 

3. Docker镜像是如何构成的?什么是分层(Layer)机制?

Docker 镜像是由一系列只读层(Layers)组成的。每一层代表了镜像构建过程中的一个步骤,例如安装一个软件包、复制文件等。这些层是不可变的,一旦创建就不能修改。

  1. 基础层:通常是操作系统镜像,例如 Ubuntu、Linux 等。
  2. 中间层:安装的软件
  3. 顶层:用户自定义的层,例如应用程序代码、环境变量等。

Docker的分层机制是通过联合文件系统实现的。联合文件系统允许将多个文件系统合并为一个逻辑文件系统。有如下作用

效率方面:

  1. 节省空间:相同层可被多镜像共享,减少磁盘占用。
  2. 加速构建:修改镜像时,仅需重建改动层及以上部分。
  3. 加快传输:分发时只传变化层,节省网络带宽和时间。
     

维护与管理:

  1. 便于维护:每层对应一个构建步骤,易追溯和调试。
  2. 利于团队协作:开发者可独立开发不同层,用版本控制管理。

您可能感兴趣的与本文相关的镜像

Python3.9

Python3.9

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

roman_日积跬步-终至千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值