深入探索:【人工智能】、【机器学习】与【深度学习】的全景视觉之旅

目录

第一部分:人工智能、机器学习与深度学习概述

1.1 人工智能的概念与发展

代码示例:简单的AI决策系统

1.2 机器学习的定义与分类

代码示例:简单的线性回归模型

1.3 深度学习的基础与应用

代码示例:构建简单的神经网络

第二部分:机器学习的理论基础

2.1 数据准备与特征工程

代码示例:数据清理与特征工程

2.2 模型选择与评估

代码示例:模型选择与交叉验证

2.3 模型优化与超参数调优

代码示例:超参数调优与模型优化

第三部分:深度学习的核心原理

3.1 人工神经网络的结构与工作原理

代码示例:创建和训练简单的神经网络

3.2 卷积神经网络(CNN)与图像处理

代码示例:构建简单的卷积神经网络

3.3 递归神经网络(RNN)与序列处理

代码示例:构建简单的递归神经网络

第四部分:手写数字识别案例的代码实现与讲解

4.1 项目概述与目标

代码示例:加载MNIST数据集

4.2 数据加载与预处理

代码示例:数据预处理

4.3 模型构建与编译

代码示例:构建和编译模型

4.4 模型训练与验证

代码示例:训练模型

4.5 模型评估与预测

代码示例:评估与预测

第五部分:扩展与优化

5.1 模型的扩展与改进

代码示例:增加网络深度

5.2 模型优化与调参

代码示例:调整学习率

第六部分:未来发展与挑战

6.1 人工智能的未来趋势

代码示例:简单的GAN生成器模型

6.2 持续学习与自动机器学习(AutoML)

代码示例:使用AutoKeras进行自动机器学习

6.3 人工智能的伦理与挑战

代码示例:处理算法偏见

结论


 

ce6fbd68767d465bbe94b775b8b811db.png

731bd47804784fa2897220a90a387b28.gif

 前几天偶然发现了一个超棒的人工智能学习网站,内容通俗易懂,讲解风趣幽默,简直让人欲罢不能。忍不住分享给大家,点击这里立刻跳转,开启你的AI学习之旅吧!

前言 – 人工智能教程icon-default.png?t=N7T8https://www.captainbed.cn/lzx

 

第一部分:人工智能、机器学习与深度学习概述

1.1 人工智能的概念与发展

人工智能(Artificial Intelligence, AI)是计算机科学的一个分支,旨在开发能够模拟或增强人类智能的系统。AI的研究范围广泛,涵盖了从基础算法到复杂系统的开发。

代码示例:简单的AI决策系统

# 简单的基于规则的AI决策系统
def ai_decision_system(weather):if weather == 'sunny':return "Go for a walk"elif weather == 'rainy':return "Stay inside and read a book"elif weather == 'snowy':return "Go skiing"else:return "Weather unknown, stay cautious"# 测试AI决策系统
print(ai_decision_system('sunny'))  # 输出: Go for a walk

这个简单的代码展示了AI的最基本形式,即基于规则的决策系统。根据天气条件,AI系统作出相应的决策。这类系统可以看作是AI的早期形式,依赖于预定义的规则集。

1.2 机器学习的定义与分类

机器学习(Machine Learning, ML)是一种通过数据训练模型,使机器自动从数据中学习规律的技术。

代码示例:简单的线性回归模型

from sklearn.linear_model import LinearRegression
import numpy as np# 创建训练数据
X = np.array([[1], [2], [3], [4], [5]])
y = np.array([1, 3, 2, 3, 5])# 创建线性回归模型并训练
model = LinearRegression()
model.fit(X, y)# 预测新的数据
prediction = model.predict(np.array([[6]]))
print(f"Prediction for input 6: {prediction}")  # 输出: Prediction for input 6: [5.2]

此代码示例展示了机器学习中监督学习的一个简单应用,即线性回归。我们通过训练数据创建一个线性模型,并使用该模型预测新数据点的输出。线性回归是监督学习的一种常见方法,特别适用于预测连续值。

1.3 深度学习的基础与应用

深度学习(Deep Learning, DL)是机器学习的一个分支,主要基于多层神经网络。它擅长处理非结构化数据,如图像和文本。

代码示例:构建简单的神经网络

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense# 创建一个简单的神经网络
model = Sequential([Dense(32, input_shape=(784,), activation='relu'),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 打印模型摘要
model.summary()

这个代码示例展示了如何使用Keras创建一个简单的神经网络模型。该模型包含两个全连接层,第一层有32个神经元,使用ReLU激活函数;第二层有10个神经元,使用Softmax激活函数。这种结构常用于多分类任务,如手写数字识别。

第二部分:机器学习的理论基础

2.1 数据准备与特征工程

数据准备和特征工程是机器学习项目中至关重要的步骤。它们确保数据在输入模型前已经过清理、转换和优化。

代码示例:数据清理与特征工程

import pandas as pd
from sklearn.preprocessing import StandardScaler, OneHotEncoder# 加载数据
data = pd.DataFrame({'feature1': [1.0, 2.0, np.nan, 4.0, 5.0],'feature2': ['A', 'B', 'A', 'B', 'A'],'target': [1, 0, 1, 0, 1]
})# 数据清理:填充缺失值
data['feature1'].fillna(data['feature1'].mean(), inplace=True)# 特征转换:独热编码分类特征
encoder = OneHotEncoder(sparse=False)
encoded_features = encoder.fit_transform(data[['feature2']])
encoded_df = pd.DataFrame(encoded_features, columns=encoder.get_feature_names_out(['feature2']))# 标准化数值特征
scaler = StandardScaler()
data['feature1'] = scaler.fit_transform(data[['feature1']])# 合并处理后的特征
processed_data = pd.concat([data[['feature1']], encoded_df, data[['target']]], axis=1)
print(processed_data)

这个代码示例展示了数据清理与特征工程的几个步骤:填充缺失值、对分类特征进行独热编码、标准化数值特征。通过这些处理,我们确保数据在进入模型之前处于最佳状态。

2.2 模型选择与评估

选择合适的机器学习模型以及评估模型性能是构建有效系统的关键。

代码示例:模型选择与交叉验证

from sklearn.model_selection import train_test_split, cross_val_score
from sklearn.ensemble import RandomForestClassifier
from sklearn.metrics import accuracy_score# 准备数据
X = processed_data.drop('target', axis=1)
y = processed_data['target']# 划分训练集和测试集
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)# 选择模型并训练
model = RandomForestClassifier(n_estimators=100, random_state=42)
model.fit(X_train, y_train)# 使用交叉验证评估模型
scores = cross_val_score(model, X_train, y_train, cv=5)
print(f"Cross-validation accuracy: {scores.mean()}")# 预测并评估在测试集上的性能
y_pred = model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Test set accuracy: {accuracy}")

此代码展示了如何选择一个模型(随机森林)并使用交叉验证评估其性能。通过交叉验证,我们可以了解模型在训练数据上的稳定性和泛化能力。

2.3 模型优化与超参数调优

为了提升模型的性能,我们通常需要调整超参数和进行优化。

代码示例:超参数调优与模型优化

from sklearn.model_selection import GridSearchCV# 定义超参数网格
param_grid = {'n_estimators': [50, 100, 200],'max_depth': [None, 10, 20, 30]
}# 使用GridSearchCV进行超参数调优
grid_search = GridSearchCV(RandomForestClassifier(random_state=42), param_grid, cv=5)
grid_search.fit(X_train, y_train)# 输出最佳参数
print(f"Best parameters: {grid_search.best_params_}")# 使用最佳参数训练的模型在测试集上的表现
best_model = grid_search.best_estimator_
y_pred = best_model.predict(X_test)
accuracy = accuracy_score(y_test, y_pred)
print(f"Test set accuracy with best parameters: {accuracy}")

这个代码展示了如何通过GridSearchCV进行超参数调优,找到最佳的超参数组合并提升模型的性能。

第三部分:深度学习的核心原理

3.1 人工神经网络的结构与工作原理

人工神经网络(ANN)是深度学习的基础,模拟了人脑神经元的工作方式。

代码示例:创建和训练简单的神经网络

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense# 创建神经网络模型
model = Sequential([Dense(32, input_shape=(784,), activation='relu'),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 假设有已经处理好的训练数据X_train, y_train
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32)

此代码展示了如何使用Keras创建并训练一个基本的神经网络模型,用于多分类任务。

3.2 卷积神经网络(CNN)与图像处理

卷积神经网络(CNN)特别适用于图像处理,通过卷积操作提取图像特征。

代码示例:构建简单的卷积神经网络

from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten# 创建CNN模型
model = Sequential([Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),MaxPooling2D(pool_size=(2, 2)),Flatten(),Dense(128, activation='relu'),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 假设有已经处理好的训练数据X_train, y_train
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32)

这个代码展示了如何使用Keras构建一个简单的CNN,用于处理图像分类任务,如手写数字识别。卷积层和池化层自动提取图像的空间特征,使得模型在图像任务中具有更高的准确性。

3.3 递归神经网络(RNN)与序列处理

递归神经网络(RNN)擅长处理序列数据,通过捕捉时间依赖关系,在语音识别、时间序列预测等领域表现出色。

代码示例:构建简单的递归神经网络

from tensorflow.keras.layers import SimpleRNN# 创建RNN模型
model = Sequential([SimpleRNN(50, input_shape=(timesteps, features), activation='relu'),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 假设有已经处理好的序列数据X_train, y_train
# 训练模型
model.fit(X_train, y_train, epochs=10, batch_size=32)

这个代码展示了如何使用Keras构建一个简单的RNN,用于处理序列数据。RNN在处理具有时间依赖性的数据(如时间序列、文本数据)时非常有效。

第四部分:手写数字识别案例的代码实现与讲解

4.1 项目概述与目标

手写数字识别任务广泛用于银行票据识别、邮政编码识别等实际场景。我们将使用MNIST数据集完成该任务。

代码示例:加载MNIST数据集

from tensorflow.keras.datasets import mnist# 加载MNIST数据集
(train_images, train_labels), (test_images, test_labels) = mnist.load_data()# 查看数据形状
print(f"Train images shape: {train_images.shape}")
print(f"Train labels shape: {train_labels.shape}")

这个代码片段展示了如何加载MNIST数据集,并查看数据集的形状。MNIST数据集包含60,000个训练样本和10,000个测试样本,每个样本是28x28像素的灰度图像。

4.2 数据加载与预处理

在模型训练前,数据需要进行归一化处理和标签的one-hot编码。

代码示例:数据预处理

from tensorflow.keras.utils import to_categorical# 归一化图像数据
train_images = train_images.astype('float32') / 255
test_images = test_images.astype('float32') / 255# 将图像数据展平
train_images = train_images.reshape((train_images.shape[0], 28 * 28))
test_images = test_images.reshape((test_images.shape[0], 28 * 28))# One-hot编码标签
train_labels = to_categorical(train_labels)
test_labels = to_categorical(test_labels)

这个代码展示了如何对图像数据进行归一化处理,以及如何将标签转换为one-hot编码形式,以便神经网络能够处理。

4.3 模型构建与编译

我们将使用Keras构建一个简单的全连接神经网络模型。

代码示例:构建和编译模型

from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense# 构建全连接神经网络模型
model = Sequential([Dense(512, activation='relu', input_shape=(28 * 28,)),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])

此代码展示了如何构建和编译一个简单的全连接神经网络,用于手写数字识别任务。该模型使用ReLU作为隐藏层的激活函数,Softmax作为输出层的激活函数。

4.4 模型训练与验证

接下来,我们将模型应用于训练数据进行训练,并使用验证集评估模型性能。

代码示例:训练模型

# 训练模型
history = model.fit(train_images, train_labels, epochs=5, batch_size=128, validation_split=0.2)

这个代码片段展示了如何使用Keras的fit方法训练模型。我们使用20%的训练数据作为验证集,模型训练5个epochs,每次更新模型使用128个样本。

4.5 模型评估与预测

在模型训练完成后,使用测试数据评估模型的性能,并展示预测结果。

代码示例:评估与预测

# 评估模型
test_loss, test_acc = model.evaluate(test_images, test_labels)
print(f"Test accuracy: {test_acc}")# 预测
predictions = model.predict(test_images)# 显示一些预测结果
import numpy as np
import matplotlib.pyplot as pltdef plot_image(i, predictions_array, true_label, img):plt.grid(False)plt.xticks([])plt.yticks([])plt.imshow(img, cmap=plt.cm.binary)predicted_label = np.argmax(predictions_array)true_label = np.argmax(true_label)if predicted_label == true_label:color = 'blue'else:color = 'red'plt.xlabel(f"{predicted_label} ({true_label})", color=color)# 显示前5个测试样本的预测结果
plt.figure(figsize=(10, 5))
for i in range(5):plt.subplot(1, 5, i+1)plot_image(i, predictions[i], test_labels[i], test_images[i].reshape(28, 28))
plt.show()

这个代码展示了如何评估模型在测试集上的表现,并通过可视化展示模型的预测结果。通过这些图像,我们可以直观地看到模型的预测效果。

第五部分:扩展与优化

5.1 模型的扩展与改进

我们可以通过增加模型的深度或使用卷积神经网络(CNN)来提升模型的性能。

代码示例:增加网络深度

from tensorflow.keras.layers import Dropout# 创建更深的神经网络模型
model = Sequential([Dense(512, activation='relu', input_shape=(28 * 28,)),Dropout(0.2),Dense(512, activation='relu'),Dropout(0.2),Dense(10, activation='softmax')
])# 编译模型
model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy'])# 训练模型
history = model.fit(train_images, train_labels, epochs=5, batch_size=128, validation_split=0.2)

这个代码展示了如何通过增加隐藏层的数量和使用Dropout层来扩展网络,从而提高模型的表达能力和泛化能力。

5.2 模型优化与调参

为了进一步提升模型性能,可以通过调整学习率等超参数来优化模型。

代码示例:调整学习率

from tensorflow.keras.optimizers import Adam# 调整学习率
optimizer = Adam(learning_rate=0.001)# 编译模型
model.compile(optimizer=optimizer, loss='categorical_crossentropy', metrics=['accuracy'])# 训练模型
history = model.fit(train_images, train_labels, epochs=5, batch_size=128, validation_split=0.2)

这个代码展示了如何通过调整Adam优化器的学习率来优化模型训练过程。选择合适的学习率可以加快模型的收敛速度,并提升最终的性能。

第六部分:未来发展与挑战

6.1 人工智能的未来趋势

AI的发展方向可能包括自监督学习、联邦学习和生成对抗网络(GAN)等新兴技术。

代码示例:简单的GAN生成器模型

from tensorflow.keras.layers import Dense, LeakyReLU
from tensorflow.keras.models import Sequential# 创建生成器模型
generator = Sequential([Dense(128, input_dim=100),LeakyReLU(alpha=0.01),Dense(784, activation='tanh')
])# 打印生成器模型结构
generator.summary()

这个代码展示了如何构建一个简单的生成器模型,用于生成对抗网络(GAN)中的生成部分。GAN是一种新兴技术,用于生成逼真的图像、音频或文本。

6.2 持续学习与自动机器学习(AutoML)

持续学习和AutoML是AI领域中的重要发展方向,致力于降低技术门槛,简化机器学习流程。

代码示例:使用AutoKeras进行自动机器学习

import autokeras as ak# 使用AutoKeras自动化分类任务
clf = ak.ImageClassifier(overwrite=True, max_trials=3)# 假设已经有训练好的图像数据集train_images, train_labels
# 训练模型
clf.fit(train_images, train_labels, epochs=5)# 评估模型
test_loss, test_acc = clf.evaluate(test_images, test_labels)
print(f"Test accuracy: {test_acc}")

这个代码展示了如何使用AutoKeras进行自动机器学习。AutoML工具能够自动化模型选择、超参数调优等步骤,降低了构建高效机器学习模型的难度。

6.3 人工智能的伦理与挑战

随着AI技术的普及,数据隐私、算法偏见和社会影响等问题变得日益重要。

代码示例:处理算法偏见

from sklearn.metrics import classification_report# 在不同群体上评估模型
def evaluate_bias(model, X_test, y_test, group_labels):for group in np.unique(group_labels):idx = np.where(group_labels == group)y_pred = model.predict(X_test[idx])print(f"Evaluation for group {group}:")print(classification_report(y_test[idx], y_pred))# 假设我们有额外的群体标签group_labels
evaluate_bias(best_model, X_test, y_test, group_labels)

这个代码片段展示了如何在不同群体上评估模型,检测算法是否存在偏见。通过这种方法,可以识别出模型在特定群体上的表现差异,进而进行调整以减少偏见。

结论

人工智能、机器学习和深度学习是现代科技的重要组成部分,正深刻影响着各个行业的发展。从理论到实践,再到未来的发展趋势,AI技术的发展为我们提供了前所未有的工具来解决复杂的问题。然而,随着技术的进步,新的挑战也随之而来,如数据隐私、伦理问题等。为了实现AI技术的可持续发展,我们需要在技术创新与社会责任之间找到平衡。通过不断学习和实践,我们能够更好地应用AI技术,推动社会进步,并应对未来的挑战。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【TwinCAT】TwinCAT3 PLC HMI在WIN10系统中的全屏显示及用户管理

在工业自动化领域,TwinCAT3 PLC HMI 是一款强大的可视化工具,它支持多种操作系统,并且能够满足不同控制器的需求。在本文中,我们将详细介绍如何在WIN10系统中进行全屏显示设置以及如何进行用户管理配置。 一、TwinCAT3 PLC HMI 全屏显示方法 1. 创建Visualization和配置Vi…

Git开发流程

Git开发流程规范如下: 详情参考:https://www.processon.com/view/link/5d0cf86ce4b0376de9c19e16

【自动驾驶】ROS中自定义格式的服务通信,含命令行动态传参(c++)

目录 通信流程创建服务器端及客户端新建服务通讯文件修改service的xml及cmakelistCMakeLists.txt编辑 msg 相关配置编译消息相关头文件在cmakelist中包含头文件的路径在service包下编写service.cpp在client包下编写client.cpp测试运行查询服务的相关指令列出目前的所有服务&…

【Vue3】组件通信之mitt

【Vue3】组件通信之mitt 背景简介开发环境开发步骤及源码总结 背景 随着年龄的增长,很多曾经烂熟于心的技术原理已被岁月摩擦得愈发模糊起来,技术出身的人总是很难放下一些执念,遂将这些知识整理成文,以纪念曾经努力学习奋斗的日…

什么是智能加密?超好用神器智能加密软件推荐

信息安全已成为我们日常生活中不可忽视的一环。 随着网络攻击手段的不断升级和隐私泄露事件的频发,如何有效保护个人及企业的敏感数据成为了亟待解决的问题。 智能加密,作为信息安全领域的一项重要技术,正逐渐走进大众视野,以其高…

【数据结构七夕专属版】单链表及单链表的实现【附源码和源码讲解】

本篇是博主在学习数据结构时的心得,希望能够帮助到大家,也许有些许遗漏,但博主已经尽了最大努力打破信息差,如果有遗漏还请见谅,嘻嘻,前路漫漫,我们一起前进!!&#xff0…

超声波眼镜清洗机哪家强?盘点四款精品超声波清洗机机型

超声波清洗机因其卓越的清洁能力,成为了家庭和专业环境中清洁小物件的理想选择。无论是日常佩戴的眼镜、珍贵的珠宝首饰,还是精密的电子设备和实验工具,超声波清洗机都能提供深层、温和且高效的清洁。然而,面对市场上众多品牌和价…

原神4.8版本升级计划数据表

原神4.8版本角色数据升级计划表 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>原神4.8版本升级计划…

使用Anaconda安装多个版本的Python并与Pycharm进行对接

1、参考链接 Anaconda安装使用教程解决多Python版本问题_anaconda安装多个python版本-CSDN博客 基于上面的一篇博客的提示&#xff0c;我做了尝试。并在Pycharm的对接上做了拓展。 2、首先安装Anaconda 这个比较简单&#xff0c;直接安装即可&#xff1a; 3、设置conda.exe的…

【iOS】SideTable

目录 SideTablesStripedMapSideTable1. spinlock_t slock2. RefcountMap3. weak_table_t 总结 objc4源码地址&#xff1a; SideTable& table SideTables()[this]; // 获取对象的SideTable size_t& refcntStorage table.refcnts[this];SideTables 查源码SideTables…

K8s第三节:k8s1.23.1升级为k8s1.30.0

上回书说到我们使用了kubeadm安装了k8s1.23.1,但是在k8s1.24之前还是使用docker作为容器运行时&#xff0c;所以这一节我打算将我安装的k8s集群升级为1.30.0版本&#xff1b; 1、修改containerd 配置 因为我们安装的docker自带containerd&#xff0c;所以我们不需要重新安装con…

docker拉取MySQL后数据库连接失败解决方案

如果数据库连接失败&#xff0c;检查以下几个地方&#xff1a; 1&#xff1a;防火墙&#xff0c;查看防火墙是否打开&#xff1a; systemctl status firewalld 关闭状态&#xff1a; 开启状态&#xff1a; 如果是开启状态&#xff0c;则很有可能是防火墙拦截掉了3306端口的访问…

挖矿木马攻破了服务器

最近被国外的挖矿木马攻破了服务器 根据非法登录&#xff0c;用 #last指令查看登录ip 首先删掉登录主机 #kill -9 pts/0 第二步 #top 看看什么占用cpu高 第三步杀死狂刷CPU的服务 过一分钟后&#xff0c;服务又开始狂刷cpu。 第四步根据pid查到服务地址 #systemctl status…

HarmonyOS Flex布局

前置知识&#xff1a; 一次开发&#xff0c;多端部署:一套代码工程&#xff0c;一次开发上架&#xff0c;多端按需部署。支撑开发者快速高效的开发支持多种终端设备形态的应用&#xff0c;实现对不同设备兼容的同时&#xff0c;提供跨设备的流转、迁移和协同的分布式体验自适应…

[FSCTF 2023]细狗2.0

尝试输入cat /f* 输入&#xff1b;ls / 过滤了空格 输入 &#xff1b;ls 看到2个php, 空格绕过可以用注释替换空格 &#xff1b;ca\t/*123*/f* 发现不可以&#xff0c;看题解后发现使用${IFS}绕过 $IFS代替空格;$IFS、$IFS2、${IFS}、$IFS$9 Linux下有一个特殊的环境变量…

Java 文件上传七牛云

Java系列文章目录 文章目录 Java系列文章目录一、前言二、学习内容&#xff1a;三、问题描述四、解决方案&#xff1a;4.1 新建空间4.2 查找密钥4.3 进入开发者中心查找JavaSDK文档4.4 查找文件上传方法4.5 运行测试 五、总结&#xff1a;5.1 学习总结&#xff1a; 一、前言 学…

数据结构(其六)--树(一般的树)

目录 1.树的知识总览 2.树的基本概念 i.部分名词 ii.结点间的关系 iii.属性 3.树的常考性质 i.结点数 ii.度为m的树 与 m叉树 的区别&#xff08;m>0&#xff09; iii.树的第 i 层的结点数&#xff08;i>1&#xff09; ​编辑 iiii. 高度为h的m叉树的结点数 iiiii.高…

人工智能安全态势和趋势

吴世忠 中工院士 国家保密科技委主任 重大风险隐患呼唤加强安全研究&#xff0c;人工智能面临未来担忧 1 总体态势 1.1 相对于技术发展&#xff0c;安全研究严重滞后 1.2 我国研究十分活跃&#xff0c;论文数量遥遥领先 1.3 影响力美国排名第一&#xff0c;大厂大学作用大 1…

C#获取Network的相关信息

1&#xff0c;获取网络的通断。 //方法1&#xff1a;无效果&#xff0c;并不能反映当前网络通断 bool availableSystem.Windows.Forms.SystemInformation.Network//方法2&#xff1a;通过VB获取网络状态&#xff0c;可反映当前网络通断 Microsoft.VisualBasic.Devices.Network…

高翔【自动驾驶与机器人中的SLAM技术】学习笔记(七)卡尔曼滤波器三:卡尔曼滤波器公式推导【转载】

卡尔曼滤波器三&#xff1a;卡尔曼公式推导 转载来源&#xff1a;卡尔曼滤波&#xff1a;从入门到精通 简述 考虑一个SLAM 问题&#xff0c;它由一个运动方程&#xff1a; x t f ( x t − 1 , u t ) ω t (1) \mathbf{x}_{t}f(\mathbf{x}_{t-1},\mathbf{u}_{t}) \omega_…