自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 dataclasses中asdict的用法

第二个是,使用魔术方法__post_init__声明变量也不被asdict返回,__post_init__用于在类执行__init__后自动执行。今天读源码读到这个函数的用法,它用在声明的dataclass类里面,将dataclass声明的属性变成字典返回。第一个是直接赋值的变量不会被asdict返回,只有声明的变量才行。

2024-09-27 13:38:21 167

原创 python异步处理

传统的运行轨迹是阻塞的,就是一行代码必须完成了,然后才能运行下一行代码。异步运行就是我们现在有多个任务task1(2s)和task2(3s),用一个asyncio.gather(task1(), task2())函数对任务进行分配,那么这两个任务会同时进行,最终花费时间以task2的3s为准,而不是阻塞式的5s。打印出来结果是3s。注意,一个是task1和task2里面要有await的任务,如果用time.sleep()是不行的因为time.sleep()不是个能异步运行的任务。

2024-09-24 21:32:04 249

原创 如何将普通Tokenizer变成Fast Tokenizer

现在的huggingface库里面Tokenizer有两种,一种就是普通的,另一种是fast的。我自己测试的时候单一一句的话fast要比普通的慢一些,当量叠上来,到100个句子,1000个句子的时候,fast要成倍数的更快。有post_processor定义,在使用的时候会自动添加special token,这里post_processor最多处理两句,多句就报错了。其中vocab将新的词表进行了更新,使得词表长度是原来的词表长度加上我们额外定义的special token的长度。

2024-09-23 22:25:29 288

原创 构建自己模型的Tokenizer

要自定义Tokenizer肯定是要有个父类的,如果用PretrainedTokenizer的话,里面的方法比如,vocab_size,get_vocab, _tokenize,_convert_token_to_id,_convert_id_to_token等几个关键的方法是需要根据自己的要求自定义的,其他的Tokenizer其实也是这么重写然后实现的,比如T5Tokenizer,可以去借鉴他们的写法然后改成自己的。因为我们的任务比较简单,我们可以继承T5Tokenizer,只重写里面的部分方法。

2024-09-23 17:49:11 403

原创 hydra.core.config_store中ConfigStore的用法

ConfigStore`可以让我们在python脚本中写一个类作为配置的yaml,不需要我们在新建yaml往里写东西了。与直接在目录里面添加yaml文件不同,`ConfigStore`支持使用类的方法,定义配置。就可以切换数据集配置啦,而且不需要再新建个`imagenet.yaml`选择配置dataset感觉还是第一种好些。

2024-09-22 18:35:58 192

原创 配置管理工具——omegaconf

omegaconf是专门用来解析.yaml文件,支持对yaml中设置参数的假设你的工作目录下有两个文件,一个是config.yaml,一个是main.py。解释一下`OmegaConf.save`中的参数`resolve`的含义,`resolve=True`意味着使用`resolve=True`后,字典是可以看到,`batch_size`变成了和`num_layers`一样的值。

2024-09-21 12:55:51 333

原创 缓存装饰器@cached_property

这个装饰器用在类里面的某个方法前面,当实例化这个类,然后第一次调用这个方法的时候会执行一次改方法,返回一个结果,后面如果再调用,就不执行,而是直接返回第一次运行的结果了,避免重复调用,节省了时间。这个装饰器和`@property`是一对,`@property`将方法变成属性,但是访问一次重新执行一次,而`@cached_property`执行一次就不变了。查阅资料,大体上了解了它的用法。此时func1这个函数,就是一个方法,没有被缓存,要是使用这个值那就得用`demo.fun1()`重新运行一遍。

2024-09-20 22:33:25 402

原创 关于python中屏蔽输出

python中屏蔽输出包含屏蔽标准输出(比如打印出来的内容)、屏蔽标准错误(错误信息)还有屏蔽logging信息等。屏蔽标准输出import contextlibimport oswith open(os.devnull, "w") as devnull: with contextlib.redirect_stdout(devnull): print("Hello, World!")运行上面的代码会发现,没有任何输出,因为`redirect_stdout`表示将标准

2024-05-28 11:34:10 482

原创 多线程处理python

总体来说,就加了个`from concurrent.futures import ThreadPoolExecutor`然后包装一个计算的函数`calculate_mean_std`,在`with ThreadPoolExecutor() as executor:`环境下执行`executor.map(calculate_mean_std, imgs)`就行了。这里`ThreadPoolExecutor()`的参数可以选择`max_workers`,没指定的话就默认给你选最多的。

2024-05-16 20:52:27 221

原创 使用torch完成多卡训练

因为我这个gpu进程得到的是这个进程上数据的loss,比如我有四张卡,第一张卡上batch size有64个数据,会产生一个loss,但是四张卡按理来说是256的batch size,我们的做法应该是把四张卡的loss加起来除以四。我不太懂,希望有明白的佬提点一下。第一个是torch.utils.data.DistributedSampler,这函数的就是给不同的gpu分配不通的数据,简单来说就是把编号1,3,5,...的数据分给gpu0,2,4,8,...分给gpu2等等,这一步只是把索引给分好。

2024-05-09 14:14:03 1807

原创 使用huggingface下载模型的时候如何,下载到我们指定的位置?

也可以指定HF_HUB_CHACHE,专门来存储模型数据集等。‘HF_HOME’是缓存所有内容的地址。

2024-04-17 15:21:21 1041

原创 str.maketrans(x, y, z)用法解释

str.maketrans()用法讲解

2024-03-31 13:57:41 265

原创 GitHub Actions说明

语法:Workflow syntax for GitHub Actions - GitHub Docsaction市场:GitHub Marketplace · Actions to improve your workflow · GitHub

2024-02-17 20:57:23 362 1

原创 Arxiv API说明

Arxiv学术论文查询接口详解 | Young's BlogarXiv API Access - arXiv info

2024-02-16 11:29:20 511 1

原创 vscode调试时出现FileNotFoundError

解决vscode代码调试时出现的FileNotFoundError问题。

2024-01-29 18:36:52 663

原创 在服务器上配置GitHub和GitLab的SSH

GitHub和GitLab的SSH配置。

2023-11-23 22:20:33 940

原创 如何下载S2ORC数据集

使用Semantic Schloar API下载包括s2orc在内的多个数据集

2023-11-19 14:44:44 2400 4

原创 使用镜像源下载Hugging Face模型

hugging face 中的许多模型国内下载不了,本文提供了一种通过脚本批量下载模型权重配置文件的方法。

2023-11-13 18:39:46 2615

原创 关于arxiv下载下来的文件转成.zip无法导入overleaf的问题

针对arxiv文章latex源码如何导入overleaf问题给出解决方案。

2023-10-16 22:54:57 735 2

原创 Github中“git clone https://xxx”加速

找了好几个发现不能用,终于找到一个,记录一下,方便后面使用。

2023-07-06 17:23:57 232 1

原创 关于vscode调试时跳不到本.py或本.ipynb文件之外的问题

关于vscode调试时跳不到本.py或本.ipynb文件之外的问题

2023-03-27 21:52:45 1061

原创 TYPE_CHECKING的含义和用法

TYPE_CHECKING的含义和用法

2023-03-08 11:23:22 2844 2

原创 关于from functools import lru_cache的简单实例

关于from functools import lru_cache的简单实例

2023-03-07 17:06:54 160

原创 关于python中导入相对路径包或者函数报错(“ImportError: attempted relative import with no known parent package“)

python中导入相对路径的包或函数出错(”“ImportError: attempted relative import with no known parent package)

2023-02-21 19:54:46 1531

原创 JSONDecodeError: Expecting Value: Line * column * (char *)

导入.json文件时的JSONDecodeError问题

2023-01-08 17:06:49 469

原创 Altium Designer 17中的 vaults explorer 打不开问题

在使用Altium Designer 17的时候,你可能会遇到找不到vaults的问题参考文档:https://www.altium.com/documentation/altium-designer/from-idea-to-manufacture-driving-a-pcb-design-through-altium-designer?version=17.0#!the-design之后你可能还会遇到一个问题,就是打不开vaults explorer,提示你vaultsexplorer ex

2021-09-02 22:03:33 4059 1

原创 FPGA和单片机的区别

FPGA和单片机的区别

2021-07-26 08:51:51 334

空空如也

空空如也

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

TA关注的人

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