现在AIGC很火,chatGPT的功能也是非常的强大,作为一个学计算机的,我想chatGPT必须要玩起来,哈哈哈哈~~~
突发奇想,虽然学了几年的计算机,但是编程能力还是不行,既然chatGPT那么滴niubility,那么我来试一下让他帮我学代码吧!

我:机器学习中常见的神经网络有哪些,并作出深刻的理解与说明

chatGPT答:

我:用python来实现一个简单的前馈神经网络(Feedforward Neural Network,FNN)

chatGPT答: 实现一个简单的前馈神经网络(Feedforward Neural Network,FNN)可以遵循以下步骤


总结: 生成的代码直接复制粘贴到jupyter中,发现一个错误:

然后我又把它的错误返回给chatGPT,他就解决了:
== self.output_error = y.reshape(-1, 1) - output ==
把这一句改变之后,程序代码确实正确了,但是准确率很低,才50%左右。

问:用pytorch实现前馈神经网络(Feedforward Neural Network,FNN)

chatGPT答:


用pytorch实现的代码也是有错误的,用同样的方法来解决

完整的代码如下:

import torch
import torch.nn as nn
import torch.optim as optim
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
X, y = make_classification(n_samples=1000, n_features=10, n_informative=8, n_redundant=2, random_state=42)
X = torch.tensor(X).float()
y = torch.tensor(y).float()
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=42)
class FNN(nn.Module):def __init__(self, n_inputs, n_hidden, n_outputs):super(FNN, self).__init__()self.fc1 = nn.Linear(n_inputs, n_hidden)self.fc2 = nn.Linear(n_hidden, n_outputs)self.sigmoid = nn.Sigmoid()def forward(self, x):x = self.fc1(x)x = self.sigmoid(x)x = self.fc2(x)x = self.sigmoid(x)return x
fnn = FNN(n_inputs=X_train.shape[1], n_hidden=4, n_outputs=1)
criterion = nn.BCELoss()
optimizer = optim.SGD(fnn.parameters(), lr=0.01)
for i in range(1000):optimizer.zero_grad()output = fnn(X_train)
#     loss = criterion(output, y_train)loss = criterion(output, y_train.unsqueeze(1))loss.backward()optimizer.step()
with torch.no_grad():y_pred = fnn(X_test)y_pred = torch.round(y_pred)accuracy = torch.mean((y_pred == y_test).float())print(f"Accuracy: {accuracy}")

实验结果:依旧效果很差

问用python和pytorch实现卷积神经网络CNN

chatGPT答:

import torch
import torch.nn as nn
import torch.optim as optim
import torchvision.datasets as datasets
import torchvision.transforms as transforms# 设置超参数
batch_size = 64
learning_rate = 0.001
num_epochs = 5# 加载 MNIST 数据集
train_dataset = datasets.MNIST(root='./data', train=True, transform=transforms.ToTensor(), download=True)
test_dataset = datasets.MNIST(root='./data', train=False, transform=transforms.ToTensor())# 创建数据加载器
train_loader = torch.utils.data.DataLoader(dataset=train_dataset, batch_size=batch_size, shuffle=True)
test_loader = torch.utils.data.DataLoader(dataset=test_dataset, batch_size=batch_size, shuffle=False)# 定义 CNN 模型
class CNN(nn.Module):def __init__(self):super(CNN, self).__init__()self.layer1 = nn.Sequential(nn.Conv2d(1, 16, kernel_size=5, padding=2),nn.BatchNorm2d(16),nn.ReLU(),nn.MaxPool2d(2))self.layer2 = nn.Sequential(nn.Conv2d(16, 32, kernel_size=5, padding=2),nn.BatchNorm2d(32),nn.ReLU(),nn.MaxPool2d(2))self.fc = nn.Linear(7*7*32, 10)def forward(self, x):out = self.layer1(x)out = self.layer2(out)out = out.view(out.size(0), -1)out = self.fc(out)return out# 实例化模型和损失函数
cnn = CNN()
criterion = nn.CrossEntropyLoss()
optimizer = optim.Adam(cnn.parameters(), lr=learning_rate)# 训练模型
total_step = len(train_loader)
for epoch in range(num_epochs):for i, (images, labels) in enumerate(train_loader):outputs = cnn(images)loss = criterion(outputs, labels)optimizer.zero_grad()loss.backward()optimizer.step()if (i+1) % 100 == 0:print('Epoch [{}/{}], Step [{}/{}], Loss: {:.4f}'.format(epoch+1, num_epochs, i+1, total_step, loss.item()))# 测试模型
with torch.no_grad():correct = 0total = 0for images, labels in test_loader:outputs = cnn(images)_, predicted = torch.max(outputs.data, 1)total += labels.size(0)correct += (predicted == labels).sum().item()print('Accuracy of the model on the 10000 test images: {} %'.format(100 * correct / total))

这次没有错误,结果也还行:

问用tensorflow实现卷积神经网络CNN

chatGPT答

import tensorflow as tf
from tensorflow.keras.datasets import mnist
from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense, Dropout
from tensorflow.keras.models import Sequential
from tensorflow.keras.utils import to_categorical# 超参数
num_classes = 10
batch_size = 128
epochs = 10# 加载MNIST数据集
(x_train, y_train), (x_test, y_test) = mnist.load_data()# 将输入数据转换为float类型,并将像素值归一化到0到1之间
x_train = x_train.astype('float32') / 255
x_test = x_test.astype('float32') / 255# 对标签进行one-hot编码
y_train = to_categorical(y_train, num_classes)
y_test = to_categorical(y_test, num_classes)# 将输入数据转换为4D张量
x_train = x_train.reshape(x_train.shape[0], 28, 28, 1)
x_test = x_test.reshape(x_test.shape[0], 28, 28, 1)# 构建卷积神经网络模型
model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))
model.add(Conv2D(64, (3, 3), activation='relu'))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(128, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(num_classes, activation='softmax'))# 编译模型
model.compile(loss=tf.keras.losses.categorical_crossentropy,optimizer=tf.keras.optimizers.Adadelta(),metrics=['accuracy'])# 训练模型
model.fit(x_train, y_train,batch_size=batch_size,epochs=epochs,verbose=1,validation_data=(x_test, y_test))# 测试模型
score = model.evaluate(x_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])

运行结果如下:



总结:本人学疏才浅,也不一定全能判断出它生成的到底对不对,如果有什么不对的地方还请大家留言or私聊指出,谢谢大家!!让我们一起进步吧!
总的来说写的还行,我不会写的他都会,我要失业了,呜呜~
准确率比较低,等有时间改进一下。

快来看,我让chatGPT帮我写代码了!!!相关推荐

  1. ChatGPT帮你写代码?人工智能ChatGPT之于Web3的几点思考

    人工智能AI有人热情膜拜,有人畏惧如虎,AI的发展已经进入高层面的快车道,技术更新迭代日新夜异,技术无罪也无善恶,曾经科幻未来的人机交流,共生共存如今在我们的脑海中已经有了轮廓的意识感想,科技是第一生 ...

  2. 使用ChatGPT帮我们写一篇论文,最后查重的重复率会是多少?

    使用ChatGPT帮我们写一篇论文,最后查重的重复率会是多少? ChatGpt一经发布就大火,迅速应用在各个领域,尤其在程序圈自动帮我们写代码着实是圈了一大波粉.那么它用在科研领域会出现怎样的效果呢, ...

  3. 云从发布从容AI大模型;莫言用ChatGPT帮余华写颁奖词;罗普特遭立案调查丨每日大事件...

    ‍ ‍数据智能产业创新服务媒体 --聚焦数智 · 改变商业 企业动态 亚马逊网络服务将向印度的云基础设施投资127亿美元 5月18日,亚马逊宣布,亚马逊网络服务计划到2030年向印度的云基础设施投资1 ...

  4. 推荐一款 IDEA 神器 ,人工智能帮你写代码,再也不用加班了!!

    今天栈长给大家推荐一款代码神器,人工智能帮你写代码,简直爽的不行,关键还是免费的,一起来看看. 简介 Codota 是一款优秀的 AI 代码自动完成工具,可以帮助我们极大的提高开发效率. 官网:htt ...

  5. 《ChatGPT》自动写代码、写作文,使用教程来了

    文章目录 注册 开始使用ChatGPT 基本问答 自动写代码 写作文 视频演示讲解 注册 短信接收:https://sms-activate.org/cn/buy 一美元: 充好后打开,选择印度: 下 ...

  6. ChatGPT 帮你写情人节文案

    Q:请以情人节我遇到了前女友为标题,写个故事 A :今天是情人节,我特意来到这里,和家里的同伴一起去逛街约会.我没想到在繁华的人群中突然看见了前女友的身影,不知道自己的反应如何好.脑海里心里都涌出了以 ...

  7. ChatGPT帮你写简历找工作

    随着随着毕业时间的到来,应届生将要面临求职问题,根据官方的统计,2023届高校毕业生预计达1158万人,就业市场竞争激烈,无论是校园招聘,招聘会,线上招聘除了自身的准备和个人能力,都会用到简历,如何让 ...

  8. 职场神器:只需三分钟,让ChatGPT帮我写周报

    说到周报,尽管周报的目的是为了提高团队合作和项目进展的透明度,但很多职场员工都觉得是件麻烦事. 本来忙碌了一周到周五的下午,工作完成了,可以下班去吃饭,去嗨皮了,结果临走前还得写一份"每周工 ...

  9. 让ChatGPT帮你写一个短视频脚本是什么体验?

    很多网红博主以及各个领域的短视频博主都在使用的"AI编写视频脚本",效率直接提升20倍↑↑↑!很多自媒体平台对于ChatGPT的介绍很少,但是他们都在悄悄利用这个强大的AI来帮助处 ...

最新文章

  1. c语言x的2取模_c语言如何取模运算
  2. loadRunner12试用
  3. Java重写方法与初始化的隐患(转)
  4. 残疾人软件开发_残疾人应该使用Linux的6个理由
  5. 关于直播,所有的技术细节都在这里了(三)
  6. 模拟Post登陆带验证码的网站
  7. Eclipse 的中文简体版安装教程
  8. oracle循环视频教程,Oracle高清视频课程全45集,赶紧收藏吧!
  9. alpha-beta剪枝算法
  10. 关于微信公众号的迁移,在此记录一下
  11. K--最邻近(K-NN)算法
  12. 钢琴家软件里曲谱的数据为什么更新不了_王者荣耀安卓与IOS互通?IOS恐怕得到不少利益,不然这事成不了...
  13. 苹果系统代码汉字转拼音
  14. Laravel引入phpoffice/phpword替换Word文件内容
  15. Linux系统的Web服务器的搭建
  16. MindMapper使用技巧分享
  17. 大学行政职务、各类学生以及教师职称的英文翻译
  18. loadrunner Web_类函数之web_set_user()
  19. java 遍历阿斯克吗_java学习笔记
  20. Serial.begin

热门文章

  1. 心理预约管理系统与心理测评系统介绍
  2. python idle背景设置为黑色_Python IDLE背景设置与使用
  3. 5.进入线性代数的奇妙世界:向量的加法
  4. 二级联动省市mysql数据库_「zxfy」jQuery+php+mysql,轻松实现ajax无刷新省市二级联动 - seo实验室...
  5. 径向基(Radial Basis Function:RBF)神经网络学习笔记
  6. [2014.5.13][Ubuntu] Ubuntu 14.04STL 出现NTFS分区无法访问的问题
  7. 自定义异常 RuntimeException
  8. fpga的jtag接口扫不到器件_FPGA相关知识点9——JTAG接口的教训
  9. 【笔记】行测——常识判断之文史常识总结与归纳(六)
  10. havok物理引擎快速入门指南翻译