- 博客(22)
- 收藏
- 关注
原创 autograd自动差分引擎
torch.autograd是 PyTorch 的自动差分引擎,可为神经网络训练提供支持。神经网络(NN)是在某些输入数据上执行的嵌套函数的集合。 这些函数由参数(由权重和偏差组成)定义,这些参数在 PyTorch 中存储在张量中。训练 NN 分为两个步骤:正向传播:在正向传播中,NN 对正确的输出进行最佳猜测。 它通过其每个函数运行输入数据以进行猜测。反向传播:在反向传播中,NN 根据其猜测中的误差调整其参数。 它通过从输出向后遍历,收集有关函数参数(梯度)的误差导数并使用梯度下降来优化.
2021-12-19 22:24:07
403
原创 文本分类半监督学习代码分析
@2021张量如同数组和矩阵一样, 是一种特殊的数据结构。在PyTorch中, 神经网络的输入、输出以及网络的参数等数据, 都是使用张量来进行描述。张量的使用和Numpy中的ndarrays很类似, 区别在于张量可以在GPU或其它专用硬件上运行, 这样可以得到更快的加速效果张量的初始化:1.直接生成张量data = [[1, 2], [3, 4]]x_data = torch.tensor(data)2.通过numpy数组来生成张量np_array = np.array(d
2021-12-14 10:56:51
244
原创 基本的DOS指令操作
copy con 文件名称.文件类型可以实现将多条指令输入到指定文件名中的操作,所有要写内容完成后输入ctrl+z表示完毕,避免了从终端输入echo命令写操作时一次只能写一行的弊端。例子如下:在指定目录下生成一个echo.bat批处理文件,文件内容见上图。接下来对该内容进行解释:上图中相当于把每一行都当成一个终端的命令输入到终端进行运行。例如第一行echo表示在批处理文件执行窗口对echo后面的内容进行显示。pause表示运行暂停,按任意键继续运行(正如我们运行程序中常见的那样)go
2021-11-23 19:10:30
245
原创 c++链表数据结构
有关链表的理解:初始化时head表示第一个节点:head->next表示第二个结点,head->val表示第一个节点的值,head->next->val表示第二个节点的值head,head->next都是指针型数据题目一:判断是否为环形链表思路:沿着链表进行遍历,将遍历元素存入哈希表,并且判断哈希表中该元素是否存在即可:class Solution {public: bool hasCycle(ListNode *head) { /
2021-11-23 17:21:24
1165
原创 简单的DOS命令
DOS:Disk operating system磁盘操作系统主要是一种面向磁盘的系统软件,简单来说就是人给机器下达命令的集合,是存储在操作系统的命令集。通过DOS,我们可以更容易易理解怎么给机器下命令,不必去深入理解机器的硬件,也不必死记硬背枯燥的二进制数字的机器命令,只需通过一些接近英语的DOS命令,就可以轻松的完成绝大部分日常操作。批处理,也称为批处理脚本。它的构成没有固定格式,每一行可视为一个命令,每个命令可以含多条子命令,从第一行开始执行,直到最后一行。示例:ping sz.tenc
2021-11-22 20:05:48
884
原创 机器学习之聚类
聚类是常见的一种无监督学习方法,该训练的样本标记信息是未知的,聚类过程仅能自动形成簇结构,而簇结构对应的语义(标签)需要训练者自身理解命名。样本集D={x1,x2....xm}包含m个无标记样本,每个样本xi={xi1,xi2....xin}n维特征变量,聚类算法将D划分成k个互不相交的簇,等.....聚类算法涉及的两个基本问题:性能度量和距离计算所谓性能度量就是测试聚类效果的”簇内相似度“和”簇间相似度“,前者高后者低是较好的聚类结果。性能度量分为两类:1.比较聚类结果给出的簇划分和参
2021-11-21 21:59:50
987
原创 c++之矩阵,多维数组
1.有效数独题目描述:数字1-9在每一行只能出现一次。 数字1-9在每一列只能出现一次。 数字1-9在每一个以粗实线分隔的3x3宫内只能出现一次。分别用三个数组存储每一行每一列以及每一个小九宫格([i/3][j/3])中某数出现的次数public: bool isValidSudoku(vector<vector<char>>& board) { int rows[9][9]; int columns...
2021-11-21 21:20:10
837
原创 c++之哈希表
题目描述:给定一个字符串 S,请你找出其中不含有重复字符的最长子串(与最长子序列进行区分)的长度。思路:递增地枚举子串地初始位置,则最长子串的结束位置是不递减的。因此可以使用滑动窗口进行解题,定义两个指针分别指向子串的起始和终止位置,定义一个哈希表进行字串中元素是否重复的判断。C++ STL unordered_set无序哈希基本操作(本题):创建:std::unordered_set<类型> hash_set(名称)插入:hash_set.insert()查找值为key
2021-11-21 20:52:17
600
原创 逆向理解冒泡排序
题目描述:给定一个字符串冒泡排序所需交换次数,求解字典序(字母顺序排列的单词按字母顺序排列的方法)最小的该字符串思路:一个完全逆序的字符串经过n*(n-1)/2次交换可顺序,给定交换次数只需找到最少字母个数后完全逆序再部分矫正顺序达到与所需交换次数契合即可。word="abcdefghijklmnopqrstuvwxyz"def get(n):#根据所需交换次数解出所需最少字母个数 max_n=0 for index,index_word in enumerate(word)
2021-11-19 17:33:33
140
原创 python数字三角形
h=eval(input())w=[list(map(int,input().split())) for i in range(h)]for i in range(1,h): for j in range(0,i+1): if j==0: w[i][j]+=w[i-1][j] elif j==i: w[i][j]+=w[i-1][j-1] else: w[i][j]+=m...
2021-11-18 19:55:04
1491
2
原创 python内置函数,字典,列表
题目描述给了一个单词后,帮助他找到出现最多的字母和这个字母出现的次数。输入描述输入一行包含一个单词,单词只由小写英文字母组成。对于所有的评测用例,输入的单词长度不超过 1000。输出描述输出两行,第一行包含一个英文字母,表示单词中出现得最多的字母是哪 个。如果有多个字母出现的次数相等,输出字典序最小的那个。第二行包含一个整数,表示出现得最多的那个字母在单词中出现的次数。解决1:使用python字典数据类型解决2:使用python内置函数ord,chr解决3:使用pyt
2021-11-17 18:35:57
668
原创 半监督学习之softmax+锐化预测
首先在数据增强的基础上引入半监督学习:文本数据增强的方法,无论一个样本经过同义词替换,还是回译,还是随机交换词语的位置生成多个样本,其实人还是能判断出这几个样本来源同一个句子,从这个角度出发,数据增强带来的效果有限,想想假如训练集只有100条样本,无论你怎么做增强,本质上,样本的来源其实就是那100条,这样模型训练出来的效果也有限。这时候,就体现出半监督学习的重要性,如何把海量的无标注数据纳入进模型训练。思想很简单,对于标注好的样本一样用交叉熵作为损失函数,对于没标注的样本,则用Consisten.
2021-11-14 15:08:39
1674
原创 文本分类之模型训练计算损失与精度
2021SC@SDUSC文本分类半监督学习分析代码来源:GitHub - SanghunYun/UDA_pytorch: UDA(Unsupervised Data Augmentation) implemented by pytorchhttps://github.com/Sanghunyun/UDA_pytorch该项目(无标签数据增强)整体思路见下图:1.计算模型训练损失该模型训练的损失分为有标签和无标签数据造成的损失两部分,由图中可以看出分别使用交叉熵和相对熵进行计算。代码.
2021-10-31 21:16:10
1559
原创 Bert模型输入输出大揭秘
2021SC@SDUSC1.简介Bert在自然语言处理(NLP)领域刷新了 11 个任务的记录,万众瞩目,成为异常火热的一个预训练语言模型。相信不少人入门学习Bert模型都倾向于提纲挈领,先明白它的输入输出形式以及预训练过程中的处理,本文结合代码和相应的数据集带大家一起解密Bert模型的输入输出。2.输入形式这是一个运用bert模型对句子进行分类的应用的原始数据集(训练集)形式,由上图不难看出该数据集由关键词、关键词位置、文本和标签四个属性组成。而最终经过处理得到的能够直接传入bert模
2021-10-24 21:24:17
2885
原创 文本分类半监督学习
2021SC@SDUSC基于bert_base模型的文本分类半监督学习在bert的模型之上加入无标签数据增强技术,本文开始进入bert模型的探索和uda无标签数据增强入门。1.概述:DisTillBERT 作为bert模型的简化版,亲手实践其完成句子分类的整个过程无疑是bert入门的绝佳指南。数据集:https://github.com/clairett/pytorch-sentiment-classification/raw/master/data/SST2/train.tsv数据
2021-10-17 20:28:50
1366
原创 文本分类半监督学习--UDA
2021SC@SDUSC1、UDA简介:半监督学习最近在标签数据匮乏的情况下,在改进深度学习模型方面显示出很大的前景。首先利用已标注数据训练出模型,再用该模型预测大量的未标注数据创造出伪标签,然后基于伪标注和已标注数据共同训练出半监督模型,基于大量的未标注数据进行训练可以应对各种噪声。而Unsupervised Data Augmentation(半监督数据增强)强调的则是一系列的对未标注数据进行加噪、回译等数据增强技术操作。见下图2.代码分析报告代码来源于:https://git.
2021-10-10 17:26:59
1194
原创 文本分类半监督学习问题
目录一、项目综述:项目背景:小组成员:课程目标:项目计划任务目标任务分配二、项目简介三、环境的部署配置安装anaconda显卡配置安装pytorch2021SC@SDUSC一、项目综述: 项目背景: 本项目为山东大学软件学院2021-2022学年秋季学期“软件工程应用与实践”课程项目 小组成员: 网安工学:吴泽昊 、大数据:熊静飞、大数据:张致晏、软工:刘敬炜 课程目标: 与指导老师进行沟通交流,下载相应开放项目源..
2021-09-30 18:38:01
754
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人