神经网络(第二课第一周)

文章目录

神经网络(第二课第一周)

(一)神经网络的内涵

主要应用:语音、图像、文本。

**神经网络的内涵:**从原有的特征(特征向量)进行学习或者回归得到新的更能预测真实值的或者是更具有代表性的特征,使用新的特征(激活向量)再次学习或者回归,得到最终的预测概率。它的基本构建模块是一个神经元层。

神经网络应用于人脸识别:

(二)如何构建神经元层

在拟合新特征时一般使用的是逻辑回归函数,也称为激活函数,得到激活向量,作为新的特征值,这样以此类推(称之为向前传播)。

1、tensorflow如何处理数据(Tensorflow 是由 Google 开发的机器学习包。)

tensorflow可以将之前创建的两层或多层神经元按照顺序串联起来,形成一个神经网络。示例如下:

向前传播的代码解释:

2、详细的一些实验代码,可以参考第二课第一周的相关代码。以下是一些代码相关的解释:(以下都是使用Tensorflow构建的神经网络)

(1)线性神经单元层

定义一个具有一个神经元或单元的层,激活函数是线性回归。

plain 复制代码
linear_layer = tf.keras.layers.Dense(units=1, activation = 'linear', )

我们可以使用linear_layer.get_weights()或者是linear_layer.set_weights(set_w, set_b)可以设置神经元层的各参数权重。同时也可以通过将实例(矩阵)输入给模型,模型会初始化随机值权重。示例如下:

(2)逻辑神经单元层(一层和两层)

TensorFlow 的 Normalization 层可以用来自动学习数据的统计特性(均值和方差),并对数据进行标准化处理,使得数据的分布更加均匀,这通常有助于机器学习模型的训练和收敛。

拟合后会得到新的权重。有了新的权重之后我们可以对新的测试集进行归一化,然后使用新模型进行预测。

3、详细的一些实验代码,可以参考第二课第一周的相关代码。以下是一些代码相关的解释:(以下都是使用Numpy构建的神经网络)

与之前的不同之处在于,计算逻辑回归值一个是使用的矩阵乘法,一个是使用循环相加。创建神经网络也各有不同。

明白上面的之后,我们可以做一下第二课第一周的最后一个练习,看看掌握没有。

(三)使用 Keras Sequential 模型和具有 sigmoid 激活的 Dense Layer 来构建网络。(以识别手写数字为例)
1、首先清楚你数据集特征值和目标值的大小

手写数字数据集大小为1000X400;共计1000个样本,每个样本400个特征;目标是一个二分类问题,分类结果是0或者1。大小是1000x1。

2、其次要清楚你要创建什么样的神经网络,这个神经网络有几层,每一层有多少个激活值(新特征),以及激活函数是什么

这里手写数字的这个要创建的神经网络一共是3层,激活值分别是25、15、1;激活函数都是sigmoid函数。

3、使用 Keras Sequential 模型和具有 sigmoid 激活的 Dense Layer 来构建上述网络。

示例代码如下:

使用model.summary可以输出你创建的神经网络的结构。例如:

创建完成神经网络之后,我们应该已经清楚每一层的w和b它们的大小是怎样的,例如第一层的w的大小应该是:400x25;b是25x1;第二层的w是25x15,b是15x1;以此类推。

我们可以检查一下创建的神经网络的权重大小是否一致,示例如下:

4、定义损失函数并运行梯度下降,以使模型的权重适合训练数据。
5、使用训练完成的模型对数据进行预测:使用 Keraspredict。要预测的输入是一个数组,因此单个示例被重塑为二维。

模型的输出被解释为概率。在上面的第一个示例中,输入为零。该模型预测输入为 1 的概率几乎为零。在第二个示例中,input 是 1。该模型预测输入为 1 的概率接近 1。与 Logistic 回归的情况一样,将概率与阈值进行比较以做出最终预测。

(四)使用 numpy来构建网络。(以识别手写数字为例)
1、特别需要注意的是,手动定义计算激活值的函数:

矢量化numpy,仅用三行代码代替循环计算。

2、定义三层神经网络(这里的权重和偏差需要我们输入给他,或者是使用tensorflow已经训练好的权重给他)

我不太清楚这里为啥还要用一下numpy,用它的意义在哪里,tensorflow明明可以直接拟合出参数。

相关推荐
科研小刘带你玩学术2 分钟前
【科研快讯】OpenAI推出ChatGPT Wallet:AI Agent不再只会推荐商品,还能替用户完成支付
人工智能·数字经济·智能体·科技前沿·aiagent·ai支付·智能商务
飞猫的边缘AI10 分钟前
SoC和SoC FPGA的野心与市场渗透
人工智能·科技·soc芯片·边缘ai
泯泷11 分钟前
AI 社交的真问题:助理拥有“我”,平台拥有“别人”
人工智能·llm·agent
@嵌入式扫地僧12 分钟前
边缘 AI 面试实战:模型剪枝核心方法
人工智能·结构化剪枝·模型剪枝·边缘 ai·嵌入式 ai 部署
Yuzhiyuxia26 分钟前
【AI Agent面试系列】AI Agent实战设计
人工智能·面试·职场和发展
syso_稻草人29 分钟前
qwen-image-2.1 PE 增强编辑:QwenImage21_EditPromptRewrite 一句话中文扩写成完整编辑指令
人工智能·stable diffusion·prompt·comfyui·qwen-image2.1
byte轻骑兵1 小时前
时序数据库选型指南:Apache IoTDB 社区版实践与踩坑
数据库·人工智能·apache·时序数据库·iotdb
逐梦苍穹1 小时前
DeepInfer 推理框架源码精讲:逐行读 DeepSeek 开源的推理引擎(2 小时 20 分视频+文字版)
人工智能·开源·ai编程·deepseek·claudecode·deepinfer·deepseekinfer
水如烟1 小时前
孤能子视角:微软宕机是“极化”在数字基础设施层的显影——效率驱动下强关系集中到单一节点,弱关系备份被淘汰,可折返性丧失
人工智能
芯门1 小时前
GitHub「用好 AI」工具生态全景:2409 个仓库 Star 排行调研(2026-11)
人工智能·github