第一周学习内容

如果讨论深度学习的本质是啥,应该分为两部分:对数据集的拟合和对参数的反向传播优化。

现在torch等框架好处是参数的梯度可以自动求、优化了(用backward和optimizer)。未来打算了解些底层知识的话,可以来一期纯用numpy实现。

任务:结合我编写的代码,阅读下压缩包里这篇论文,地址为:(https://arxiv.org/abs/1408.5882https://arxiv.org/abs/1408.5882,并根据论文对代码进行标注,刚开始尽可能详细些注释,标注好的代码可以分享到群里。

再附几篇文章吧:

1、神经网络:神经网络15分钟入门!足够通俗易懂了吧 - 知乎

2、反向传播:深度学习 | 反向传播详解 - 知乎​​​​​

import numpy as np
import torch
import torch.nn as nn
import torch.optim as optim
import torch.nn.functional as Fclass TextCNN(nn.Module):def __init__(self):super(TextCNN, self).__init__()self.num_filters_total = num_filters * len(filter_sizes)self.W = nn.Embedding(vocab_size, embedding_size)self.Weight = nn.Linear(self.num_filters_total, num_classes, bias=False)self.Bias = nn.Parameter(torch.ones([num_classes]))self.filter_list = nn.ModuleList([nn.Conv2d(1, num_filters, (size, embedding_size)) for size in filter_sizes])def forward(self, X):embedded_chars = self.W(X) embedded_chars = embedded_chars.unsqueeze(1) pooled_outputs = []for i, conv in enumerate(self.filter_list):h = F.relu(conv(embedded_chars))mp = nn.MaxPool2d((sequence_length - filter_sizes[i] + 1, 1))pooled = mp(h).permute(0, 3, 2, 1)pooled_outputs.append(pooled)h_pool = torch.cat(pooled_outputs, len(filter_sizes)) h_pool_flat = torch.reshape(h_pool, [-1, self.num_filters_total]) model = self.Weight(h_pool_flat) + self.Bias return modelif __name__ == '__main__':embedding_size = 2 sequence_length = 3 num_classes = 2 filter_sizes = [2, 2, 2] num_filters = 3 sentences = ["i love you", "he loves me", "she likes baseball", "i hate you", "sorry for that", "this is awful"]labels = [1, 1, 1, 0, 0, 0]word_list = " ".join(sentences).split()word_list = list(set(word_list))word_dict = {w: i for i, w in enumerate(word_list)}vocab_size = len(word_dict)model = TextCNN()criterion = nn.CrossEntropyLoss()optimizer = optim.Adam(model.parameters(), lr=0.001)inputs = torch.LongTensor([np.asarray([word_dict[n] for n in sen.split()]) for sen in sentences])targets = torch.LongTensor([out for out in labels]) for epoch in range(5000):optimizer.zero_grad()output = model(inputs)loss = criterion(output, targets)if (epoch + 1) % 1000 == 0:print('Epoch:', '%04d' % (epoch + 1), 'cost =', '{:.6f}'.format(loss))loss.backward()optimizer.step()test_text = 'sorry hate you'tests = [np.asarray([word_dict[n] for n in test_text.split()])]test_batch = torch.LongTensor(tests)predict = model(test_batch).data.max(1, keepdim=True)[1]if predict[0][0] == 0:print(test_text,"is Bad Mean...")else:print(test_text,"is Good Mean!!")

闪烁着凄烈紫光的太刀。名之为「回光」是因为一度破碎的过去。相关推荐

  1. 《太乙金华宗旨》回光修炼法探秘

    <太乙金华宗旨>是一部道教养生奇书,传为唐代著名道士吕洞宾所著.吕洞宾是民间传说的「八仙」之一,师从高道钟离权,得到钟离权亲授之金丹秘旨.「钟吕金丹道」是道家养生最为实用也最为神秘的功法, ...

  2. 服务器光信号灯亮红灯,光猫光信号一直闪红灯怎么修复 光猫光信号一直闪红灯怎样修复...

    如果是光端口很低或没有光线,信号灯不能接收光信号,或者光缆出故障,光猫本身.光接收器部分的损坏和服务器故障,可以通过询问客服来解决:如果是室内尾纤连接光猫接头接触不良,可以重新拔插一下接口试试:若是室 ...

  3. 「留光」1小时:中科大让我们离「量子U盘」又近了一步

    视学算法报道 转载自:机器之心 编辑:张倩.小舟 「简单来说,我们就是用一块晶体把光『存起来』,一个小时后取出来发现,它的相位.偏振等状态信息还保存得很好.」 存储器的功能就是把信息存储起来,直到需要 ...

  4. 奥特曼系列ol光元在哪个服务器,奥特曼系列ol光元怎么合理使用

    奥特曼系列ol光元怎么合理使用 2016-02-21 作者:说玩小编 来源:说玩网 评论(9条) 我要评论 奥特曼系列ol光元怎么合理使用?在游戏中,光元是很珍贵且数量稀少的,我们平时在使用光元的时候 ...

  5. ct与x光的哪个辐射大_ct和x光哪个辐射大

    我们的身体器官和组织生长的部位和构造,非常复杂和多样,所以,很多种针对不同器官组织的检查仪器都需要精细化.科技化,这样才可以更便捷的对我们的身体做详细的检查,其中ct光和x光就是通过透视来观察我们身体 ...

  6. pmw.php,加速调光频率 PWM实现精准LED调光

    无论是经由降压.升压.降压/升压或线性稳压器驱动,连接每一个驱动电路最常见的线程就是须要控制光的输出.现今仅有很少数的应用只需要开和关的简单功能,绝大多数都需要从0-100%去微调光度.目前,针对光度 ...

  7. 「蓝光」「720/1080p」「HR-HDTV」等视频制式都是什么意思?清晰度对比如何?

    内容整理自https://www.zhihu.com/question/20106926/answer/24733203 网络高清视频产生的流程 1.电影公司拍好电影后(电影筹备到实景过程叫做前期和中 ...

  8. 10G光模块系列:10G 80公里(KM)光模块有哪些-易飞扬

    随着互联网.数据中心的高速发展,光模块的速率也随着大大提升,从10G光模块到40G光模块.从40G光模块到56G光模块.从56G光模块到100G光模块等等,每一次的提升代表着一个新块件的诞生. 到这里 ...

  9. rg1 蓝光危害rg0_关注LED灯具的蓝光危害

    您对您家的灯具了解吗?是否知道灯具的光辐射也有安全要求?今天质检君就跟大家一起来了解一下,和您家灯具有关的蓝光危害. 一.什么是蓝光危害 蓝光危害是指由波长介于(380~450)nm的辐射照射后引起的 ...

最新文章

  1. 自建28核树莓派集群,顺便学学docker,这里有一个500美元的搭建方案
  2. Visual C#的SQL Server编程
  3. linux wifi ip,Linux环境下使用WIFI模块:使用DHCP工具动态获得IP地址
  4. 吴恩达机器学习笔记十四之大规模机器学习
  5. DataGridView DataGridViewCheckBoxColumn编辑时实时触发事件
  6. flink CompactingHashTable源码解析
  7. linux常用命令-文件处理命令
  8. Nginx源码分析 - Event事件篇 - Nginx的Event事件模块概览(17)
  9. 程序员,都是内卷之王!
  10. 区块链 智能合约是有状态的吗
  11. 数据的预处理——平滑处理
  12. Barrett reduction
  13. 改变图片强调可修改r,如s.val[i]*scale*r
  14. 那些高中时曾经背得烂熟的古文(滕王阁序,阿房宫赋, 兰亭集序 , 师说,蜀道难 ...)再一次读读吧,慢慢的读,突然很想哭...有些岁月果真不曾忘怀
  15. 利用watir自动化测试并截图,截图后保存
  16. 赶紧收藏!41个Web UI工具包资源免费及付费下载
  17. 使用 bibtex 进行参考文献管理
  18. linux终端分屏工具tumx
  19. 推荐系统——Evaluation criteria(评估准则)
  20. ML-Diary02

热门文章

  1. 为什么全卷积网络可以输入任意大小的图片
  2. 软考电子证书什么时候可以查询?
  3. 面试向:什么是Two factor authentication?
  4. Sql语句——单行注释与多行注释
  5. 无损音频wav音乐格式怎么转换成mp3格式 1
  6. excel取某例值python_python对excel操作获取某一列,某一行的值,对某一列信息筛选 ...
  7. VS Code打开vue文件出现很多黄色波浪线的解决办法(ESlint插件引起)
  8. 多模块项目微服务器,springboot多模块项目(微服务项目)正确打包(jar)方式...
  9. 装有win10的笔记本电脑共享手机流量时防止流量狂掉
  10. Chrome 恐龙游戏