- 博客(94)
- 收藏
- 关注
原创 docker 报错 error adding seccomp filter rule for syscall clone3
error adding seccomp filter rule for syscall clone3
2024-04-22 12:40:10 219
原创 百度百科数据爬取 python 词条数据获取
最近需要补充一些电力名词的解释,尤其是文字相关内容。百度百科上的词条质量有差异,因此我们需要先手工选择一些高质量词条。
2024-02-29 16:55:32 924 1
原创 利用PaddleNLP进行文本数据脱敏
敏感信息脱敏,借助paddlenlp工具,完成姓名、地名、金额、时间等信息的处理,保障数据安全。处理结果可读性高,指代关系明确,可以做到脱敏而不影响信息传递。
2024-02-19 19:34:26 624 1
转载 如何向 ChatGPT 提问以获得高质量答案:提示技巧工程完全指南
什么是 Prompt 工程?Prompt 工程是创建提示或指导像 ChatGPT 这样的语言模型输出的过程。它允许用户控制模型的输出并生成符合其特定需求的文本。ChatGPT 是一种先进的语言模型,能够生成类似于人类的文本。它建立在 Transformer 架构上,可以处理大量数据并生成高质量的文本。然而,为了从 ChatGPT 中获得最佳结果,重要的是要了解如何正确地提示模型。提示可以让用户控制模型的输出并生成相关、准确和高质量的文本。在使用 ChatGPT 时,了解它的能力和限制非常重要。
2023-05-15 10:32:39 141
原创 《知识图谱:概念与技术》 读书笔记(上)
《知识图谱:概念与技术》读书笔记,主要涉及知识图谱的概念、基础知识、词汇挖掘、实体识别、关系抽取、知识图谱构建、质量控制、知识补全、错误发现与纠正等
2023-03-01 16:28:48 534
原创 《知识图谱:概念与技术》 读书笔记(下)
《知识图谱:概念与技术》 读书笔记(下),主要介绍了知识图谱的建模与存储、查询与检索,以及基于知识图谱的语言认知、实体理解、搜索推荐、KQBA、知识问答
2023-03-01 14:52:20 429
原创 topk问题 基于快排解法
首先来看快排的基本代码,在最后一行的地方,已经获得了 i,此时arr数组中的前 i 个 元素就是数组中的最小元素,接下来,以找前k个最小元素为例,if __name__ == "__main__": def fast_sort(arr, left, right): if left < right: i = left j = right key = arr[left]
2021-08-23 16:09:52 173 1
原创 链表归并排序 数组归并排序
这两个题经常在面试中遇到,leetcode上也有解答,但是感觉有些不是很清楚,因此整理如下。链表归并排序主要就是找到mid,然后递归调用,得到left和right,再合并left和right;在sortlist中调用自己,然后进行归并,可以写成merge函数class ListNode: def __init__(self, val=0, next=None): self.val = val self.next = next def sor
2021-08-17 21:16:17 100
原创 latex 文献字体大小 间距
参照网上设置\small等方法都不奏效,发现下面这个真的管用。设置的时候,让引用文献的字体比正文小一点,看着更好看。\documentclass[sigconf,9pt]{acmart} \begin{document}% 其他内容略,没有引入额外的usepackage,和原作者说的有出入% 引用的格式\bibliographystyle{ACM-Reference-Format}% 7.5用来规定字体的大小,8.8用来规定行间的距离\def\bibfont{\fontsize{7.
2021-08-13 17:58:19 1865
原创 python二分查找模板
经常会遇到需要进行二分查找的情境,python中的bisect很好用,当无法使用这个库的时候,可以自己手动实现。下面的代码片段实现了“查找target第一次出现的位置”,以及“第一个大于target的值的位置”两个功能,如果要找target最后一次出现的位置,可以在“第一个大于target的值的位置”的基础上减一。如果第一次查找11,left和right都等于7(即数组的长度,因为11不存在于数组arr中),需要手动判断。下面的代码适用于剑指offer《在排序数组中查找数字》import bisec
2021-08-10 22:08:33 207 1
转载 二叉树遍历 非递归 简单方法 python
看到很多相关解法,感觉有些难以理解,发现了下面这个文章,分享给大家。里面的主要思路就是放一个空节点,利用空节点来完成其它管理工作。统一框架 方便理解。#前序class Solution: def preorderTraversal(self, root: TreeNode) -> List[int]: res = [] stack = [] if root: stack.append(root) whi
2021-05-10 20:55:29 103
原创 pytorch 频率 过滤 保留高频 保留低频
实验中遇到这样一个需求,在[batch_size,seq_length]的二维tensor中,找到每一个batch_size中出现频率最高的那一项,过滤掉其他项(保持原有形状),并获取其编码。例如,输入序列是[ [1,1,1,2,2],[3,3,4,4,4]], 期望获得[[1,1,1,0,0],[0,0,4,4,4]],之后再获取1和4的embedding表示。(如果想获得[1,4]也是类似的),代码如下:import numpy as npimport torch # 关键代码,数据会在后
2021-03-09 17:55:17 969
原创 pytorch Embedding 修改 自定义
现在你有一个[20,64]的编码emb1,代表20件商品。现在你想将每个商品的特征信息emb2融入到编码中,获得一个新的[20,64]的编码emb1’。假设商品信息编码emb2是[20,8]的,你需要将emb1中的每一个编码的前8项emb1[:,:8] 换成 emb2,可以这样做:(下面代码的embedding代表的是商品编码,fea代表的是商品的特征信息) import torch import torch.nn as nn x = nn.init.xavier_normal
2021-03-02 00:28:52 1633
原创 pytorch topk 保持维度和位置 置零
pytorch的topk能够返回最大的k个值,现在假设有一个[2,3,4]的权重矩阵,如果我们需要在第三个维度找出最大的两个值,(并保持权重矩阵的维度不变,且最大值的位置也不变),topk就不是很好用了,以下代码能解决这个问题:import torchimport numpy as npif __name__ == "__main__": x=torch.tensor(np.arange(1,25)).reshape(2,3,4) print(x) # k=2表示选择两个最大值
2021-02-26 00:18:08 2171 2
原创 colab 文件位置
-------- 首先使用这两行代码,就能操作谷歌云盘了from google.colab import drivedrive.mount('/content/drive')-------- 接下来使用 pwd ls等命令就能查看文件位置了,文件的根目录是/content/drive/MyDrive,你所上传的文件都是在这个目录下的,使用的话可以加上这个路径有一个bug,就是当你使用pwd时,文件路径会变成“My Drive”,有一个空格,当遇到问题时...
2021-02-14 20:01:51 5968
原创 概率论 马尔可夫 切比雪夫等定理的解释
这几天偶然看到了概率论的知识,对于几个定理,发现了一些更好的解释,能够帮助大家理解应用。详细请参考张敏老师的<PyTorch深度学习实战>。1.大数定理在实验条件不变的情况下,重复实验多次,那么随机事件出现的频率近似等于它的概率。例如,扔硬币实验中,扔1万次硬币,正面朝上的概率近似等于50002.中心极限定理样本的均值约等于总体的均值,任意一个总体的样本的均值都会围绕在总体的均值周围,并且呈现正态分布。例如,全国人口普查,抽取100万人进行统计,统计出来的身高、体重等指标的平均值
2021-01-31 21:06:29 749
原创 pytorch gru rnn lstm 整理
其他人的博客里对于参数之类的讲解已经很详细了,这里汇总一下我看到的可能有用的资源,首先是lstm等的pytorch实现的直观理解,然后是gru的手动实现,rnn和lstm类似。rnn类似的网络,并不是一次输入1句话,而是每次输入一个单词。例如[[11,12,13,14],[21,22,23,24]],每个数字代表一个单词,输入的时候,是按照(11,21),(12,22),(13,23),(14,24)的顺序输入的。1.pytorch(参考AI有道:https://zhuanlan.zhihu.com/p
2021-01-27 23:41:53 264 4
原创 pandas 频率 赋值 重置
假设有30位同学,每人买ABCD四种商品,,每件商品的编号是1~10,现在需要统计A类商品中购买频率过低的商品。例如A商品有{1,1,1,2,2,2,3,3,3,4},则4号商品是购买频率过低的商品。if __name__=="__main__": from pandas import DataFrame import numpy as np # 30行4列 data = np.random.randint(1, 10,(30,4)) print(data)
2021-01-25 12:49:50 95
原创 pytorch-gpu 与 jupyter
安装torch-gpu的时候,可能不需要额外安装cudnn与cuda,cuda可能是电脑自带的,cudnn好像会跟torch一起被安装。今天准备自己处理一下数据,数据量1G以上,所以需要用jupyter,我运行了一下conda install jupyter就崩溃了,尝试了很久没法回复,所以从头安装一下,整个过程记录如下:新建py36环境 conda create -n torch_jupyter python=3.6安装pandas等必要的库;随后安装jupyter notebook,注意使用
2021-01-24 23:01:40 660 1
原创 pytorch 获取最后一个非0值 截取
之前的一个文章写过tensorflow如何实现,有可能对大家有帮助,这里用pytorch实现了一下,大概意思就是,输入1个[batch_size , seq_len ]的矩阵,目的是获取每一行中的最后一个非零元素,例如[ [1,2,3,0,0,0], [4,5,0,0,0,0]],期望获取[[3],[5]], 这个功能在srgnn之类的模型中有用到,就是获取每个交互序列的最后一个有意义值。注意序列中,0都是排在末尾的。import torchimport timeif __name__ == "__
2021-01-21 11:29:40 1129 4
原创 pytorch gather 使用详解
gather别人有讲过,但是有些抽象,我举个例子来展示。假设3位同学参加4个科目的考试,成绩记录位item_emb,每门科目有可能考一次,也有可能考两次(为了举例子方便)注意,下面的-1会在最后再讲一下。index和item_emb在-1之外的维度上,形状必须相同在dim=0的情况下gather,假设,考4门,每门科目考一次,item_em是(3,4,1)的,在dim=0上做操作,因此index必须是(-1,4,1)维度的,index中元素的取值不能大于3-1,会生成一个(1,4,1)的向量,这个向量
2021-01-20 19:36:52 195 3
原创 pytorch repeat 使用详解
repeat可以完成指定维度上的复制,通过不同的复制方法以及与view的混用,能完成向量之间的两两交互,在与推荐系统有关实际使用中,repeat可以这样用:假设有一个item_emb矩阵,形状是[2,2,4],代表了2位用户,每个用户有2个感兴趣的商品,每个商品可以用4维向量表示:item_emb:tensor([ [[0.5764, 0.8429, 0.5437, 0.9735], [0.8917, 0.5450, 0.7866, 0.6392]],
2021-01-18 23:26:33 699 3
原创 pytorch 矩阵相乘 matmul 详解
论文中经常遇到加权和,其中的权重对应着下面weight矩阵中的“3”,需要处理的数据对应着下面的item矩阵,item矩阵是[35]的,这里的“3”最关键,理解了3的意义,也就理解了矩阵相乘假设有一个weight矩阵[43],和一个item矩阵[3*5]:weight矩阵表示4位用户对三件产品的关注程度,item矩阵表示三件产品在5个维度上的得分weight:tensor([[0.1000, 0.1000, 0.9000], [0.0100, 0.0100, 0.9800],
2021-01-18 18:20:58 1561
转载 tensorflow2.0线性回归
tf2和pytorch比较像了,感觉都是动态图,好写一些,这里找到个线性回归的代码供大家参考,是github上一个教程TensorFlow-2.x-Tutorials的。tf2用tape进行反向传播等操作,感觉比pytorch还要简单些,不用清零了。import tensorflow as tfimport numpy as npfrom tensorflow import kerasimport osclass Regressor(keras.layers.Layer):
2021-01-16 22:00:33 133 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人