自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 收藏
  • 关注

原创 重学PyTorch,粗略笔记(二)dataset,dataloader

自定义的数据集类必须实现三个函数:initlen, 和getitemgetitem从数据集中给定的索引 idx 处加载并返回一个样本函数len返回我们数据集中的样本数。# # 下载 Fashion MNIST 数据集# # 解压 gz 文件# # 读取二进制文件并转换为 numpy 数组import os# 下载 Fashion MNIST 数据集# 解压 gz 文件# 读取二进制文件并转换为 numpy 数组# 保存 numpy 数组到文件# 加载保存的 numpy 数组。

2024-07-16 21:53:41 1251 1

原创 读论文:# An Embarrassingly Easy but Strong Baseline for Nested Named Entity Recognition

实体可以相互重叠,但不同的实体不能有交叉边界”的描述,这实际上是一种较为特殊的情况,它介于上述两种情况之间。在这种情况下,实体可以有部分重叠,但重叠的部分必须是完整包含的关系,即一个实体完全包含在另一个实体中,或者两个实体之间没有重叠,不允许出现两个实体边界交叉的情况。这种规则确保了实体边界的清晰性和一致性,避免了实体识别中的歧义。对于一个有n个标记的句子,有n(n+1)/2个有效跨度。

2024-07-15 20:02:53 628

原创 重学PyTorch,粗略笔记(一)

很久之前学PyTorch记的笔记,顺手整理一下。

2024-07-14 20:57:57 637 1

原创 读论文:llm is not a good few shot ie solver,but a good reranker for Hard Samples(一)正文

大模型是不是很好的少样本信息抽取解决方案

2024-07-11 16:56:19 784

原创 Bert入门-使用BERT(transformers库)对推特灾难文本二分类

这个是二月份学习的,最近整理资料所以上传到博客备份一下数据在这里:https://www.kaggle.com/competitions/nlp-getting-started/data使用BERT(transformers库)对推特灾难文本二分类xxx着火了(灾难)火烧云像是燃烧的火焰(非灾难)

2024-07-07 21:10:47 736

原创 知识蒸馏(一)

论文标题:Distilling the Knowledge in a Neural Network论文提出了一种新的模型压缩方法,在手写字识别(MNIST)数据集上取得了很好的效果可以通过将模型集合中的知识提炼成一个单一模型引入了一种新型的集合类型,由一个或多个完整模型和许多专家模型组成,这些专家模型学会了区分完整模型混淆的细粒度类别。与专家混合模型不同,这些专家模型可以快速并行训练。问题:大规模模型训练需要大数据集大算力但是在推理和部署时又要顾及到下游的小算力的设备。

2024-04-16 21:57:23 607

原创 # Contrastive Learning(对比学习)--CLIP笔记(一)

CLIP是一种多模态预训练模型,由OpenAI在2021年提出,论文标题:Learning Transferable Visual Models From Natural Language Supervision ([论文有四十多页,作者做了超级多的实验,看李沐老师和朱老师的视频讲解也算是一次知识蒸馏([by Hinton)了通过大量的图像-文本对进行训练,CLIP的核心思想是通过对比学习来训练模型。它将图像与文本配对,并尝试将它们映射到相同的特征空间中。

2024-04-12 22:20:54 1555

原创 Visual and CNN 笔记

visual and CNN边缘检测比如对于6x6的灰度图像:构造3x3的filter(滤波器(卷积核))向右移动步长为1,直到边界,再回到起点,向下移动一步为什么可以做边缘检测:右侧4x4矩阵中间的白色区域就包含了6x6矩阵的垂直边缘可以用神经网络反向传播来训练出比较好的滤波器矩阵参数选择padding卷积后的输出矩阵大小公式:(n-f+1)x(n-f+1)为了不让...

2024-03-18 13:34:00 316

原创 (自用笔记)RNN原理,Pytorch实现和使用RNN实现IMDB英文电影评价二分类

循环神经网络记忆单元分类RNN,GRU,LSTM类别单向循环,双向循环多层单或双向叠加delay:n帧输入输入网络,记忆单元先更新n步,这n步的输出先不要使得预测第一帧输出的时候不只看到了第一帧的输入(看到的上下文更宽)优点/缺点:优点:每个时刻的权重共享,可以处理变长序列,模型大小与序列长度无关,计算量与序列长度呈线性增长,考虑历史信息,便于流式输出缺点:串行计算较慢,无...

2024-02-23 13:34:00 1161

原创 (自用笔记)Word Embedding原理和Pytorch实现

参考:(1)从Word Embedding到Bert模型—自然语言处理中的预训练技术发展史 - 知乎 (zhihu.com)(2)吴恩达深度学习(3)deep_thoughts老师的原理和代码讲解:https://space.bilibili.com/373596439越是底层的特征越是所有不论什么领域的图像都会具备的比如边角线弧线等底层基础特征,越往上抽取出的特征越与手头任务相关。正因为...

2024-02-22 14:45:00 565

原创 C++多线程

语言级别的多线程,优点是跨平台底层仍然是调用系统API(识别不同系统,调用不同的系统调用)创建线程头文件threadthread的构造函数:thread() noexcept //构造线程对象,不执行任何任务thread(thread&& _Other)noexcept//移动构造,将一个线程对象的资源所有权转移给新创建的线程对象,原来的线程对象不再代表线程temp...

2023-02-10 22:00:00 424

原创 C++复健:运算符重载,实现string容器,实现string和vector的迭代器

使得对象的运算像内置类型一样a.operator+(b);重载运算符的一些注意点:不能重载运算符操作基础数据类型:(1)重载运算符必须和用户定义的class类型一起使用(2)重载的运算符的参数至少有一个应该是一个类对象(或类对象的引用)int operator+(int x);//错误编译器做对象运算会调用对象的运算符重载函数,优先调用成员方法,若无则在全局作用查找合适的运算符...

2023-01-29 20:01:00 503

原创 Unix\Linux多线程复健(二)线程同步

线程同步并非让线程并行,而是有先后的顺序执行,当有一个线程对内存操作时,其他线程不可以对这个内存地址操作线程之间的分工合作线程的优势之一:能够通过全局变量共享信息临界区:访问某一共享资源的代码片段,此段代码应为原子操作全局变量在共享内存中一个进程中有多个线程,共享全局变量,这是一件既有用又有些危险的特性需要线程同步来维护临界资源的安全性下面的程序中两个线程堆全局变量number进...

2023-01-25 20:15:00 1074

原创 Unix\Linux多线程复健

线程是程序中完成一个独立任务的完整执行序列(是一个可调度的实体)一个进程可以包含多个线程查看指定进程的线程号:ps -Lf pid进程是CPU分配资源的最小单位,线程是操作系统调度执行的最小单位分类:内核线程:切换由内核控制,当线程进行切换的时候,由用户态转化为内核态。切换完毕要从内核态返回用户态用户线程:用户级线程是指不需要内核支持而在用户程序中实现的线程,它的内核的切换是由用户...

2023-01-22 22:41:00 1333

原创 git使用(复健 1 )

#ubuntu:sudo apt-get install gitwinodwshttps://git-scm.com/downloads设置用户名和邮箱:$ git config --global user.name "Your Name"$ git config --global user.email "email@example.com"#global表示本机上所有git仓库...

2023-01-16 21:37:00 395 1

原创 进程间如何进行通信[IPC](二)共享内存

talk命令talk使用socket进行通信,从键盘和socket接收数据,键盘的输入被复制到上半窗口,通过socket发出,同时通过socket读入的字符显示到下半窗口select系统调用#include <sys/time.h> #include <sys/types.h> #include <unistd.h> int sele...

2022-04-15 09:39:00 203

原创 mqtt.js和python paho-mqtt,python编写通过mqtt服务器和网页之间收发数据的程序,将数据存入sqlite3数据库...

mqttmosquitto -v8、修改配置文件,使其支持websocket协议,建立配置文件/etc/mosquitto/mosquitto.conf 把mosquitto源码目录下提供的默认配置文件复制到/etc/mosquitto目录cp mosquitto.conf /etc/mosquittocd /etc/mosquitto然后,修改配置文件mosquitto.con...

2022-03-04 11:16:00 616

原创 Linux 多进程(三)进程控制,孤儿进程,僵尸进程

进程控制,处理僵尸进程(父进程如何等待子进程的退出)exit 进程退出#include<stdlib.h>void exit(int status);//是标准c库函数//内部调用系统调用#include<unistd.h>void _exit(int status);#include<stdio.h>#include<unistd.h...

2021-12-25 22:10:00 284

原创 Linux多进程(二)

如何在一个程序中运行另外一个程序:exec系列调用#include <unistd.h> extern char **environ; int execl(const char *path, const char *arg, ... /* (char *) NULL */); int ex...

2021-12-25 21:59:00 369

原创 ESP32控制舵机转动,使用blinker实现远程开关宿舍灯/宿舍门

ESP32控制舵机转动,使用blinker实现远程开关宿舍灯/宿舍门准备杜邦线若干条(至少3条)舵机一个,我使用的是SG90,大概扭力为1.4kg/cmESP32/ESP8266一块,我的是乐鑫的,带WIFI模块,大概30RMBUSB数据线一条ESP32使用servo库会出现编译问题,架构不匹配,所以我这里直接使用pwm进行舵机的控制,你也可以使用ESP8266直接使用servo库控...

2021-12-19 23:03:00 10998 11

原创 使用Opencv+树莓派实现人脸识别(二)人脸识别和PyQt界面整合

人脸识别模型训练简单了解LBPH算法(在OpenCV使用的三种识别算法中是精度比较高的)cv2.face.LBPHFaceRecognizer_create()#使用LBPH算法训练模型(注意OpenCV3中是createLBPHFaceRecognizer,这里因为树莓派和Window使用的版本不一样,所以到树莓派上还会改代码)开始训练模型这里还是先训练,毕竟真正的人脸识别开锁,人脸...

2021-12-17 15:39:00 2445

原创 使用Opencv+树莓派实现人脸识别(一)图片人脸检测和摄像头人脸捕捉

前置安装我的树莓派是3b,就1G内存,系统为stretch版本,自带的python为3.5版本强烈建议在烧写树莓派系统时就直接用buster版本,自带的python版本在3.7及以上Windows下直接使用PyCharm安装python-opencv,python-opencv-contrib,pyqt5,pyqt5-tools树莓派下编译安装OpenCV:十分困难,可能要编译4-5小时...

2021-12-12 20:46:00 4584 1

原创 Linux 多进程(一)

Linux 多进程进程进程理论相关内容直接看教材就好现代操作系统等shell运行程序的过程:用户键入命令->shell建立一个新进程来运行此程序->shell将程序从磁盘载入->程序在它的进程中运行直到结束进程=程序+数据集合进程是操作系统动态执行的基本单元,基本的分配单元进程的状态和状态转换进程的三个基本状态:就绪态,运行态,阻塞态五种状态的模型:创建态...

2021-11-25 21:41:00 1057

原创 栈-栈的实现/栈的应用(栈混洗,表达式求值,括号匹配,进制转换,最小/大栈,单调栈)...

栈(stack)是一种先进后出的数据结构内部api接口:top();//获取栈顶元素值push();//放入元素到栈顶pop();//将栈顶元素弹出size();//元素个数isEmpty();//是否为空接口实现使用向量(动态数组/顺序表)实现将tail初始化为0,每增加一个元素,tail++,删去一个元素tail--,tail-1即为栈顶元素用size来记录元素个数#i...

2021-11-21 22:01:00 347

原创 进程间如何进行通信[IPC](一)使用管道(1)

进程间通信IPC(一)管道(1)不同进程(一般指用户进程)之间的资源是独立的,在一个进程中无法直接访问另一个进程中的资源(比如读时共享,写时拷贝)通信目的:数据传输,通知事件的发生,资源共享(涉及同步和互斥),进程控制同步:(直接制约关系)为了完成某个任务而创建的多个进程,在某些位置上协调它们的工作次序而等待,传递信息所产生的制约关系,制约源自于它们的相互合作异步:多道程序环境允许多个程...

2021-11-16 23:02:00 297

原创 Unix编程实践教程笔记(四) IO重定向

IO重定向//将stdin(标准输入)重定向到文件的第一个方法// 策略解释:// close then open// 先使用close将标准输入的连接切断// 使用open打开连接到stdin的文件// 当前可用的文件描述符最低位0,因此所打开的文件将被连接到标准输入上去// 如此:所有从标准输入读取数据的函数都将从此文件中读入#include<stdio.h&g...

2021-11-14 19:42:00 252

原创 Linux C/C++开发环境和编译调试(二)详细记录如何使用GDB进行调试

## 这篇博客主要是用来记录前些天复习GDB调试的过程调试前的准备Linux C/C++开发环境和编译调试(一) 需要关闭-o,打开-g,打开-Wall来看一下加入代码调试信息(-g)之后生成的可执行文件大小和没加的对比:root@ziggy-virtual-machine:~/learn_gdb# gcc -g test.c -o demo1 root@ziggy-virtual-...

2021-11-06 19:19:00 155

原创 复习 C++ 类(二)拷贝构造,赋值运算符,析构(1)

拷贝,赋值,销毁在类的基本概念一文中,有讲过这三种操作如果我们定义一个空类class Empty{};如果我们自己没有声明拷贝构造,拷贝赋值,析构函数,编译器在处理之后会自动添加此三函数的默认版本(当然如果没有声明任何构造函数,也会声明一个default构造函数)以上编译器生成的操作都是inline和public的上面的空类就如同:class Empty{ Empt...

2021-11-03 13:22:00 482

原创 写写Makefile

来写Makefile吧一些小程序可能使用Makefile就足够了,比如只有几个源文件的C++程序,使用CMake可能有点杀鸡用牛刀,直接g++又会重复输入,所以写个Makefile比较省心命名:makefile MakefileMakefile书写规则目标...:依赖... 命令(shell命令) .... .... #目标是最终要生成的文件,依赖是生成目标所需的文件或目标,命令...

2021-10-30 20:50:00 89

原创 Unix编程实践教程笔记(三) 目录与文件属性(写一个ls命令)

3. 目录与文件属性(写一个ls命令)ls找出当前目录文件名,ls -l显示详细信息(文件名字典序排序后)3.1 文件树磁盘上的文件和目录被unix组织为一颗目录树每个节点为目录或文件目录是特殊的文件,包含许多文件记录.表示当前目录,..表示上级目录more,cat等命令可以区分文件和目录,且目录文件包含一定的数据结构#include <dirent.h>...

2021-10-23 23:57:00 293

原创 Unix编程实践教程笔记(二)用户,文件操作,联机帮助,实现who,cp

命令也是程序在unix中,将自己写的程序的可执行文件放到/bin,/usr/bin,/usr/local/bin任一目录中即可增加新的命令who命令从第一列开始分别为:用户名,终端名,登录时间通过查询man who,得知已登录用户的信息放在/var/run/utmp中使用man -k xxx可以根据关键字搜索联机帮助由查询可知,utmp文件中保存的是结构体数组,数组元素是ut...

2021-10-18 19:40:00 170

原创 2. HTTP协议基础

HTTP协议用于客户端和服务端之间的通信应用HTTP协议时,必定是一段担任客户端,另一端担任服务器端且HTTP协议可以明确区分哪端是客户端或服务器端2.1 请求和响应请求必定由客户端发出,肯定是先从客户端开始建立通信,服务端在没有接收到请求之前不会发送响应客户端发送给HTTP服务器端请求报文的格式:GET /index.html HTTP/1.1Host: hackr.jp....

2021-10-16 21:53:00 205

原创 Unix编程实践教程笔记(一)系统编程概述,实现more命令

概述基础知识:内存空间用来存放程序和数据又分为系统空间:容纳操作系统的内存空间用户空间:容纳应用程序的内存空间操作系统:又叫内核程序想要访问设备必须通过内核,因为只有内核才能直接管理设备系统资源1.处理器:执行指令(程序由指令构成)2.输入输出(I/O):程序的所有输入输出都必须流经内核(保证正确性,有效性,安全性)3.进程管理:进程指一次程序的运行,每个进程都有自己的资源,...

2021-10-10 15:31:00 223

原创 C++ 函数(二)函数重载/函数指针/函数匹配

main函数不能重载重载函数重载函数应该在形参数量或形参类型上有所不同只有返回类型不同,也不是重载函数注意注意:形参名字不同没有影响,类型别名为已存在类型提供一另一个名字,这也没有影响typedef Phone Telno;void lookup(const Phone&){}void lookup(const Telno&){}//上面的两个函数是同一函数,不是...

2021-10-05 14:59:00 210

原创 C++ 类(一)构造函数,访问控制,类的一部分特性(this,类成员,类类型,const函数等),内联函数...

防卫式声明,防止头文件重复引用带来的错误#ifndef __COMPLEX__#define __COMPLEX__class complex{};#endif1. 构造函数(一)构造函数是特殊的类的成员函数,用于控制类的对象的初始化构造函数没有返回类型,不同构造函数的参数数量或类型必须有区别构造函数不能声明为const的,因此如果创建类的const对象时,构造过程中构造函数可以...

2021-10-04 16:14:00 178

原创 C++ const (二) constexpr和常量表达式,constexpr函数

constexpr和常量表达式2.5 constexpr和常量表达式常量表达式:不会改变且在编译过程中就能得到计算结果常量表达式:字面值,用常量表达式初始化的const对象也是常量表达式const int max_files = 20;const int max_fils_2 = max_files+1;int s = 1;//不是常量表达式const int sz = get_s...

2021-10-02 18:16:00 216

原创 C++ 函数(一)参数传递/return语句/返回类型

C++ 函数(一)参数传递/return语句/返回类型6.1 基础函数的返回值不能是数组或函数类型,但可以是指向数组或函数的指针6.1.1 作用域,局部对象函数体是一个块,构成一个新的作用域,其中定义的变量和形参都是局部变量在函数体外部定义的对象存在于程序的整个执行过程中自动对象:只存在于块执行期间的对象,例如形参,函数终止,形参会被销毁,局部变量如果本身不带初始值,则会执行默认初...

2021-09-29 21:16:00 810 1

原创 C++ const限定符 (一)

C++ const (一)2.1 基础使用关键字const可以对变量的类型加以限定,将其定义为一个常量const int buf_size = 512;任何试图为buf_size赋值的行为都会引发错误const对象必须初始化限制:只能在const类型的对象上执行不改变其内容的操作,例如初始化://利用一个对象去初始化另外一个对象,则是不是const都无关紧要int i = 42...

2021-09-26 16:41:00 75

原创 Linux高性能服务器编程学习笔记(一)高级I/O函数

高级I/O函数6.1 pipe函数pipe函数可用于创建一个管道,以实现进程间通信#include<unistd.h>int pipe(int fd[2]);参数是包含两个int型整数的数组指针成功返回0,并将一对打开的文件描述符写入数组,失败返回-1如果要实现双向传输则需要打开两个管道 read读取一个空管道或write写一个满的管道将阻塞 但是可以设...

2021-09-25 18:47:00 232

原创 Linux C++ 如何使用CMake

C++ CMakeCMake跨平台,可以快速生成MakefileCMake语法1.基本格式指令(参数1 参数2)参数之间不能使用,可以使用;或空格指令大小写无关,参数和变量区分大小写例如:set(HELLO hello.cpp)变量使用${}取值,在IF中直接使用变量名ADD_EXECUTABLE(hello main.cpp ${HELLO})使用方式和常用变量,指令...

2021-09-20 16:26:00 373

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除