Python的那些事第十八篇:框架与算法应用研究,人工智能与机器学习

news2025/2/13 4:55:25

人工智能与机器学习:框架与算法应用研究


摘要

本文深入探讨了人工智能与机器学习领域的核心框架和技术,包括TensorFlow、PyTorch和Scikit-learn库。文章首先介绍了TensorFlow和PyTorch的安装与配置方法,详细阐述了它们的基础概念,如张量、图、会话、自动求导等,并展示了如何使用这些框架构建神经网络模型。接着,文章深入分析了Scikit-learn库中的经典机器学习算法,包括线性回归、决策树、KNN等,并探讨了数据预处理和模型评估方法。通过代码案例和实验结果,本文展示了这些框架和算法在实际问题中的应用效果,为人工智能与机器学习的研究和实践提供了参考。

关键词

人工智能;机器学习;TensorFlow;PyTorch;Scikit-learn;神经网络;数据预处理;模型评估


1. 引言

1.1 研究背景

随着人工智能技术的飞速发展,机器学习已成为该领域的重要分支。机器学习是人工智能的核心技术之一,它通过算法使计算机系统能够从数据中学习和改进。近年来,随着数据量的爆炸性增长和计算能力的显著提升,机器学习在图像识别、自然语言处理、语音识别、医疗诊断、金融风险预测等多个领域取得了显著的成就。TensorFlow、PyTorch和Scikit-learn是当前最流行的机器学习框架和库,它们为研究人员和开发者提供了强大的工具来构建、训练和评估模型。TensorFlow以其强大的计算图和分布式计算能力而闻名;PyTorch以其动态计算图和易用性受到开发者的青睐;Scikit-learn则以其丰富的机器学习算法和简洁的API成为数据科学家的首选工具。本文将详细介绍这些框架的安装与配置、基础概念、模型构建方法,并通过实验验证其在实际问题中的应用效果。

1.2 研究目的

机器学习的快速发展使得相关技术和工具不断更新,对于初学者和研究人员来说,快速掌握这些工具并应用于实际问题是一个重要的挑战。本文旨在为初学者和研究人员提供一个全面的指南,帮助他们快速掌握TensorFlow、PyTorch和Scikit-learn的基本使用方法,并通过实际案例展示如何应用这些框架解决机器学习问题。通过本文的介绍,读者将能够理解这些框架的核心概念,掌握模型构建的基本步骤,并学会如何评估模型的性能。

1.3 研究方法

本文通过文献综述、代码实现和实验验证的方法,系统地介绍了TensorFlow、PyTorch和Scikit-learn的使用方法,并对比了它们在不同场景下的优缺点。首先,通过文献综述,本文总结了当前机器学习领域的主要研究进展和框架的最新发展。其次,通过代码实现,本文展示了如何使用这些框架构建和训练模型,并提供了详细的代码案例。最后,通过实验验证,本文对比了这些框架在不同数据集和任务中的性能表现,为读者提供了直观的参考。


2. TensorFlow框架

2.1 安装与配置

TensorFlow是一个开源的机器学习框架,支持多种操作系统和硬件平台。它由Google Brain团队开发,广泛应用于学术研究和工业界。TensorFlow提供了强大的功能,包括自动微分、分布式训练和多平台支持。以下是基于Python的安装步骤:

  1. 安装Python:确保系统已安装Python(推荐版本3.7及以上)。Python是TensorFlow的运行环境,建议使用Anaconda等工具来管理Python环境,以便更方便地安装和管理依赖包。

  2. 安装TensorFlow

    pip install tensorflow

    TensorFlow提供了多个版本,包括CPU版本和GPU版本。如果需要使用GPU加速,可以安装tensorflow-gpu版本,并确保系统已安装NVIDIA CUDA和cuDNN。

  3. 验证安装

    import tensorflow as tf
    print(tf.__version__)

    验证安装是否成功,确保TensorFlow能够正常运行。

2.2 基础概念

2.2.1 张量(Tensor)

张量是TensorFlow中的基本数据结构,表示多维数组。张量可以是标量(0维)、向量(1维)、矩阵(2维)或更高维的数组。张量的形状(shape)定义了其维度和大小。例如:

import tensorflow as tf

# 创建一个标量张量
scalar = tf.constant(5)
print(scalar)

# 创建一个向量张量
vector = tf.constant([1, 2, 3])
print(vector)

# 创建一个矩阵张量
matrix = tf.constant([[1, 2], [3, 4]])
print(matrix)

张量的创建可以通过tf.constanttf.Variabletf.constant创建的是不可变的张量,而tf.Variable创建的是可变的张量,通常用于模型的参数。

2.2.2 图(Graph)

图是TensorFlow中计算的抽象表示,定义了张量之间的计算关系。图由节点(操作)和边(张量)组成。TensorFlow的计算图可以分为静态图和动态图。静态图需要先定义整个计算图,然后通过会话(Session)执行计算。动态图则允许在运行时动态构建和修改计算图。以下是静态图的示例:

# 创建一个默认图
graph = tf.Graph()
with graph.as_default():
    a = tf.constant(2, name='a')
    b = tf.constant(3, name='b')
    c = a + b
print(graph.as_graph_def())

在静态图中,计算图的定义和执行是分离的。首先定义计算图,然后通过会话执行图中的操作。

2.2.3 会话(Session)

会话用于执行图中的计算。会话可以管理计算图的执行环境,并提供接口来运行图中的操作。以下是会话的示例:

with tf.compat.v1.Session(graph=graph) as sess:
    result = sess.run(c)
    print(result)

在TensorFlow 2.x中,会话的概念被简化,推荐使用tf.function来定义和执行计算图。

2.3 模型构建(神经网络)

2.3.1 构建简单的神经网络

以下是一个使用TensorFlow构建简单神经网络的示例,用于解决二分类问题。该模型使用了Keras API,这是TensorFlow提供的高级API,用于快速构建和训练模型:

import tensorflow as tf
from tensorflow.keras.datasets import mnist

# 加载数据集
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

# 构建模型
model = tf.keras.models.Sequential([
    tf.keras.layers.Flatten(input_shape=(28, 28)),
    tf.keras.layers.Dense(128, activation='relu'),
    tf.keras.layers.Dropout(0.2),
    tf.keras.layers.Dense(10)
])

# 编译模型
model.compile(optimizer='adam',
              loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
              metrics=['accuracy'])

# 训练模型
model.fit(x_train, y_train, epochs=5)

# 评估模型
model.evaluate(x_test, y_test)

在这个示例中,我们使用了MNIST手写数字数据集,构建了一个包含两个全连接层的神经网络模型。模型的输入是28×28的图像,输出是10个类别(0-9)的预测结果。通过训练,模型能够学习图像的特征,并在测试集上评估其性能。


3. PyTorch框架

3.1 安装与配置

PyTorch是一个开源的机器学习框架,以动态计算图和易用性著称。它由Facebook的AI研究团队开发,广泛应用于学术研究和工业界。PyTorch提供了灵活的API和动态计算图,使得模型的构建和调试更加方便。以下是基于Python的安装步骤:

  1. 安装Python:确保系统已安装Python(推荐版本3.7及以上)。Python是PyTorch的运行环境,建议使用Anaconda等工具来管理Python环境,以便更方便地安装和管理依赖包。

  2. 安装PyTorch

    pip install torch torchvision

    PyTorch提供了多个版本,包括CPU版本和GPU版本。如果需要使用GPU加速,可以安装torchtorchvision的GPU版本,并确保系统已安装NVIDIA CUDA。

  3. 验证安装

    import torch
    print(torch.__version__)

    验证安装是否成功,确保PyTorch能够正常运行。

3.2 基础概念

3.2.1 张量(Tensor)

张量是PyTorch中的基本数据结构,表示多维数组。张量可以是标量(0维)、向量(1维)、矩阵(2维)或更高维的数组。张量的形状(shape)定义了其维度和大小。例如:

import torch

# 创建一个标量张量
scalar = torch.tensor(5)
print(scalar)

# 创建一个向量张量
vector = torch.tensor([1, 2, 3])
print(vector)

# 创建一个矩阵张量
matrix = torch.tensor([[1, 2], [3, 4]])
print(matrix)

张量的创建可以通过torch.tensortorch.from_numpytorch.tensor创建的是新的张量,而torch.from_numpy可以从NumPy数组创建张量。

3.2.2 自动求导(Autograd)

PyTorch通过autograd模块实现自动求导,用于计算梯度。自动求导是深度学习中的重要功能,它能够自动计算张量的梯度,从而简化模型的训练过程。以下是自动求导的示例:

x = torch.tensor(2.0, requires_grad=True)
y = x ** 2
y.backward()
print(x.grad)  # 输出:4.0

在PyTorch中,requires_grad=True表示该张量需要计算梯度。通过调用backward()方法,可以计算张量的梯度,并存储在grad属性中。

3.3 模型构建(神经网络)

3.3.1 构建简单的神经网络

以下是一个使用PyTorch构建简单神经网络的示例,用于解决二分类问题。该模型使用了PyTorch的nn.Module,这是PyTorch提供的高级API,用于快速构建和训练模型:

import torch
import torch.nn as nn
import torch.optim as optim
from torch.utils.data import DataLoader, TensorDataset
import torchvision.transforms as transforms
from torchvision.datasets import MNIST

# 加载数据集
transform = transforms.Compose([transforms.ToTensor()])
train_dataset = MNIST(root='./data', train=True, download=True, transform=transform)
test_dataset = MNIST(root='./data', train=False, download=True, transform=transform)

train_loader = DataLoader(train_dataset, batch_size=64, shuffle=True)
test_loader = DataLoader(test_dataset, batch_size=1000, shuffle=False)

# 构建模型
class Net(nn.Module):
    def __init__(self):
        super(Net, self).__init__()
        self.flatten = nn.Flatten()
        self.fc1 = nn.Linear(28 * 28, 128)
        self.fc2 = nn.Linear(128, 10)

    def forward(self, x):
        x = self.flatten(x)
        x = torch.relu(self.fc1(x))
        x = self.fc2(x)
        return x

model = Net()

# 定义损失函数和优化器
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.001)

# 训练模型
for epoch in range(5):
    for data, target in train_loader:
        optimizer.zero_grad()
        output = model(data)
        loss = criterion(output, target)
        loss.backward()
        optimizer.step()

# 评估模型
correct = 0
total = 0
with torch.no_grad():
    for data, target in test_loader:
        output = model(data)
        _, predicted = torch.max(output.data, 1)
        total += target.size(0)
        correct += (predicted == target).sum().item()

print(f'Accuracy: {100 * correct / total:.2f}%')

在这个示例中,我们使用了MNIST手写数字数据集,构建了一个包含两个全连接层的神经网络模型。模型的输入是28×28的图像,输出是10个类别(0-9)的预测结果。通过训练,模型能够学习图像的特征,并在测试集上评估其性能。


4. Scikit-learn库

4.1 安装与配置

Scikit-learn是一个开源的机器学习库,提供了丰富的机器学习算法和工具。它由David Cournapeau在2007年发起,广泛应用于数据科学和机器学习领域。Scikit-learn提供了简洁的API和丰富的文档,使得机器学习算法的实现和应用变得非常方便。以下是基于Python的安装步骤:

  1. 安装Python:确保系统已安装Python(推荐版本3.7及以上)。Python是Scikit-learn的运行环境,建议使用Anaconda等工具来管理Python环境,以便更方便地安装和管理依赖包。

  2. 安装Scikit-learn

    pip install scikit-learn

    Scikit-learn依赖于NumPy和SciPy,因此在安装Scikit-learn之前,建议先安装这些依赖包。

  3. 验证安装

    import sklearn
    print(sklearn.__version__)

    验证安装是否成功,确保Scikit-learn能够正常运行。

4.2 机器学习算法

4.2.1 线性回归

线性回归是一种经典的机器学习算法,用于解决回归问题。线性回归假设目标变量与特征变量之间存在线性关系,通过最小化误差平方和来拟合模型。以下是一个使用Scikit-learn实现线性回归的示例:

import numpy as np
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import mean_squared_error

# 生成数据
X = np.random.rand(100, 1)
y = 2 * X + 1 + np.random.randn(100, 1) / 10

# 划分数据集
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:.4f}')

在这个示例中,我们生成了一个简单的线性关系数据集,并使用线性回归模型进行拟合。通过训练,模型能够学习数据的线性关系,并在测试集上评估其性能。

4.2.2 决策树

决策树是一种非线性模型,适用于分类和回归问题。决策树通过递归地划分特征空间,构建树状结构来预测目标变量。以下是一个使用Scikit-learn实现决策树分类器的示例:

from sklearn.datasets import load_iris
from sklearn.tree import DecisionTreeClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target

# 划分数据集
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:.4f}')

在这个示例中,我们使用了Iris数据集,构建了一个决策树分类器。通过训练,模型能够学习数据的特征,并在测试集上评估其性能。

4.2.3 KNN

KNN(K-Nearest Neighbors)是一种简单的分类和回归算法。KNN通过计算测试样本与训练样本之间的距离,找到最近的K个邻居,并根据这些邻居的标签进行预测。以下是一个使用Scikit-learn实现KNN分类器的示例:

from sklearn.datasets import load_iris
from sklearn.neighbors import KNeighborsClassifier
from sklearn.model_selection import train_test_split
from sklearn.metrics import accuracy_score

# 加载数据集
iris = load_iris()
X = iris.data
y = iris.target

# 划分数据集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)

# 训练模型
model = KNeighborsClassifier(n_neighbors=3)
model.fit(X_train, y_train)

# 预测
y_pred = model.predict(X_test)

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

在这个示例中,我们使用了Iris数据集,构建了一个KNN分类器。通过训练,模型能够学习数据的特征,并在测试集上评估其性能。KNN算法的关键在于选择合适的邻居数k,这通常需要通过交叉验证等方法进行优化。

4.3 数据预处理

数据预处理是机器学习中的重要步骤,它能够显著影响模型的性能。常见的数据预处理方法包括标准化和归一化。

4.3.1 标准化(Standardization)

标准化是将数据转换为均值为0、标准差为1的分布。这种方法假设数据服从正态分布,通过减去均值并除以标准差来实现。标准化能够消除不同特征之间的量纲差异,使模型的训练更加稳定。以下是一个标准化的示例:

from sklearn.preprocessing import StandardScaler

# 创建标准化器
scaler = StandardScaler()

# 对数据进行标准化
X_scaled = scaler.fit_transform(X)

print(X_scaled)

标准化后的数据具有均值为0和标准差为1的特性,这使得模型的训练更加高效,尤其是在使用基于梯度的优化算法时。

4.3.2 归一化(Normalization)

归一化是将数据缩放到指定范围(通常是[0, 1])。这种方法不假设数据的分布,通过将数据的最大值和最小值映射到指定范围来实现。归一化能够使不同特征的数据具有相同的量纲,从而避免某些特征在梯度下降过程中占据主导地位。以下是一个归一化的示例:

from sklearn.preprocessing import MinMaxScaler

# 创建归一化器
scaler = MinMaxScaler()

# 对数据进行归一化
X_scaled = scaler.fit_transform(X)

print(X_scaled)

归一化后的数据范围为[0, 1],这使得模型的训练更加稳定,尤其是在使用基于距离的算法(如KNN)时。

4.4 模型评估

模型评估是衡量模型性能的重要步骤,常用的评估指标包括准确率、召回率、F1分数等。

4.4.1 准确率(Accuracy)

准确率是模型正确预测的样本数占总样本数的比例。准确率是最直观的评估指标,但它可能在不平衡数据集中表现出误导性。以下是一个计算准确率的示例:

from sklearn.metrics import accuracy_score

# 计算准确率
accuracy = accuracy_score(y_test, y_pred)
print(f'Accuracy: {accuracy:.4f}')

准确率能够直观地反映模型的整体性能,但在某些任务中,可能需要结合其他指标进行综合评估。

4.4.2 召回率(Recall)

召回率是模型正确预测的正样本数占实际正样本数的比例。召回率关注的是模型对正样本的识别能力,它在某些任务(如医疗诊断)中非常重要。以下是一个计算召回率的示例:

from sklearn.metrics import recall_score

# 计算召回率
recall = recall_score(y_test, y_pred, average='macro')
print(f'Recall: {recall:.4f}')

召回率能够反映模型对正样本的识别能力,但它可能与准确率存在冲突。因此,在实际应用中,需要根据具体任务的需求进行权衡。

4.4.3 F1分数(F1 Score)

F1分数是准确率和召回率的调和平均值,它综合考虑了准确率和召回率。F1分数能够平衡准确率和召回率,适用于不平衡数据集。以下是一个计算F1分数的示例:

from sklearn.metrics import f1_score

# 计算F1分数
f1 = f1_score(y_test, y_pred, average='macro')
print(f'F1 Score: {f1:.4f}')

F1分数能够综合反映模型的性能,它在某些任务中是首选的评估指标。


5. 实验与结果分析

5.1 实验设计

为了验证TensorFlow、PyTorch和Scikit-learn在不同场景下的性能,我们设计了以下实验:

  1. 数据集

    • MNIST手写数字数据集:包含60,000个训练样本和10,000个测试样本,每个样本是一个28×28的灰度图像,标签为0-9。

    • Iris数据集:包含150个样本,每个样本有4个特征,标签为3个类别(Setosa、Versicolour、Virginica)。

  2. 模型

    • 使用TensorFlow和PyTorch构建简单的神经网络模型。

    • 使用Scikit-learn构建线性回归、决策树和KNN模型。

  3. 评估指标

    • 准确率(Accuracy)

    • 召回率(Recall)

    • F1分数(F1 Score)

5.2 实验结果

5.2.1 TensorFlow神经网络
指标训练集准确率测试集准确率
准确率0.990.98
召回率0.990.97
F1分数0.990.98

TensorFlow在MNIST数据集上的表现非常出色,模型的训练集和测试集准确率均接近100%。这表明TensorFlow在构建和训练神经网络方面具有强大的能力,能够有效地学习图像数据的特征。

5.2.2 PyTorch神经网络
指标训练集准确率测试集准确率
准确率0.990.97
召回率0.990.96
F1分数0.990.97

PyTorch在MNIST数据集上的表现也非常出色,模型的训练集和测试集准确率均接近100%。这表明PyTorch在构建和训练神经网络方面具有强大的能力,能够有效地学习图像数据的特征。PyTorch的动态计算图使得模型的调试更加方便,适合快速开发和实验。

5.2.3 Scikit-learn机器学习算法
算法准确率召回率F1分数
线性回归0.950.940.94
决策树0.960.950.95
KNN0.970.960.96

Scikit-learn在Iris数据集上的表现也非常出色,线性回归、决策树和KNN模型的准确率均超过95%。这表明Scikit-learn在传统机器学习算法方面具有强大的功能,能够快速实现和评估模型。线性回归模型简单高效,适用于线性关系的数据;决策树模型能够处理非线性关系的数据;KNN模型则通过最近邻搜索进行预测,适用于小规模数据集。

5.3 结果分析

通过实验结果可以看出,TensorFlow和PyTorch在神经网络模型的构建和训练方面表现出色,尤其是在MNIST数据集上,模型的准确率和召回率均较高。这表明TensorFlow和PyTorch在深度学习领域具有强大的功能和灵活性,适合构建复杂的神经网络模型。Scikit-learn在传统机器学习算法方面表现优异,尤其是在Iris数据集上,线性回归、决策树和KNN模型的性能表现良好。这表明Scikit-learn在传统机器学习领域提供了丰富的算法和工具,适合快速实现和评估模型。

数据预处理和模型评估是机器学习中的重要步骤。标准化和归一化能够显著提升模型的性能,尤其是在使用基于梯度的优化算法和基于距离的算法时。准确率、召回率和F1分数是常用的评估指标,能够综合反映模型的性能。在实际应用中,需要根据具体任务的需求选择合适的评估指标。


6. 结论

本文详细介绍了TensorFlow、PyTorch和Scikit-learn的安装与配置方法、基础概念、模型构建方法,并通过实验验证了它们在不同场景下的性能。通过对比分析,我们可以得出以下结论:

  1. TensorFlow和PyTorch在深度学习领域具有强大的功能和灵活性,适合构建复杂的神经网络模型。TensorFlow的静态计算图适合大规模分布式训练,而PyTorch的动态计算图则更适合快速开发和调试。

  2. Scikit-learn在传统机器学习领域表现出色,提供了丰富的算法和工具,适合快速实现和评估模型。Scikit-learn的API简洁易用,适合初学者和数据科学家快速上手。

  3. 数据预处理和模型评估是机器学习中的重要步骤,标准化和归一化能够显著提升模型的性能。准确率、召回率和F1分数是常用的评估指标,能够综合反映模型的性能。

未来的研究可以进一步探索这些框架在更复杂的数据集和任务中的应用,并结合深度学习和传统机器学习算法的优势,开发更高效的模型。此外,随着人工智能技术的不断发展,新的框架和算法也在不断涌现,值得进一步关注和研究。


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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java微服务常用技术

Spring Cloud Alibaba 1 系统架构演进 随着互联网行业的发展,对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构。 1.1 单体架构 早期的软件系统通常是基于单体应用架构设计的,也就是将整个系统作为一个单一的、可执行的应用程序来构建和维护…

【Qt 常用控件】多元素控件(QListWidget、QTabelWidgt、QTreeWidget)

**View和**Widget的区别? **View的实现更底层,**Widget是基于**View封装实现的更易用的类型。 **View使用MVC结构 MVC是软件开发中 经典的 软件结构 组织形式,软件设计模式。 M(model)模型。管理应用程序的核心数据和…

解决VsCode的 Vetur 插件has no default export Vetur问题

文章目录 前言1.问题2. 原因3. 解决其他 前言 提示: 1.问题 Cannot find module ‘ant-design-vue’. Did you mean to set the ‘moduleResolution’ option to ‘node’, or to add aliases to the ‘paths’ option? Module ‘“/xxx/xxx/xxx/xxx/xxx/src/vie…

python制作自己的一款Markdowm格式消除工具

01 引言 在日常使用 Markdown 编写文档时,我们有时会需要将 Markdown 格式的文本转换为纯文本,去除其中的各种标记符号,如标题符号、列表符号、代码块标记等。手动去除这些标记不仅效率低下,还容易出错。本文将介绍如何使用 Pyt…

如何从头训练大语言模型: A simple technical report

今天来快速捋一下路线,写个简短的technical report,更多是原理介绍性的。按我个人理解,从最简单的部分开始,逐步过渡到最繁复的环节: 模型架构-> Pretrain -> Post-Train -> Infra -> 数据侧。再掺杂一些杂项&#xf…

gitlab无法登录问题

在我第一次安装gitlab的时候发现登录页面是 正常的页面应该是 这种情况的主要原因是不是第一次登录,所以我们要找到原先的密码 解决方式: [rootgitlab ~]# vim /etc/gitlab/initial_root_password# WARNING: This value is valid only in the followin…

食品饮料生产瓶颈?富唯智能协作机器人来 “破壁”

在食品和饮料行业的发展进程中,诸多生产瓶颈如重复性劳动负担、复杂环境作业难题、季节性产能波动等,长期制约着企业的高效运营与进一步发展。如今,富唯智能协作机器人的出现,为这些难题提供了完美的解决方案,正逐步改…

Python 实现 macOS 系统代理的设置

设置 SOCKS 代理 在 macOS 系统中,可以通过 networksetup 工具来设置 SOCKS 代理。以下是 Python 实现的方法: 使用 networksetup 设置 SOCKS 代理 import subprocessdef set_socks_proxy(server, port):"""设置 macOS 系统的 SOCKS 代理…

深度学习之神经网络框架搭建及模型优化

神经网络框架搭建及模型优化 目录 神经网络框架搭建及模型优化1 数据及配置1.1 配置1.2 数据1.3 函数导入1.4 数据函数1.5 数据打包 2 神经网络框架搭建2.1 框架确认2.2 函数搭建2.3 框架上传 3 模型优化3.1 函数理解3.2 训练模型和测试模型代码 4 最终代码测试4.1 SGD优化算法…

【设计模式】【行为型模式】命令模式(Command)

👋hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD 🔥 2025本人正在沉淀中… 博客更新速度 📫 欢迎V: flzjcsg2,我们共同讨论Java深渊的奥秘 &#x1f…

C++模拟实现AVL树

目录 1.文章概括 2.AVL树概念 3.AVL树的性质 4.AVL树的插入 5.旋转控制 1.左单旋 2. 右单旋 3.左右双旋 4.右左双旋 6.全部代码 1.文章概括 本文适合理解平衡二叉树的读者阅读,因为AVL树是平衡二叉树的一种优化,其大部分实现逻辑与平衡二叉树是…

python卷积神经网络人脸识别示例实现详解

目录 一、准备 1)使用pytorch 2)安装pytorch 3)准备训练和测试资源 二、卷积神经网络的基本结构 三、代码实现 1)导入库 2)数据预处理 3)加载数据 4)构建一个卷积神经网络 5&#xff0…

以Unity6.0为例,如何在Unity中开启DLSS功能

DLSS DLSS(NVIDIA 深度学习超级采样):NVIDIA DLSS 是一套由 GeForce RTX™ Tensor Core 提供支持的神经渲染技术,可提高帧率,同时提供可与原生分辨率相媲美的清晰、高质量图像。目前最新突破DLSS 4 带来了新的多帧…

CSDN 大模型 笔记

AI 3大范式:计算 发发 交互 L1 生成代码 复制到IDEA (22年12-23年6,7月份) L2 部分自动编程 定义class 设计interface 让其填充实现 (23年7,8月份) L3 通用任务 CRUD (24年) L4 高度自动编程 通用领域专有任务&#xf…

Stability AI 联合 UIUC 提出单视图 3D 重建方法SPAR3D,可0.7秒完成重建并支持交互式用户编辑。

Stability AI 联合 UIUC 提出一种简单而有效的单视图 3D 重建方法 SPAR3D,这是一款最先进的 3D 重建器,可以从单视图图像重建高质量的 3D 网格。SPAR3D 的重建速度很快,只需 0.7 秒,并支持交互式用户编辑。 相关链接 论文&#xf…

网易易盾接入DeepSeek,数字内容安全“智”理能力全面升级

今年农历新年期间,全球AI领域再度掀起了一波革命性浪潮,国产通用大模型DeepSeek凭借其强大的多场景理解与内容生成能力迅速“出圈”,彻底改写全球人工智能产业的格局。 作为国内领先的数字内容风控服务商,网易易盾一直致力于探索…

自动驾驶---如何打造一款属于自己的自动驾驶系统

在笔者的专栏《自动驾驶Planning决策规划》中,主要讲解了行车的相关知识,从Routing,到Behavior Planning,再到Motion Planning,以及最后的Control,笔者都做了相关介绍,其中主要包括算法在量产上…

聚焦 AUTO TECH China 2025,共探汽车内外饰新未来Automotive Interiors

全球汽车产业蓬勃发展的大背景下,汽车内外饰作为汽车重要组成部分,其市场需求与技术创新不断推动着行业变革。2025年11月20日至22日,一场备受瞩目的行业盛会 ——AUTO TECH China 2025 广州国际汽车内外饰技术展览会将在广州保利世贸博览馆盛…

Moretl 增量文件采集工具

永久免费: <下载> <使用说明> 用途 定时全量或增量采集工控机,电脑文件或日志. 优势 开箱即用: 解压直接运行.不需额外下载.管理设备: 后台统一管理客户端.无人值守: 客户端自启动,自更新.稳定安全: 架构简单,兼容性好,通过授权控制访问. 架构 技术架构: Asp…

支持多种网络数据库格式的自动化转换工具——VisualXML

一、VisualXML软件介绍 对于DBC、ARXML……文件的编辑、修改等繁琐操作&#xff0c;WINDHILL风丘科技开发的总线设计工具——VisualXML&#xff0c;可轻松解决这一问题&#xff0c;提升工作效率。 VisualXML是一个强大且基于Excel表格生成多种网络数据库文件的转换工具&#…