李宏毅机器学习Homework1

  • 题意大概是(我具体没怎么听,觉得有问题的小伙伴可以提醒我一句),给你前四天的数据,根据第5天的身体状况预测第五天的test_positive,具体数据b站有,懒得放了
  • 因为电脑没有GPU所以我懒得管那些GPU的设置了,然后代码主要是训练模块,测试模块实际上就是把网络设置成推理模式,然后自己跑,很简单的我就不写了
  • 这个问题单纯是练手的,我也没看老师的代码是怎么做的,反正训练效果我感觉差不多就行了,就不多说废话,调整超参数那些自己可以尝试搞一搞
  • 最后大家感兴趣的话可以关注我的个人公众号右转的第二排架子,里面(将)有相关内容
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
import csv
import numpy as np
import matplotlib.pyplot as plttrain_path = 'covid.train.csv'
test_path = 'covid.test.csv'class Net(nn.Module):def __init__(self, input_dim, output_dim):super(Net, self).__init__()self.fc1 = nn.Linear(input_dim, 100)self.fc2 = nn.Linear(100, 50)self.fc3 = nn.Linear(50, 30)self.fc4 = nn.Linear(30, output_dim)def forward(self, state):output = F.relu((self.fc1(state)))output = F.relu((self.fc2(output)))output = F.relu((self.fc3(output)))output = self.fc4(output)return outputclass Covid19_Dataset:def __init__(self, train_path, test_path):self.train_path = train_pathself.test_path = test_path_, self.train_data = self.load_data(train_path)_, self.test_data = self.load_data(test_path) '''*******************************************************************id       : line 1location : line 2 - 38day1     : line 39 - 54day2     : line 55 - 70day3     : line 71 - 86day4     : line 87 - 102if train_data:day5     : line 103 - 118if test_data:  id + 116day5     : line 103 - 117 (need to predict 'tested_positve' according to relevant parameters)*******************************************************************'''def load_data(self, filepath):with open(filepath, 'r') as f:reader = csv.reader(f)index = next(reader)data = np.array([*reader]).astype(np.float64)return index, datadef sample_data(self, Batch_size, data):index = np.random.choice(len(data), size = Batch_size, replace = False) #不放回抽样sample_data = []for sample_index in index:sample_data.append(data[sample_index])return np.array(sample_data)if __name__ == '__main__':Batch_size = 16input_dim = 116output_dim = 1learning_rate = 0.001net = Net(input_dim, output_dim)dataset = Covid19_Dataset(train_path, test_path)criterion = nn.MSELoss(reduction = 'mean')optimizer = optim.Adam(net.parameters(), lr = learning_rate)Episode = np.arange(1, 1000)Episode_loss = []for epoch in Episode:sample_train_data = dataset.sample_data(Batch_size, dataset.train_data)sample_input_data = torch.FloatTensor(sample_train_data[:, 1:117])sample_label_data = torch.FloatTensor(sample_train_data[:, -1]).unsqueeze(1)net.eval()predict_data = net(sample_input_data)net.train()loss = criterion(predict_data, sample_label_data)Episode_loss.append(loss.item())optimizer.zero_grad()loss.backward()optimizer.step()Episode_loss = np.array(Episode_loss)plt.plot(Episode, Episode_loss)plt.show()

李宏毅机器学习Homework1(代码简洁版)相关推荐

  1. 台大李宏毅机器学习公开课2020版登陆B站

    课程简介: 真正大师的课程往往都是免费的,诸如吴恩达,李飞飞等.不过大家应该对李宏毅老师也不陌生吧?很多机器学习初学者,首选李宏毅老师.毕竟中文授课,而且他讲课通俗易懂.课程案例生动有趣(还记得宝可梦 ...

  2. 中文课程!台大李宏毅机器学习公开课2019版上线

    授权转载自机器之心, 未经许可禁止二次转载 台大教授李宏毅的机器学习课程经常被认为是中文开放课程中的首选.李教授的授课风格风趣幽默,通俗易懂,其课程内容中不仅有机器学习.深度学习的基础知识,也会介绍 ...

  3. python医疗系统代码_吴裕雄 人工智能 java、javascript、HTML5、python、oracle ——智能医疗系统WEB端复诊代码简洁版实现...

    #诊断逻辑代码 importsysimportosimporttimeimportoperatorimportcx_Oracleimportnumpy as npimportpandas as pdi ...

  4. python医疗系统代码_吴裕雄 人工智能 java、javascript、HTML5、python、oracle ——智能医疗系统WEB端初诊代码简洁版实现...

    #系统核心事务逻辑处理代码 importsysimportosimportcx_Oracleimportnumpy as npimportpandas as pdimporttensorflow as ...

  5. 李宏毅机器学习HW4 代码

    HW 4 Download !gdown --id '1ksbRUG0S646Y-mhN0t5RZSSlE9BLlFKh' --output Dataset.zip #这是我云盘的链接,能跑得动就是了 ...

  6. 吴裕雄 人工智能 java、javascript、HTML5、python、oracle ——智能医疗系统WEB端初诊代码简洁版实现...

    <!DOCTYPE html> <!-- To change this license header, choose License Headers in Project Prope ...

  7. 视频+笔记+能够跑通的代码,《李宏毅机器学习完整笔记》发布!

    点击我爱计算机视觉标星,更快获取CVML新技术 [导读]关于机器学习的学习资料从经典书籍.免费公开课到开源项目应有尽有,可谓是太丰富啦,给学习者提供了极大的便利.但网上比比皆是的学习资料大部分都是英文 ...

  8. 李宏毅机器学习-代码实践

    1. 学习目的 使用Logistics Regression进行数据分类. 2. 学习要求 学习LR学习算法的核心代码 写出详细的注释说明 3. 代码实践 (1)创建数据 def generate_d ...

  9. 李宏毅机器学习-explainable machine learning(机器学习的可解释性)及代码

    目录 为什么需要机器学习的可解释性? Interpretable VS Powerful 什么叫做好的 Explanation explainable ML的分类 Local Explanation( ...

  10. 【李宏毅机器学习CP1-3】(task1)机器学习简介分类|回归

    文章目录 1.机器学习的过程 2.机器学习相关分类 3.选择合适的model,loss function 4.CP3 一.回归定义和应用例子 回归定义 应用举例 二.模型步骤 Step 1:模型假设 ...

最新文章

  1. Attention is all your need 谷歌的超强特征提取网络——Transformer
  2. 关于如何卸载Lenovo System Interface Foundation方法
  3. ELK(ElasticSearch+Logstash+ Kibana)搭建实时日志分析平台
  4. [转]边框回归(Bounding Box Regression)详解
  5. 【链表】逆序打印链表
  6. Android之解决TabLayout里面每个Tab项的间距和修改指示线的长度(非反射)和修改选中字体大小
  7. Typora本地图片上传
  8. 一步一步写算法(之线性结构的处理)
  9. Angr安装与使用之使用篇(十二)
  10. c语言bim的题目,BIM考试选择题精选
  11. 建立数据挖掘的用户画像
  12. 解决BMap is not defined?
  13. oracle判断不是null,oracle中判断不为null
  14. android bitmap设置透明度,Android 设置图片 Bitmap任意透明度
  15. Ubuntu ROS Arduino Gazebo学习镜像iso说明(indigo版)
  16. 计算机网络中的搜索引擎是指根据一定的策略,搜索引擎的常用使用技巧
  17. 豆豆趣事[2012年03月]
  18. 手机跟电脑居然是同一IP地址,你知道是怎么上网的吗?
  19. Android 网络请求、网络状态及各种权限判断
  20. 【全球软件大会】华为前端工程师分享:华为云官网的智能化实践

热门文章

  1. 4900款网红pr调色lr预设ps滤镜达芬奇lut电影视频素材
  2. VS2015的下载地址和安装教程
  3. ktv服务器管理系统,小型KTV综合解决方案
  4. 【网络教程】Windows字体发虚,字体不清晰怎么办?
  5. php指定时间转为时间戳,将时间转换为时间戳_php日期转时间戳,指定日期转换成时间戳...
  6. ArcPy常用基础功能
  7. domino生成Excel图表
  8. 不要放弃!“软考论文”一点也不难
  9. NX_UG1872安装
  10. Cadence如何画PCB封装库