【Python】教你彻底了解Python中的数据科学与机器学习

​​​​在这里插入图片描述

文章目录

    • 一、数据科学的基本概念
      • 1. 数据收集
      • 2. 数据清洗
      • 3. 数据分析
      • 4. 数据可视化
      • 5. 机器学习
    • 二、常用的数据科学库
      • 1. Pandas
        • 1.1 创建Series和DataFrame
        • 1.2 数据操作
      • 2. NumPy
        • 2.1 创建数组
        • 2.2 数组操作
      • 3. Scikit-learn
        • 3.1 数据预处理
        • 3.2 特征工程
    • 三、数据预处理与特征工程
      • 1. 处理缺失值
        • 1.1 删除缺失值
        • 1.2 填充缺失值
      • 2. 数据去重
      • 3. 数据规范化
      • 4. 特征提取
    • 四、模型构建与评估
      • 1. 线性回归
        • 1.1 构建线性回归模型
      • 2. 决策树
        • 2.1 构建决策树模型
      • 3. 随机森林
        • 3.1 构建随机森林模型
    • 五、超参数调优
      • 1. 网格搜索
        • 1.1 使用网格搜索进行超参数调优
      • 2. 随机搜索
        • 2.1 使用随机搜索进行超参数调优
    • 六、模型部署与应用
      • 1. 使用Flask部署模型
        • 1.1 保存模型
        • 1.2 创建Flask应用
        • 1.3 调用API
    • 七、实际应用示例
      • 1. 房价预测
        • 1.1 导入数据
        • 1.2 数据预处理
        • 1.3 构建和评估模型
      • 2. 客户流失预测
        • 1.1 导入数据
        • 1.2 数据预处理
        • 1.3 构建和评估模型
    • 结论

Python作为一种灵活且功能强大的编程语言,在数据科学与机器学习领域得到了广泛应用。其丰富的库和工具集使得数据处理、分析、建模和部署变得更加高效。在这篇文章中,我们将深入探讨Python在数据科学与机器学习中的应用,涵盖数据科学的基本概念、常用的数据科学库、数据预处理与特征工程、模型构建与评估、超参数调优、模型部署与应用,以及一些实际应用示例。

一、数据科学的基本概念

数据科学是一门通过数据分析、数据挖掘和机器学习技术来发现数据中隐藏的模式和规律,从而解决实际问题的学科。以下是一些数据科学的基本概念:

1. 数据收集

数据收集是数据科学的第一步,指从各种数据源获取数据的过程。数据源可以是数据库、API、文件(如CSV、Excel)、网页爬虫等。

2. 数据清洗

数据清洗是指对原始数据进行清理和处理,以去除数据中的噪音、错误和缺失值。数据清洗通常包括数据去重、处理缺失值、数据格式转换等。

3. 数据分析

数据分析是指对数据进行统计分析和建模,从中提取有价值的信息。数据分析包括描述性统计分析和推断性统计分析。

4. 数据可视化

数据可视化是指使用图表和图形展示数据分析的结果,以便更直观地理解数据。

5. 机器学习

机器学习是数据科学的重要组成部分,它通过构建和训练模型,使计算机能够自动从数据中学习并作出预测或决策。

二、常用的数据科学库

Python提供了丰富的数据科学库,其中最常用的是Pandas、NumPy和Scikit-learn。

1. Pandas

Pandas是Python中最常用的数据处理和分析库,它提供了高效的数据操作工具。Pandas的核心数据结构是SeriesDataFrame

1.1 创建Series和DataFrame

以下是创建SeriesDataFrame的示例:

import pandas as pd

# 创建Series
data = [1, 2, 3, 4, 5]
series = pd.Series(data)
print(series)

# 创建DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [24, 27, 22, 32],
    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston']
}
df = pd.DataFrame(data)
print(df)
1.2 数据操作

Pandas提供了丰富的数据操作方法,包括选择、过滤、排序、分组等。以下是一些常见的数据操作示例:

# 选择列
print(df['Name'])

# 选择行
print(df.iloc[1])

# 过滤数据
print(df[df['Age'] > 25])

# 排序数据
print(df.sort_values(by='Age'))

# 分组数据
print(df.groupby('City').mean())

2. NumPy

NumPy是Python中最常用的数值计算库,它提供了支持大型多维数组和矩阵运算的功能,以及丰富的数学函数库。

2.1 创建数组

以下是创建NumPy数组的示例:

import numpy as np

# 创建一维数组
array1 = np.array([1, 2, 3, 4, 5])
print(array1)

# 创建二维数组
array2 = np.array([[1, 2, 3], [4, 5, 6]])
print(array2)

# 创建全零数组
zeros = np.zeros((3, 3))
print(zeros)

# 创建全一数组
ones = np.ones((3, 3))
print(ones)

# 创建随机数组
random_array = np.random.random((3, 3))
print(random_array)
2.2 数组操作

NumPy提供了丰富的数组操作方法,包括切片、索引、数学运算等。以下是一些常见的数组操作示例:

# 数组切片
print(array2[:, 1])

# 数组索引
print(array2[1, 2])

# 数组加法
print(array1 + array1)

# 数组乘法
print(array1 * 2)

# 数组矩阵乘法
print(np.dot(array2, array2.T))

3. Scikit-learn

Scikit-learn是一个功能强大的Python机器学习库,它提供了丰富的机器学习算法和工具,用于数据预处理、特征工程、模型构建、模型评估和超参数调优。

3.1 数据预处理

Scikit-learn提供了多种数据预处理方法,如标准化、归一化、缺失值处理等。以下是一些示例:

from sklearn.preprocessing import StandardScaler, MinMaxScaler, Imputer

# 标准化
scaler = StandardScaler()
data = [[1, 2], [2, 3], [4, 5]]
scaled_data = scaler.fit_transform(data)
print(scaled_data)

# 归一化
scaler = MinMaxScaler()
scaled_data = scaler.fit_transform(data)
print(scaled_data)

# 缺失值处理
data = [[1, 2], [2, None], [4, 5]]
imputer = SimpleImputer(strategy='mean')
imputed_data = imputer.fit_transform(data)
print(imputed_data)
3.2 特征工程

特征工程是指从原始数据中提取有用的特征,以便进行数据分析和建模。以下是一些示例:

from sklearn.preprocessing import OneHotEncoder, LabelEncoder

# 独热编码
data = [['cat'], ['dog'], ['fish']]
encoder = OneHotEncoder()
encoded_data = encoder.fit_transform(data).toarray()
print(encoded_data)

# 标签编码
data = ['cat', 'dog', 'fish']
label_encoder = LabelEncoder()
encoded_data = label_encoder.fit_transform(data)
print(encoded_data)

三、数据预处理与特征工程

数据预处理和特征工程是数据科学和机器学习的关键步骤。它们包括处理缺失值、数据去重、数据规范化、特征提取等。

1. 处理缺失值

缺失值是数据处理中常见的问题,处理缺失值的方法包括删除缺失值、填充缺失值、插值等。

1.1 删除缺失值

以下是删除缺失值的示例:

# 创建带有缺失值的DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [24, None, 22, 32],
    'City': ['New York', 'Los Angeles', None, 'Houston']
}
df = pd.DataFrame(data)

# 删除包含缺失值的行
df.dropna(inplace=True)
print(df)
1.2 填充缺失值

以下是填充缺失值的示例:

# 创建带有缺失值的DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David'],
    'Age': [24, None, 22, 32],
    'City': ['New York', 'Los Angeles', None, 'Houston']
}
df = pd.DataFrame(data)

# 填充缺失值
df.fillna({'Age': df['Age'].mean(), 'City': 'Unknown'}, inplace=True)
print(df)

2. 数据去重

数据去重是指删除数据中重复的记录。以下是数据去重的示例:

# 创建带有重复值的DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Alice'],
    'Age': [24, 27, 22, 32, 24],
    'City': ['New York', 'Los Angeles', 'Chicago', 'Houston', 'New York']
}
df = pd.DataFrame(data)

# 删除重复值
df.drop_duplicates(inplace=True)
print(df)

3. 数据规范化

数据规范化是指将数据转换为统一的格式,以便进行进一步的分析和处理。以下是数据规范化的示例:

# 创建带有不一致格式的DataFrame
data = {
    'Name': ['Alice', 'BOB', 'Charlie', 'david'],
    'Age': [24, 27, 22, 32],
    'City': ['New York

', 'Los Angeles', 'Chicago', 'Houston']
}
df = pd.DataFrame(data)

# 将姓名转换为一致的格式
df['Name'] = df['Name'].str.capitalize()
print(df)

4. 特征提取

特征提取是指从原始数据中提取有用的特征,以便进行数据分析和建模。以下是特征提取的示例:

# 创建带有日期的DataFrame
data = {
    'Date': ['2023-01-01', '2023-01-02', '2023-01-03'],
    'Value': [100, 200, 150]
}
df = pd.DataFrame(data)

# 提取日期特征
df['Date'] = pd.to_datetime(df['Date'])
df['Year'] = df['Date'].dt.year
df['Month'] = df['Date'].dt.month
df['Day'] = df['Date'].dt.day
print(df)

四、模型构建与评估

模型构建与评估是机器学习的核心步骤。我们将使用Scikit-learn构建和评估模型,包括线性回归、决策树、随机森林等常见算法。

1. 线性回归

线性回归是一种简单的监督学习算法,用于预测目标变量与特征变量之间的线性关系。

1.1 构建线性回归模型

以下示例展示了如何构建和评估线性回归模型:

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# 创建数据
X = [[1], [2], [3], [4], [5]]
y = [1, 3, 2, 3, 5]

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 构建模型
model = LinearRegression()
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 评估模型
mse = mean_squared_error(y_test, y_pred)
print(f"Mean Squared Error: {mse}")

2. 决策树

决策树是一种非参数的监督学习算法,用于分类和回归任务。

2.1 构建决策树模型

以下示例展示了如何构建和评估决策树模型:

from sklearn.tree import DecisionTreeClassifier
from sklearn.metrics import accuracy_score

# 创建数据
X = [[0, 0], [1, 1], [1, 0], [0, 1]]
y = [0, 1, 1, 0]

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 构建模型
model = DecisionTreeClassifier()
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")

3. 随机森林

随机森林是一种集成学习算法,通过构建多个决策树并结合其预测结果,来提高模型的准确性和稳定性。

3.1 构建随机森林模型

以下示例展示了如何构建和评估随机森林模型:

from sklearn.ensemble import RandomForestClassifier

# 创建数据
X = [[0, 0], [1, 1], [1, 0], [0, 1]]
y = [0, 1, 1, 0]

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 构建模型
model = RandomForestClassifier(n_estimators=10)
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")

五、超参数调优

超参数调优是机器学习中提高模型性能的重要步骤。Scikit-learn提供了多种超参数调优方法,如网格搜索(Grid Search)和随机搜索(Random Search)。

1. 网格搜索

网格搜索是一种系统的超参数调优方法,通过遍历所有可能的参数组合,找到最佳参数。

1.1 使用网格搜索进行超参数调优

以下示例展示了如何使用网格搜索进行超参数调优:

from sklearn.model_selection import GridSearchCV

# 创建数据
X = [[0, 0], [1, 1], [1, 0], [0, 1]]
y = [0, 1, 1, 0]

# 构建模型
model = DecisionTreeClassifier()

# 定义参数网格
param_grid = {
    'max_depth': [1, 2, 3],
    'min_samples_split': [2, 3, 4]
}

# 进行网格搜索
grid_search = GridSearchCV(model, param_grid, cv=3)
grid_search.fit(X, y)

# 打印最佳参数
print(f"Best Parameters: {grid_search.best_params_}")

2. 随机搜索

随机搜索是一种更高效的超参数调优方法,通过随机选择参数组合,找到近似最佳参数。

2.1 使用随机搜索进行超参数调优

以下示例展示了如何使用随机搜索进行超参数调优:

from sklearn.model_selection import RandomizedSearchCV

# 创建数据
X = [[0, 0], [1, 1], [1, 0], [0, 1]]
y = [0, 1, 1, 0]

# 构建模型
model = DecisionTreeClassifier()

# 定义参数分布
param_dist = {
    'max_depth': [1, 2, 3, None],
    'min_samples_split': [2, 3, 4]
}

# 进行随机搜索
random_search = RandomizedSearchCV(model, param_dist, cv=3, n_iter=5)
random_search.fit(X, y)

# 打印最佳参数
print(f"Best Parameters: {random_search.best_params_}")

六、模型部署与应用

模型部署与应用是机器学习项目的最后一步。我们将讨论如何将训练好的模型部署到生产环境,并通过API进行调用。

1. 使用Flask部署模型

Flask是一个轻量级的Web框架,非常适合用于部署机器学习模型。以下示例展示了如何使用Flask部署机器学习模型:

1.1 保存模型

首先,我们需要保存训练好的模型:

import pickle
from sklearn.linear_model import LinearRegression

# 创建并训练模型
model = LinearRegression()
X = [[1], [2], [3], [4], [5]]
y = [1, 3, 2, 3, 5]
model.fit(X, y)

# 保存模型
with open('model.pkl', 'wb') as file:
    pickle.dump(model, file)
1.2 创建Flask应用

接下来,我们创建一个Flask应用来加载和调用模型:

from flask import Flask, request, jsonify
import pickle

app = Flask(__name__)

# 加载模型
with open('model.pkl', 'rb') as file:
    model = pickle.load(file)

@app.route('/predict', methods=['POST'])
def predict():
    data = request.get_json(force=True)
    prediction = model.predict([data['input']])
    return jsonify({'prediction': prediction[0]})

if __name__ == '__main__':
    app.run(debug=True)
1.3 调用API

启动Flask应用后,可以通过HTTP请求调用API:

import requests

url = 'http://127.0.0.1:5000/predict'
data = {'input': [2]}
response = requests.post(url, json=data)
print(response.json())

七、实际应用示例

以下是两个实际应用示例,演示如何使用Python进行数据科学和机器学习。

1. 房价预测

以下示例展示了如何使用Scikit-learn构建和评估一个简单的房价预测模型:

1.1 导入数据
import pandas as pd

# 导入数据
data = pd.read_csv('house_prices.csv')
print(data.head())
1.2 数据预处理
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import StandardScaler

# 选择特征和目标
X = data[['GrLivArea', 'TotalBsmtSF', 'GarageArea']]
y = data['SalePrice']

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 标准化数据
scaler = StandardScaler

()
X_train = scaler.fit_transform(X_train)
X_test = scaler.transform(X_test)
1.3 构建和评估模型
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# 构建模型
model = LinearRegression()
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 评估模型
mse = mean_squared_error(y_test, y_pred)
print(f"Mean Squared Error: {mse}")

2. 客户流失预测

以下示例展示了如何使用Scikit-learn构建和评估一个客户流失预测模型:

1.1 导入数据
import pandas as pd

# 导入数据
data = pd.read_csv('customer_churn.csv')
print(data.head())
1.2 数据预处理
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import LabelEncoder

# 选择特征和目标
X = data.drop('Churn', axis=1)
y = data['Churn']

# 编码分类特征
label_encoder = LabelEncoder()
for column in X.select_dtypes(include=['object']).columns:
    X[column] = label_encoder.fit_transform(X[column])

# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
1.3 构建和评估模型
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score

# 构建模型
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

# 评估模型
accuracy = accuracy_score(y_test, y_pred)
print(f"Accuracy: {accuracy}")

结论

Python是数据科学与机器学习中的一种强大工具,提供了丰富的库和工具集,使得数据处理、分析、建模和部署变得更加高效。在本文中,我们深入探讨了数据科学的基本概念、常用的数据科学库(如Pandas、NumPy和Scikit-learn)、数据预处理与特征工程、模型构建与评估、超参数调优、模型部署与应用,以及一些实际应用示例。希望这篇文章能帮助你更好地理解和应用Python中的数据科学与机器学习技术,从而在实际项目中获得更多的洞察和成功。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/705544.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

力扣每日一题 6/13 反悔贪心算法

博客主页:誓则盟约系列专栏:IT竞赛 专栏关注博主,后期持续更新系列文章如果有错误感谢请大家批评指出,及时修改感谢大家点赞👍收藏⭐评论✍ 2813.子序列最大优雅度【困难】 题目: 给你一个长度为 n 的二…

vue技巧(十)全局配置使用(打包后可修改配置文件)

1、背景 vue打包目前主流用的有webpack和vite两种,默认用的webpack。(二者的区别大家可以各自上网查,我没用过vite,所以不过多介绍)vue通过webpack打包后,源码会被压缩,但一些关键配置可…

Redis高级特性和应用:慢查询、Pipeline、事务、Lua

Redis提供了许多高级特性,可以帮助优化和管理系统性能。本文将介绍Redis的慢查询、Pipeline、事务和Lua脚本的使用及其相关配置。 Redis的慢查询 慢查询日志是开发和运维人员定位系统慢操作的重要工具。Redis也提供了类似的功能,通过记录超过预设阀值的…

C# WPF入门学习主线篇(三十四)—— 图形和动画

C# WPF入门学习主线篇(三十四)—— 图形和动画 图形和动画是WPF的重要组成部分,能够大幅提升应用程序的用户体验。本篇博客将详细介绍WPF中图形和动画的使用方法,涵盖基本图形绘制、动画创建及多媒体的应用。通过本文,…

2024 Idea最新激活码

idea的激活与安装 操作如下: ① 打开网站:https://web.52shizhan.cn 切换到:激活码,点击获取 ② 这个时候就跳转到现成账号页面,点击获取体验号,如图 ③ 来到了获取现成账号的页面了。输入你的邮箱账号即…

二十三、生成帮助文档

二十一、Java工具类的创建 二十二、Jar包制作及使用 这一篇开始学习如何生成帮助文档。为什么要学习生成帮助文档? 1、工具类已经制作好了,Java工具类的创建的类是一个.java文件,编译后成.class文件看不懂,所以需要对应的帮助文档…

我的高考往事

高考对于每一个参加过的人来说,都是一段非常难忘的回忆。 我参加高考,是在2001年。虽然迄今已经过去了23年,但很多细节仍然记忆犹新。 今天这篇文章,我就和大家分享一下,我的高考往事。 █ 青少年时代 我的老家是在江西…

函数式开发接口( Consumer、Function)在实际开发中的应用场景

之前有个扫码下载文件需求,由于要同时进行记录下载人的记录。一开始用的是异步进行日志记录。发现有的用户扫码下载了一次文件,日志记录了三条。这种很容易联想到是因为网络抖动造成的。 问题代码 由于日志记录是异步的,文件下载需要时间。同…

TikTok网红营销指南 | 怎么找到TikTok网红并进行合作?

如果你打算在tiktok上进行营销,忽略与tiktok网红合作无异于错失良机,时尚博主Sophia仅用一条30秒的视频展示了自己从一家新兴品牌购买的连衣裙,视频迅速获得了数百万的点赞和评论,也让该品牌的销量翻了好几倍。 这种与网红合作的策…

Mac 下载并激活IDEA

1.https://3.jetbra.in 打开这个网站,点击第一个网速比较快的连接 2.在新页面顶部有一个蓝色的下载链接文字< jetbra.zip(20220801) >点击下载 3.步骤2打开的页面不要关闭后面还有用 4.在idea官网下载idea对应的版本 https://www.jetbrains.com/idea/download/other.htm…

ADALORA: ADAPTIVE BUDGET ALLOCATION FOR PARAMETER-EFFICIENT FINE-TUNING

文章汇总 LoRA&#xff1a; W W ( 0 ) Δ W ( 0 ) B A WW^{(0)}\Delta W^{(0)}BA WW(0)ΔW(0)BA AdaLoRA&#xff1a;$WW^{(0)}\Delta W^{(0)}P\Lambda Q$ AdaLoRA的做法是让模型学习SVD分解的近似。在损失函数中增加了惩罚项(4)&#xff0c;防止矩阵 P P P和 Q Q Q偏离正…

Leetcode 力扣117. 填充每个节点的下一个右侧节点指针 II (抖音号:708231408)

给定一个二叉树&#xff1a; struct Node {int val;Node *left;Node *right;Node *next; } 填充它的每个 next 指针&#xff0c;让这个指针指向其下一个右侧节点。如果找不到下一个右侧节点&#xff0c;则将 next 指针设置为 NULL 。 初始状态下&#xff0c;所有 next 指针都…

UITableView之显示单组数据Demo

需求 UITableView实现显示单组数据。尝试设置不同行高度不同。 效果&#xff1a; 数据展示 实现 与之前分组显示数据的区别在于懒加载的数据模型不同。 &#xff08;1&#xff09;声明数据模型类 类的属性一定要和plist中数据的字段保持一致 interface CZhero : NSObject /…

干货下载 |《数据治理:数据中台建设与能力提升策略》

在当今这个信息爆炸的时代&#xff0c;数据已经成为企业最宝贵的资产之一。数据不仅能帮助企业洞察市场趋势&#xff0c;还能优化业务流程&#xff0c;提升运营效率&#xff0c;进而在激烈的市场竞争中占据优势地位。然而&#xff0c;如何有效地管理和利用这些数据&#xff0c;…

Centos: ifconfig command not found且ip addr查不到服务器IP

前段时间部门新派发了服务器&#xff0c;让我过去使用U盘装机&#xff0c;装完后使用ifconfig查不到服务器IP地址&#xff0c;ip addr也是查不到 ifconfig&#xff1a;command not found (这两个图片先用虚拟机的替代一下) 在网上找资料(CSDN&#xff0c;博客园&#xff0c;知乎…

FISCO BCOS x GitLink,为国产开源技术生态注入新活力

作为中国领先的区块链底层平台之一&#xff0c;FISCO BCOS 自成立以来始终致力于推动国产开源区块链技术的应用和普及。近期&#xff0c;FISCO BCOS 将开源代码托管到CCF官方代码托管平台 GitLink &#xff08;确实开源&#xff09;&#xff0c;为国产开源技术生态注入新活力。…

平安科技智能运维案例

平安科技智能运维案例 在信息技术迅速发展的背景下&#xff0c;平安科技面临着运维规模庞大、内容复杂和交付要求高等挑战。通过探索智能运维&#xff0c;平安科技建立了集中配置管理、完善的运营管理体系和全生命周期运维平台&#xff0c;实施了全链路监控&#xff0c;显著提…

Stable diffusion 3 正式开源

6月12日晚&#xff0c;著名开源大模型平台Stability AI正式开源了&#xff0c;文生图片模型Stable Diffusion 3 Medium&#xff08;以下简称“SD3-M”&#xff09;权重。 SD3-M有20亿参数&#xff0c;平均生成图片时间在2—10秒左右推理效率非常高&#xff0c;同时对硬件的需求…

Qt篇——-1: error: fatal error: no input files问题解决

有时在pro或pri中引用的文件被删除或重命名后&#xff0c;会导致pro或pri文件中自动出现两个连续的//&#xff0c;这将导致我们编译时提示&#xff1a;-1: error: fatal error: no input files。 这是因为qmake 语法里每增加一个源文件或一个配置用一个斜杠结束&#x…

SJ901-II安全网耐冲击贯穿测试仪

一、主要用途 依据GB5725-2009最新国家标准研发&#xff0c;主要用于检测安全网的耐冲击性能和贯穿性能。 二、仪器特征 1、测试架采用多模块设计理念&#xff0c;可以实现安全网和安全带的试验。后期如果您们上安全带整体动态和整体静态试验&#xff0c;把所需部件直接安装到…