机器学习之神经网络(三)考试训练

本文通过水蜜桃数据集,利用神经网络模型进行训练和测试。首先进行数据加载、初始化和分割,接着实现激活函数、代价函数和梯度下降。训练过程中,绘制代价函数曲线,并在训练集和测试集上评估准确率。尽管因数据量小而出现训练集和测试集100%准确率,但强调了模型调优的重要性,如依据代价曲线调整参数。
摘要由CSDN通过智能技术生成

题目如下

1.按要求完成下面的各项需求。
已知有一个水蜜桃的数据集,保存在smt.txt文件中,t1是含糖量,t2是含水量,y标签表示水蜜桃的好坏:1表示好,0表示不好
利用神经网络模型,完成以下要求:
完成数据集的加载、初始化,洗牌,将数据集合理分割成训练集和测试集
实现激活函数及其导数
实现代价函数
实现梯度下降并记录代价函数
完成模型的训练,并计算在训练集上的准确率
画出代价函数曲线
在测试集上完成了预测,并计算在测试集上的准确率

项目分析

该项目应该分为三部分来做。
首先是数据处理,将文件中的数据提取出来,分成标签值Y和特征值X,再对数据进行初始化,由于数据有一个0,1排序,所以还需要将数据打乱至均匀。
第二部分是神经网络的搭建,清楚自己要搭建一个什么样的模型,隐层有几层,每个隐层的神经元个数由几个,一般来说,加入正则化的大型的神经网络要比小型的神经网络效果更好。这里由于数据较少并且也比较简洁,所以选择搭建一个有两层隐层的神经网络,神经元个数确定为8,5。这样一来,各个层次之间的权重的维度就可以确定了,权重的维度一般来说是行数是前一层的单元个数,列数是后一层的单元个数。
第三部分是用训练好的模型进行预测值的获取,评价预测性能,并且做一些可视化操作。

代码如下

import numpy as np
from matplotlib import pyplot as plt
# 设置中文显示和负号显示
plt.rcPar
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值