Python深度学习框架:PyTorch、Keras、Scikit-learn、TensorFlow如何使用?学会轻松玩转AI!
前言
我们先简单了解一下PyTorch、Keras、Scikit-learn和TensorFlow都是什么。
想象一下你要盖一座大房子。你需要砖头、水泥、工具等等,对吧?机器学习也是一样,需要一些工具来帮忙。PyTorch、Keras、Scikit-learn和TensorFlow就是四种不同的“工具箱”。
- TensorFlow: 就像一个超级大的、功能强大的工具箱,里面什么工具都有,可以盖各种各样的房子,从简单的到超级复杂的都有。它很厉害,但是也比较复杂,需要多学习才能用好。
- PyTorch: 这个工具箱也很好用,也很强大,但是它比TensorFlow更容易上手,像积木一样,可以一块一块地搭建你的“房子”。
- Keras: 它不是一个独立的工具箱,更像是一个方便的“说明书”,可以让你更容易地使用TensorFlow或者其他一些工具箱。它让盖房子变得简单一些。
- Scikit-learn: 这个工具箱专门用来盖一些比较简单的“小房子”。如果你只需要盖个小棚子,它就足够用了。它比较容易学习,适合初学者。
总的来说,这四个工具箱各有各的优点,适合不同的任务和学习阶段。 你想盖什么样子的“房子”(解决什么问题),就选择合适的工具箱。
接下来让我们去了解一下他们吧
PyTorch
PyTorch是由Facebook开发的开源深度学习框架,以其灵活性和动态计算图结构著称。它非常适合研究和实验,尤其适合那些需要反复修改模型结构的场景。
PyTorch官方文档
什么是PyTorch
想象一下你有一个会学习的玩具机器人。PyTorch就像给这个机器人编程序的积木。
这些积木可以让你教机器人认猫、认狗,甚至玩游戏! 你用积木搭建一个“学习机器”,然后给它看很多猫和狗的照片,告诉它哪些是猫哪些是狗。 机器人会慢慢学习,下次看到猫或狗就能认出来了。
PyTorch就是这些“积木”的集合,有很多种积木,可以让你搭建各种各样的学习机器,让它做各种各样的事情。 它就像一个超级强大的工具箱,帮助人们创造聪明的机器。 它很厉害,但用起来需要学习一些新的“语言”和方法。
核心特点
- 动态计算图:PyTorch支持动态图机制,允许在运行时动态修改模型结构,非常适合实验和研究。
- 强大的社区支持:PyTorch拥有丰富的文档和社区资源,适合开发者快速入门和进行复杂项目开发。
- GPU加速:支持GPU加速,提升模型训练速度。
知识点 | 描述 |
---|---|
super()函数 | 用于初始化继承自nn.Module的参数,实现子类与父类方法的关联。 |
模型保存与加载 | 支持整个网络加参数和仅参数两种保存形式,可以使用.pkl或.pth文件。 |
卷积相关 | 包括卷积核参数共享、局部连接、深度可分离卷积等概念。 |
DataLoader | 用于数据加载,支持批量处理、随机打乱、自定义样本处理等。 |
初始化方式 | 卷积层和全连接层权重采用He-Uniform初始化,bias采用(-1,1)均匀分布。 |
应用场景:
研究环境中,尤其是需要反复修改模型结构的实验场景。
计算机视觉、自然语言处理等领域。
核心组件:
- torch:核心库,包含张量操作、数学函数等。
- torch.nn:神经网络模块,提供卷积层、全连接层等。
- torch.optim:优化器模块,提供SGD、Adam等优化算法。
PyTorch - 线性回归
使用PyTorch实现一个简单的线性回归模型,拟合一条直线。
import torch
import torch.nn as nn
import torch.optim as optim
import matplotlib.pyplot as plt# 1. 准备数据
# 生成一些线性数据
x_train = torch.tensor([[1.0], [2.0], [3.0], [4.0]], dtype=torch.float32)
y_train = torch.tensor([[2.0], [4.0], [6.0], [8.0]], dtype=torch.float32)# 2. 定义模型
class LinearRegressionModel(nn.Module):def __init__(self):super(LinearRegressionModel, self).__init__()self.linear = nn.Linear(1, 1) # 输入和输出都是1维def forward(self, x):return self.linear(x)model = LinearRegressionModel()# 3. 定义损失函数和优化器
criterion = nn.MSELoss()
optimizer = optim.SGD(model.parameters(), lr=0.01)# 4. 训练模型
num_epochs = 1000
for epoch in range(num_epochs):model.train()outputs = model(x_train)loss = criterion(outputs, y_train)optimizer.zero_grad()loss.backward()optimizer.step()if (epoch+1) % 100 == 0:print(f'Epoch [{epoch+1}/{num_epochs}], Loss: {loss.item():.4f}')# 5. 预测并可视化
model.eval()
predicted = model(x_train).detach().numpy()plt.plot(x_train.numpy(), y_train.numpy(), 'ro', label='Original data')
plt.plot(x_train.numpy(), predicted, label='Fitted line')
plt.legend()
plt.show()
经过1000次迭代后,模型拟合的直线应该接近 y = 2x。控制台会输出损失值,最终损失值应该非常小(接近0)。图像上会显示原始数据点和拟合的直线。
TensorFlow
TensorFlow是由谷歌开发的深度学习框架,特别适用于生产环境,尤其是在大规模分布式系统中。它的设计初衷是服务于大规模计算任务,在速度和效率上有显著优势。
TensorFlow官方文档
什么是TensorFlow
想象一下你有一只很聪明的狗狗,你教它认猫和狗的图片。一开始它什么都不懂,但你每次给它看猫的图片就说“猫”,狗的图片就说“狗”。狗狗慢慢地就会学会区分猫和狗了,对吧?
TensorFlow就像一个超级厉害的训练狗狗的工具!它能让电脑像这只狗狗一样,通过看大量的图片(或者其他东西,比如文字、声音)来学习,然后自己学会区分不同的东西,甚至能预测一些事情。
比如,你可以用TensorFlow教电脑识别手写数字,或者翻译不同的语言,甚至能预测明天的天气!它就像一个神奇的工具箱,里面有很多方法能让电脑变得越来越聪明。 它需要很多很多的数据来学习,学习的过程就像教狗狗一样,需要反复练习。
简单来说,TensorFlow就是一个帮助电脑学习的超级工具,让电脑变得越来越聪明!
核心特点
- 静态计算图:TensorFlow的静态计算图使得模型在执行前就可以进行优化,提升效率。
- 广泛的部署工具:提供了从移动设备到服务器的全方位支持,具备强大的生产环境部署能力。
- 生态系统丰富:配套工具如TensorBoard、TensorFlow Lite和TensorFlow Serving,使得其生态系统非常完整。
知识点 | 描述 |
---|---|
静态计算图 | 模型在执行前进行优化,提升效率。 |
TensorBoard | 可视化工具,用于查看模型结构、训练指标等。 |
TensorFlow Lite | 用于在移动设备和嵌入式设备上部署 TensorFlow 模型。 |
TensorFlow Serving | 用于生产环境中的模型部署和推理服务。 |
应用场景:
需要在生产环境中运行的大规模深度学习模型,如推荐系统、语音识别和自动驾驶等。
核心组件:
- tf.Tensor:张量对象,表示多维数组。
- tf.keras:高层API,简化模型构建。
- tf.data:数据输入管道,提供高效的数据加载和预处理。
TensorFlow - 二分类问题
使用TensorFlow实现一个简单的二分类模型,使用逻辑回归。
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense
import numpy as np# 1. 准备数据
x_train = np.array([[1.0, 2.0], [2.0, 3.0], [3.0, 4.0], [4.0, 5.0]])
y_train = np.array([[0], [0], [1], [1]]) # 标签为0或1# 2. 定义模型
model = Sequential([Dense(1, activation='sigmoid', input_shape=(2,))
])# 3. 编译模型
model.compile(optimizer='sgd', loss='binary_crossentropy', metrics=['accuracy'])# 4. 训练模型
model.fit(x_train, y_train, epochs=100, verbose=1)# 5. 预测
predictions = model.predict(x_train)
print(predictions)
模型会输出每个样本属于类别1的概率。随着训练次数增加,模型对训练数据的预测准确率会不断提高。在控制台上,你会看到损失值和准确率随着每个epoch的变化。
Keras
Keras是一个基于TensorFlow的高级神经网络API,设计初衷是为了简化深度学习的开发流程。它提供了简洁的接口,帮助用户快速构建复杂的深度学习模型。
Keras官方文档
什么是Keras
想象一下,你想要教一只小狗做一些事情,比如坐下、握手。 你不会一下子教它所有动作,而是先教它坐下,然后奖励它,再教它握手,再奖励它。
机器学习的 Keras 就像是一个教小狗的工具。 它有很多种“指令”,可以告诉电脑“如果看到这样的东西,就应该做出这样的反应”。 就像你教小狗“看到球就坐下”,Keras 可以教电脑“看到图片里是猫,就判断是猫”。
Keras 帮我们把这些“指令”组织起来,让电脑更容易学习。 它就像一个好老师,让电脑学习得更快、更有效率。 所以,Keras 帮助电脑学习各种事情,比如识别图片、预测天气等等。
核心特点
- 简洁易用:提供了非常直观的API,用户可以快速上手,适合新手和中小型项目。
- 高度模块化:允许用户自由组合层、优化器、损失函数等,模型的可读性和可维护性较高。
- 与TensorFlow完美结合:在TensorFlow 2.x之后,Keras成为TensorFlow的官方高级API,集成更为紧密。
知识点 | 描述 |
---|---|
Sequential模型 | 一种按顺序堆叠网络层的模型。 |
函数式模型 | 用于构建更复杂的模型,支持分支和合并等操作。 |
编译模型 | 使用.compile 方法指定损失函数、优化器和评估指标。 |
训练模型 | 使用.fit() 方法在训练数据上进行迭代训练。 |
应用场景:
快速原型开发和中小型项目,特别是在自然语言处理和图像处理任务中。
核心组件:
- Sequential:顺序模型,用于搭建简单的神经网络。
- Model:函数式模型,用于搭建复杂的神经网络。
- layers:网络层模块,提供卷积层、全连接层等。
Keras - 图像分类(使用MNIST数据集)
使用Keras实现一个简单的图像分类模型,对MNIST数据集进行手写数字识别。
from tensorflow.keras.datasets import mnist
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense, Flatten
from tensorflow.keras.utils import to_categorical# 1. 准备数据
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train = x_train.reshape(-1, 28 * 28).astype('float32') / 255
x_test = x_test.reshape(-1, 28 * 28).astype('float32') / 255
y_train = to_categorical(y_train, 10)
y_test = to_categorical(y_test, 10)# 2. 定义模型
model = Sequential([Flatten(input_shape=(28 * 28,)),Dense(128, activation='relu'),Dense(10, activation='softmax')
])# 3. 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 4. 训练模型
model.fit(x_train, y_train, epochs=5, batch_size=32, verbose=1)# 5. 评估模型
loss, accuracy = model.evaluate(x_test, y_test, verbose=0)
print(f'Test accuracy: {accuracy:.4f}')
模型会在MNIST数据集上进行训练,并在测试集上进行评估。控制台会输出训练过程中的损失值和准确率,最终会输出测试集上的准确率。
Scikit-learn
Scikit-learn是Python生态系统中最受欢迎的传统机器学习库,适用于数据预处理、分类、回归、聚类、降维等任务。它封装了经典的机器学习算法,具有简单易用的API和丰富的算法支持。
Scikit-learn官方文档
什么是Scikit-learn
想象一下,你有一堆积木,各种形状、颜色。你想用这些积木搭出不同的房子。
机器学习就像一个聪明的建筑师,它可以从这些积木(数据)中学习,找出规律,然后自己搭出房子(预测结果)。
Scikit-learn 是一个工具箱,里面有很多不同的积木(算法),可以帮助你搭建各种各样的房子。比如,你想知道哪块积木搭出来的房子最高,Scikit-learn 可以帮你找到。
简单来说,Scikit-learn 帮助你用数据训练机器学习模型,让机器学会如何预测或分类。 它有很多不同的工具,可以根据你想要搭的房子(预测的目标)选择合适的积木(算法)。 就像你用不同的积木搭出高楼、小房子一样,Scikit-learn 可以帮你用数据搭出各种各样的结果。
主要特点:
- 经典机器学习算法:提供监督学习、无监督学习的经典算法。
- 数据处理工具丰富:提供从数据预处理、特征选择到模型评估的全套工具。
- 与其他库兼容:与NumPy、Pandas等数据科学库无缝集成。
知识点 | 描述 |
---|---|
估计器(Estimator) | 包括fit()和predict()方法,用于训练模型和预测。 |
转换器(Transformer) | 用于数据预处理和数据转换,包括fit()、transform()和fit_transform()方法。 |
流水线(Pipeline) | 将多个数据处理步骤和模型训练封装在一起,方便重现实验结果。 |
特征抽取 | 包括文本、图像等数据的特征抽取技术。 |
特征选择 | 删除不重要的特征,降低模型复杂度。 |
降维 | 使用PCA等方法降低数据维度,提取主要特征。 |
应用场景:
传统机器学习任务,如小型数据集上的分类、回归分析、聚类分析等。
核心组件:
- datasets:内置数据集模块,提供玩具数据集和真实世界数据集。
- preprocessing:数据预处理模块,提供归一化、标准化等功能。
- model_selection:模型选择模块,提供交叉验证、网格搜索等功能。
Scikit-learn内置数据集
数据集名称 | 类型 | 描述 |
---|---|---|
Iris | 分类问题 | 包含三种鸢尾花的四个特征,目标是根据这些特征预测鸢尾花的种类 |
Digits | 多分类问题 | 包含手写数字的8x8像素图像,目标是识别这些图像对应的数字 |
Boston House Prices | 回归问题 | 包含波士顿各个区域的房价和其他13个特征,目标是预测房价 |
Breast Cancer | 二分类问题 | 包含乳腺肿瘤的30个特征,目标是预测肿瘤是良性还是恶性 |
Scikit-learn - 鸢尾花分类
使用Scikit-learn实现一个简单的分类模型,对鸢尾花数据集进行分类。
from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import accuracy_score# 1. 准备数据
iris = load_iris()
X = iris.data
y = iris.target# 2. 划分数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 3. 数据标准化
scaler = StandardScaler()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)# 4. 定义并训练模型
model = LogisticRegression(max_iter=200)
model.fit(X_train, y_train)# 5. 预测并评估模型
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f'Test accuracy: {accuracy:.4f}')
模型会对鸢尾花数据集进行分类,并在测试集上进行评估。控制台会输出测试集上的准确率。
相关文章:

Python深度学习框架:PyTorch、Keras、Scikit-learn、TensorFlow如何使用?学会轻松玩转AI!
前言 我们先简单了解一下PyTorch、Keras、Scikit-learn和TensorFlow都是什么。 想象一下你要盖一座大房子。你需要砖头、水泥、工具等等,对吧?机器学习也是一样,需要一些工具来帮忙。PyTorch、Keras、Scikit-learn和TensorFlow就是四种不同的…...

【Linux】安装cuda
一、安装nvidia驱动 # 添加nvidia驱动ppa库 sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt update# 查找推荐版本 sudo ubuntu-drivers devices# 安装推荐版本 sudo apt install nvidia-driver-560# 检验nvidia驱动是否安装 nvidia-smi 二、安装cudatoolkit&…...
为什么DDoS防御很贵?
分布式拒绝服务攻击(DDoS攻击)是一种常见的网络安全威胁,通过大量恶意流量使目标服务器无法提供正常服务。DDoS防御是一项复杂且昂贵的服务,本文将详细探讨为什么DDoS防御如此昂贵,并提供一些实用的代码示例和解决方案…...

将WPS的PPT 无损的用微软的PowerPoint打开
用WPS做了PPT,但是用用PowerPoint打开的时候,老是会有几张图错位。 解决方案:将wps做的PPT另存为PowerPoint的格式 参考博客:解决office的PPT和WPS的PPT不兼容的问题_office ppt和wps中代码不通用-CSDN博客 另存为的时候&#…...
【汇编】uniapp开发
UniApp是一款基于Vue.js构建的跨平台开发框架,可以用于快速开发同时运行在多个平台(包括iOS、Android、H5和小程序)的应用程序。UniApp的目标是提供一套代码即可在不同平台上运行的开发模式,从而节省开发者的时间和精力。本文将介…...
详解Oracle表的类型(二)
1.引言: Oracle数据库提供了多种表类型,以满足不同的数据存储和管理需求。本博文将对Oracle分区表及使用场景进行详细介绍。 2. 分区表 分区表是Oracle数据库中一种重要的表类型,它通过将表数据分割成多个逻辑部分来提高查询性能、管理灵活…...

Docker--通过Docker容器创建一个Web服务器
Web服务器 Web服务器,一般指网站服务器,是驻留于因特网上某种类型计算机的程序。 Web服务器可以向浏览器等Web客户端提供文档,也可以放置网站文件以供全世界浏览,或放置数据文件以供全世界下载。 Web服务器的主要功能是提供网上…...

Next.js-样式处理
#题引:我认为跟着官方文档学习不会走歪路 Next.js 支持多种为应用程序添加样式的方法,包括: CSS Modules:创建局部作用域的 CSS 类,避免命名冲突并提高可维护性。全局 CSS:使用简单,对于有传统…...
整合Springboot shiro jpa mysql 实现权限管理系统(附源码地址)
一、在开发企业级应用时,权限管理是一个至关重要的功能。本文将围绕 Spring Boot、JPA、MySQL 和 Apache Shiro,构建一个基础的权限管理系统,涵盖用户认证与授权等核心功能。 一、技术选型及框架介绍 Spring Boot:简化 Spring 应用的配置和开发。JPA:实现数据持久化,提供…...

极智嘉嵌入式面试题及参考答案
对于交叉编译器的理解 交叉编译器是一种在一个计算机平台上为另一个不同架构的计算机平台生成可执行代码的编译器。它在嵌入式系统开发中起着关键作用。 从其必要性来看,嵌入式系统通常使用的处理器架构与我们日常使用的 PC 等通用计算机不同,如 ARM、MI…...
【MySQL】数据库核心技术与应用指南
数据库的各种概念 1. 指一门学科《数据库原理与应用》。(研究如何设计实现一个数据库) 2. 指一类用来管理数据的软件。 3. 指某一个具体的数据库软件。 4. 指部署了某个数据库软件的电脑。 数据库软件 关系型数据库 1. 使用 “表” 的结构来组织数据。…...

23省赛区块链应用与维护(房屋租凭)
23省赛区块链应用与维护(房屋租凭) 背景描述 随着异地务工人员的增多,房屋租赁成为一个广阔市场。目前,现有技术中的房屋租赁是由房主发布租赁信息,租赁信息发布在房屋中介或租赁软件,租客获取租赁信息后,现场看房,并签订纸质的房屋租赁合同,房屋租赁费用通过中介或…...
深度学习4
一、手动构建模型 epoch 一次完整数据的训练过程(可细分多次训练),称为 一代训练 Batch 小部分样本对权重的更新,称为 一批数据 iteration 使用一个 Batch 的过程,称为 一次训练 步骤: 1、生成 x,y 的…...
跳绳视觉计数方案
产品概述 提供基于摄像头视觉技术的跳绳计数解决方案,可精准完成跳绳动作的实时计数,效果完全满足考试水平的要求。方案采用先进的计算机视觉算法,结合高效的模型架构,确保计数的准确性和稳定性。适用场景 学校体育考试ÿ…...

TEA加密逆向
IDA伪代码 do{if ( v15 )v17 v38; // x120x0->0x79168ba790, 输入字符串经过check1处理后字符串elsev17 v40;v18 (unsigned int *)&v17[v16]; // 0x78cbbd47fc add x12, x12, x8 ; x120x79168ba790->…...
LeetCode 404.左叶子之和
题目:给定二叉树的根节点 root ,返回所有左叶子之和。 思路:一个节点为「左叶子」节点,当且仅当它是某个节点的左子节点,并且它是一个叶子结点。因此我们可以考虑对整 node 时,如果它的左子节点是一个叶子…...

01-go入门
文章目录 Go语言学习1. 简介安装windows安装linux安装编译工具安装-goland 2. 入门2.1 Helloworld注释 2.2 变量初始化打印内存地址变量交换匿名变量作用域局部变量全局变量 2.3 常量iota 2.4 数据类型布尔整数浮点类型复数字符串定义字符串字符串拼接符定义多行字符串 map数据…...

【经典】抽奖系统(HTML,CSS、JS)
目录 1、添加参与者 2、多次添加 3、点击抽奖 功能介绍: 使用方法: 完整代码: 一个简单但功能强大的抽奖系统的示例,用于在网页上实现抽奖。 1、添加参与者 2、多次添加 3、点击抽奖 功能介绍: 参与者添加&…...

GoF设计模式——结构型设计模式分析与应用
文章目录 UML图的结构主要表现为:继承(抽象)、关联 、组合或聚合 的三种关系。1. 继承(抽象,泛化关系)2. 关联3. 组合/聚合各种可能的配合:1. 关联后抽象2. 关联的集合3. 组合接口4. 递归聚合接…...

Java后端如何进行文件上传和下载 —— 本地版
简介: 本文详细介绍了在Java后端进行文件上传和下载的实现方法,包括文件上传保存到本地的完整流程、文件下载的代码实现,以及如何处理文件预览、下载大小限制和运行失败的问题,并提供了完整的代码示例。 大体思路 1、文件上传 …...

多模态2025:技术路线“神仙打架”,视频生成冲上云霄
文|魏琳华 编|王一粟 一场大会,聚集了中国多模态大模型的“半壁江山”。 智源大会2025为期两天的论坛中,汇集了学界、创业公司和大厂等三方的热门选手,关于多模态的集中讨论达到了前所未有的热度。其中,…...

工业安全零事故的智能守护者:一体化AI智能安防平台
前言: 通过AI视觉技术,为船厂提供全面的安全监控解决方案,涵盖交通违规检测、起重机轨道安全、非法入侵检测、盗窃防范、安全规范执行监控等多个方面,能够实现对应负责人反馈机制,并最终实现数据的统计报表。提升船厂…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...

UDP(Echoserver)
网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法:netstat [选项] 功能:查看网络状态 常用选项: n 拒绝显示别名&#…...
Spring AI 入门:Java 开发者的生成式 AI 实践之路
一、Spring AI 简介 在人工智能技术快速迭代的今天,Spring AI 作为 Spring 生态系统的新生力量,正在成为 Java 开发者拥抱生成式 AI 的最佳选择。该框架通过模块化设计实现了与主流 AI 服务(如 OpenAI、Anthropic)的无缝对接&…...

2025季度云服务器排行榜
在全球云服务器市场,各厂商的排名和地位并非一成不变,而是由其独特的优势、战略布局和市场适应性共同决定的。以下是根据2025年市场趋势,对主要云服务器厂商在排行榜中占据重要位置的原因和优势进行深度分析: 一、全球“三巨头”…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...

基于PHP的连锁酒店管理系统
有需要请加文章底部Q哦 可远程调试 基于PHP的连锁酒店管理系统 一 介绍 连锁酒店管理系统基于原生PHP开发,数据库mysql,前端bootstrap。系统角色分为用户和管理员。 技术栈 phpmysqlbootstrapphpstudyvscode 二 功能 用户 1 注册/登录/注销 2 个人中…...

数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !
我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...