人工智能相关笔记
发布人:shili8
发布时间:2025-02-13 15:34
阅读次数:0
**人工智能相关笔记**
**前言**
人工智能(Artificial Intelligence,AI)是指计算机系统能够模拟或实现人类的某些认知能力,如学习、推理、问题解决等。人工智能技术有多种应用场景,如自然语言处理、图像识别、预测分析等。在本笔记中,我们将介绍人工智能相关的一些基本概念、算法和技术。
**一、机器学习**
机器学习(Machine Learning,ML)是人工智能的一个子领域,它研究如何使计算机系统能够从数据中学习并改善其性能。机器学习的主要目标是让计算机系统能够自动地从数据中发现模式,并根据这些模式进行预测或决策。
**1.1 Supervised Learning**
监督式学习(Supervised Learning)是机器学习的一个子类别,它涉及到训练一个模型来预测某个输出变量。监督式学习的目的是让模型能够从已知数据中学习,并根据这些数据进行预测。
#例子:线性回归import numpy as np# 设定输入和输出变量X = np.array([[1], [2], [3]]) y = np.array([2,4,5]) # 定义模型参数w =0.5b =0.5# 预测输出值y_pred = w * X + bprint(y_pred)
**1.2 Unsupervised Learning**
无监督式学习(Unsupervised Learning)是机器学习的一个子类别,它涉及到训练一个模型来发现数据中的模式或结构。无监督式学习的目的是让模型能够从未知数据中自动地发现模式。
#例子:K-Means聚类import numpy as np# 设定输入变量X = np.array([[1,2], [3,4], [5,6]]) # 定义模型参数k =2# 运行K-Means算法centroids = np.random.rand(k, X.shape[1]) for _ in range(100): labels = np.argmin(np.linalg.norm(X[:, None] - centroids, axis=2), axis=1) new_centroids = np.array([np.mean(X[labels == i], axis=0) for i in range(k)]) centroids = new_centroidsprint(centroids)
**二、深度学习**
深度学习(Deep Learning,DL)是机器学习的一个子领域,它研究如何使用多层神经网络来实现更好的性能。深度学习的主要目标是让计算机系统能够自动地从数据中发现模式,并根据这些模式进行预测或决策。
**2.1 Convolutional Neural Networks**
卷积神经网络(Convolutional Neural Networks,CNN)是一种常见的深度学习模型,它使用多个卷积层和池化层来提取图像中的特征。CNN的主要目标是让计算机系统能够自动地从图像中发现模式。
#例子:CNNimport torchimport torch.nn as nnclass CNN(nn.Module): def __init__(self): super(CNN, self).__init__() self.conv1 = nn.Conv2d(1,10, kernel_size=5) self.pool1 = nn.MaxPool2d(kernel_size=2) self.fc1 = nn.Linear(320,50) def forward(self, x): x = torch.relu(self.conv1(x)) x = self.pool1(x) x = torch.flatten(x,1) x = torch.relu(self.fc1(x)) return xmodel = CNN() print(model)
**二、自然语言处理**
自然语言处理(Natural Language Processing,NLP)是人工智能的一个子领域,它研究如何使计算机系统能够理解和生成人类语言。自然语言处理的主要目标是让计算机系统能够自动地从文本中发现模式,并根据这些模式进行预测或决策。
**3.1 Word Embeddings**
词嵌入(Word Embeddings)是一种常见的自然语言处理模型,它使用多个向量来表示单词的含义。词嵌入的主要目标是让计算机系统能够自动地从文本中发现模式。
#例子:Word2Vecimport numpy as np# 设定输入变量words = ['apple', 'banana', 'orange'] # 定义模型参数vector_size =5# 运行Word2Vec算法vectors = {} for word in words: vector = np.random.rand(vector_size) vectors[word] = vectorprint(vectors)
**结论**
人工智能是计算机系统能够模拟或实现人类的某些认知能力,如学习、推理、问题解决等。人工智能技术有多种应用场景,如自然语言处理、图像识别、预测分析等。在本笔记中,我们介绍了人工智能相关的一些基本概念、算法和技术。