自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(73)
  • 资源 (2)
  • 收藏
  • 关注

原创 如何优化卷积算法

那么变成二维,就是OC*HW,为了算一个点的OC,我们需要对一个点,和所有相关的filter过一遍。比如feature map 变成oc H W IC K K ,这样的话,kernel就是: ic k k oc, 这样起码改了kernel的排布。HWC,不管C是怎么样的,那么filter,理论上是K*K*C。这个时候要算,就要oc摘出来,变成oc *H W = oc * icHW dot icHW,然后,oc h w这种排布,因为输出是这样排布的。CHW,那最后输出的结果是:OC,H,W的排布。

2024-04-12 20:11:31 385

原创 编译器领域一些特别好的文章

记录cv算法工程师的成长之路,分享计算机视觉和模型压缩部署技术栈笔记。https://harleyszhang.github.io/cv_note/ - cv_note/cv算法工程师成长路线.md at master · HarleysZhang/cv_note。xz​​​​​​​s​​​​​​​cv_note/cv算法工程师成长路线.md at master · HarleysZhang/cv_note · GitHub。上面的链接,里面有很多很好的文章,建议大家好好看看。

2024-04-12 19:56:45 280

原创 2024年面试AI编译器岗经验总结

很有趣的是这里的变化,+1,为什么+1呢?当时直接让我用代码写出来。讲道理,如果没有一点点推过,真的搞不出来。面试官认为这个东西,背也背会了。与这个问题相似的,就是用C++实现一个pooling;1.最简单的无padding的情况,无stride的情况;这个岗位倾向于招聘一些会写算子的人,尤其是华为昇腾的算子。面试岗位:美团大模型,职位:机器学习训练引擎工程师。4. 如果是有dialation的情况呢?最后,要我写一个卷积的计算公式。3.如果有padding的情况。2.有stride的情况;

2024-04-07 10:46:29 528

原创 TVM的常见优化方法

其实搞优化,记住两天:1.现在的cache策略是怎么样的?要将现有的数据转化为合适的格式,减少数据的访问时间。2.如果有特定的硬件指令,要讲数据转化为特定的硬件指令。最典型的是一个Gemm计算;最后写成循环表达式的形式:for(m,0,1024) for(n,0,1024) for(k,0,1024) C[m * 1024 + n] = 0f32 // 进行一个初始化 temp2 = m * 1024 temp1 = temp2 + n;

2024-04-06 23:59:06 814

原创 argc和argv和xargs

在代码中,我们可以发现,管道其实涉及到标准输入流,而,xargs,则是把参数给到下一个linux命令。其次是:xargs 和 管道的区别。首先是argc和argv的区别。

2023-07-05 10:33:46 116

原创 Linux删除顽固进程

比如有的时候,是由脚本A启动的pytest程序,每个pytest分为10个进程。当我干掉了脚本A之后,我们依然可以看到很多pytest在占着内存,当然出现这种情况的原因可能是多样的,比如:我们杀死进程的时候,会有一些很大的case,这些case被操作系统默认给暂缓执行了。killall 不行,我们用pkill, 最后还可以用pgrep 进行单杀。很久以前我一直用killall -u 用户名,这种方式批量杀死我的进程。再用这个杀死僵尸进程,基本上我的进程就被kill关了,这就是鸡尾酒疗法。

2023-07-05 09:58:22 204

原创 vscode_pytest_配置debug环境:增加和打印环境变量

意味着,我们编写一个代码,在代码中打个断点,就可以在当前baseline的基础上,做很多尝试。在面对大型应用的时候,动不动运行个两三分钟的程序,光是跑到我们要运行的地方就要这么久。daPython是一种解释性语言,它有一个非常好的好处,就是代码可以随调随改。在tasks.json中实现,环境变量的添加,以及,环境变量的打印。但是,有的时候,我们运行pytest的时候,会遇到环境变量的困扰。同时,在增加查找路径后,我们能把现有的环境变量打印出来。对Python打断点的技巧,相对会容易很多,大家都会。

2022-12-02 09:27:45 1443 1

原创 pytest报错:module py has no attribute log

这个时候我们pip install py,对自带的py进行一个升级,覆盖掉这个内建的py即可。安装:pytest和pytest-parallel。

2022-11-14 19:07:56 1133 1

原创 Pytest单case的调试

在Python开发中,会使用Pytest做测试。运行Pytest的方法也简单,只是使用pytest ** 就好了。如果是单case, 也可以直接通过直接运行单case的方式,比如python **;但这个过程要改代码,要改路径。因此,我们探索出了一种,在Vscode中,用调试器调试pytest测试用例的方法。

2022-11-01 09:19:51 794

原创 VSCode:VSCode提供额外的环境变量

1.在mac上使用vscode,远程通过ssh连接到服务器,进行开发。2.在bashrc中修改了环境变量,PATH=temp_path:${PATH};3.以后每一次vscode启动一个新的terminal,就会自动把temp_path加入环境变量。3.我从mac自带的terminal上启动了ssh连接到服务器,bashrc是没有temp_path的。

2022-10-28 10:12:52 1950

原创 conda环境迁移到其他机器上

conda env export > your_env.yamlconda env create -f your_env.yamlpip freeze > requirement.txtpip install -r requirments.txt

2019-12-20 12:42:33 622

原创 libcudart.so.8.0: cannot open shared object file: No such file or directory

这个问题,大家都说这个是库链接的问题。但有可能不是的。有可能是python指定错误了。在安装包的时候,不会考虑tensorflow和cuda的适配吗?有的时候,安装python的时候,没有写conda create -n name python==3.6那么这个时候python是默认的python ,很可能造成无法适配。所以,要加python==3.6,把一切控制在自己手中...

2019-12-20 12:34:57 198

原创 论文学习:《Multi-grained Attention Network for Aspect-Level Sentiment Classification》

《Multi-grained Attention Network for Aspect-Level Sentiment Classification》这是一篇2018年发表的文章。它的思想主要是1.针对基于主题的情感分析中的target进行处理,有的target会比较长,这样直接pooling求和,就会显得极端粗暴。2.不光考虑从target到context的attention,还...

2019-12-10 22:25:01 1603 1

原创 《Attentional Encoder Network for Targeted Sentiment Classification》

发表时间2019年9月1.纯用的是attention机制。2.用上了BERT机制3.用上了一个叫 label unreliability issue和 label smoothing regularization提出2016年tang和dong的工作,其实都是为了处理一个将target信息加入到低维空间中的问题。认为neutral这个标签,都有些碍事儿了。也关注targe...

2019-12-05 15:36:22 719

原创 解决问题:pycham想要查看注释,跳转到了pyi文件

想要查看pyi文件,总是突然跳到一个pyi文件这个文件里面全是接口def most_common(self, n: Optional[int] = ...) -> List[Tuple[_T, int]]: ...这个东西是干啥用的呢?是pycham自己生成的用来静态检查的文件,也没有什么性能损害。他就是为了告诉我们python中的一个变量到底是什么类型的东西。比如你的...

2019-11-27 23:29:53 2070

原创 解决问题:pytorch CUDA error: device-side assert triggered

x = (x - u) / torch.sqrt(s + self.variance_epsilon)RuntimeError: CUDA error: device-side assert triggered原则,不要去怀疑底层库的东西,那都是别人测试了很多遍的东西。出现这个错误,一般是embedding不匹配。比如我这里,我的错误是embedding写成了embedding...

2019-11-26 19:13:04 3845

原创 解决问题:python中的logging模块,在用python调用sh,sh中调用python后不能用

问题描述:file1# author:sheng.Gw# -*- coding: utf-8 -*-# @Date : 2019/11/22import pandas as pdimport numpy as nppd.set_option('display.max_columns', 1000)pd.set_option('display.width', 1000)...

2019-11-25 21:01:53 290

原创 解决问题:pycham更改远程第三方库的问题

有的时候,我们会遇到问题,在本地打开远程服务器上的文件,比如最下方的modeling.py文件在里面改一行代码,发现,这行代码改了之后,远程没有发生任何变动,再打开,还是老样子。解决方案是,直接去服务器上找到对应的文件,直接在里面更新。-------改完之后,运行程序,OK,但是用debug的时候,报错的时候,总是报出错误的行数。于是打点调试也无法使用。这是因为本地的代码库...

2019-11-21 19:27:08 150

原创 解决问题:ABSA_Keras不能使用的问题

原本作者介绍的包的数量太少,conda安装上后,还是在报错,各种包没有装。ImportError: cannot import name 'context'解决的思路是:1.安装的时候,如果选择conda最好选择conda,如果pip安装,其他最好用pip,尽量不要混用。(pip的效果更强一些)2.包要从低到高安装,比如先安装比较底层的numpy,再安装tensorflow,再安装...

2019-10-29 16:43:59 525

原创 Python基础知识复习:python中的类机制基础

Python中的类。首先,它拥有自己的命名空间,其次类的属性被称为特性,而对属性的处理,有封装,多态,继承三个操作。封装的意思是不对外暴露接口,这里涉及一个知识点:在函数前加上__就能表示,这是一个不可以被外界访问的函数。极端点,是希望内部的属性完全被外部看不到。多态的意思是一个对象被处理的时候,人家可能不知道对象的类型,但只要对象实现了人家要求的东西,就可以进行执行,那样不管多少种不...

2019-10-27 14:56:28 122

原创 解决问题:ImportError: No module named torch.data.distributed

具体的错误记不得了。但就是torch.data.distributed,python解释器表示找不到。这实际上,是远程服务器上的包安装的版本不对。解决方式:首先,在本地pycharm上分析代码是可以找到的。而后,质疑是否是路径配置错误。使用sys.path 查看路径。 这里有知识点,python包的查找方式:1.当前目录 2.环境path,3. site...

2019-10-20 22:58:09 5398

原创 解决问题:RuntimeError: implement_array_function method already has a docstring

大家可以尝试参考下面的这个帖子:https://blog.csdn.net/the_harder_to_love/article/details/90612091然后发现根本没用。然后在网上搜来搜去,发现官方的网站上都没有解决的办法。这是一个没人解决的问题。无论是升级包,还是降级包,还是怎样,就是不行。所以,请立刻放弃,直接在命令行操作,不要浪费时间了。这是pycham...

2019-10-20 16:51:24 1298 1

原创 解决问题:ImportError: Something is wrong with the numpy installation. While importing we detected an old

问题原版:ImportError: Something is wrong with the numpy installation. While importing we detected an older version of numpy in ['/home/guowei/env/enter/envs/cbert_aug/lib/python3.6/site-packages/numpy']...

2019-10-20 14:31:02 10175 4

原创 解决问题:RuntimeError: CUDA out of memory. Tried to allocate 96.00 MiB

这是我在运行ABSA-BERT-pair过程中遇到的问题。显存不够用。其实就是batch_size设置的过大了。我解决问题的思想:找个大显存的机器,看能不能解决这个问题===》租赁云计算平台====》换上24GB显存GPU=====》仍然遇到同样错误。到网上搜索这个错误。返回将GPU降到batch_size = 1,发现可以运行,继而调整运行到batch_size = 16...

2019-10-19 16:39:50 26789 8

原创 解决问题:chainer在训练模型的过程中,出现了nan

在用chainer训练模型的过程中,出现了nan解决问题的过程:1. 定位问题,一层一层向下看,找到了最先出现nan的地方2. 发现是embedding突然发生了改变,有一部分变成了nan3. 在该情况下检查梯度,发现是梯度突然变成nan4. 寻找解决梯度为nan的解决方法:https://groups.google.com/forum/#!topic/chainer/Z1...

2019-10-09 23:13:05 787

原创 《An Interactive Multi-Task Learning Network for End-to-End Aspect-Based Sentiment Analysis》

提出了一种多任务学习网络,实现了端对端的基于主题的情感分析AS 和 AE 是一个pipeline,我们可以反复不断的去优化这个问题。未完待续

2019-08-17 14:53:25 1085

原创 2019年今日头条夏令营考题

天文学家发现一颗系外行星可能存在生命。它的公转周期为40个地球日,自转周期为2个地球日。如果这个行星上480人需要组成若干个班级来上课,要求每个班的两个同学同一天的概率不低于50%,最多分成几个班级?解:1. 一年有20天,两个同学的概率为1/202. (20 * 20 - 20 * 19)/20 *20 就是答案...

2019-07-20 14:16:19 154

原创 我对卡尔曼滤波的一点点理解

我对卡尔曼滤波的一点点理解卡尔曼滤波是一种应用比较广泛的滤波器,它能做到的效果是:根据前一步的状态,预测出这一步的状态。整个过程,只会依赖于前一步的状态量,状态转移方程,以及每一步的观测值。由于,状态量只依赖于前一步的状态量,所以其内存消耗会比较小。卡兹曼滤波器善于处理环境中有未知变量的情况,也能在有噪声信息干扰的环境下进行工作。卡兹曼滤波器最经典的用例是,它在阿波罗飞船的登陆过程中进行...

2019-07-03 17:29:42 271

原创 基金投资分析

1. 分析一个基金,首先看大势,所有的基金因为买的很多,所以会跟大势同涨同跌。但有的损失小,有的损失大,这就是能不能赢的区别。2. 其次是要看行业,在普通行业它的涨跌必然更加让人不满,也就是说涨跌的反应会比较慢。所以就算在差行业跑的很稳,也来不了钱。3. 同样,要分析大势,要分析人性,要及时止损,见好就收。我认为在一段时间之内,会涨,但要等突破界限点之后才行,现在的增长,并不怎么气...

2019-07-02 09:19:04 589 1

原创 如何理解chainer库中的n_step_lstm

这是一个很普通的多层LSTM网络,大家可以参考这个网络。1. hx是S,B,N,这是batch的size,N是纬度层,最后S是序列的长度2. cx 在cell 的state3. bs,4. xs 的形式是(B_t, I) 在 xs,还要满足每个batch中,越前面的batch越要长,越后面的越要短。简称,这是一个普通的LSTM,需要将参数的矩阵输入其中...

2019-06-30 13:18:47 316

原创 公积金的问题了解

住房公积金是不是个骗局?https://www.zhihu.com/question/39173388?sort=created公积金是“劫贫济富”么?https://www.zhihu.com/question/21472252秉持的观念,是不能全新,也不能不信,每个回答都有自己的立场。1. 公积金是一种支付策略,民企少而国企多2. 公积金是强制的3. 它更多的...

2019-06-30 11:21:52 166

原创 分享一次购物体验airpods 无线充电器

为什么淘宝上可以那么便宜?因为很多是翻新机,中国市场里面流出来的,但苹果官方店,未尝不是如此。官方店的保障:售后,刻字apple店的缺陷:贵了130块,才能刻字。如果想要买新机:可以买港版的,降税本来想分期,但……工商银行的分期麻烦死了,太蠢。苹果教育商店只针对mac和ipad,不针对其他配件。反映了一个信息:对于一个价值已经很高的东西,人们不介意再付出一点更高的...

2019-06-30 10:34:23 303

原创 19年6月28日处理基金问题

民生加银景气行业混合我认为目前已经到达顶点,或许还会保持一定程度的增幅,但我一定捕捉不到。所以选择卖出,它为我带来了19.40%的收益。这个股票是个好股票,所以,如果有必要,我们下一次还需要购买该股票。但需要等股价再次完成跳水。万家新利灵活配置混合它已经越过高峰,进行过一段时间的下跌,现在仍在缓慢回升,配合中国股市的狂热情绪,我认为在下周六之前,它能够再进行拔高,但再...

2019-06-28 09:02:33 112

原创 git的stash

git有一个功能模块叫做stash。stash的意思是储藏。解决方案是:在git写代码的过程中,如果觉得当前的分支还不值得提交,可以先对结果进行stash,然后再到其他分支去处理,最后再转回来。...

2019-06-27 17:16:55 197

原创 字节跳动:2020算法工程师夏令营笔试题(未解决)

2019-06-26 23:16:55 1803

原创 记录一次笔试题

小明国庆来北京玩,北京有N个景点,前i个景点的评分用a[i]表示,两个经典之间的距离为j-i,小明一天只能游玩两个景点,我们认为总评分是两个景点的评分之和减去距离,即为a[i] +a[j] + i -j ,那么小明选择那两个景点才会总评分最大呢?这道题我不会贴代码,但我有三种思路可以进行分享。思路1:暴力循环,对于每一个点,我们对每个点进行遍历,将它与其他的点相比较,计...

2019-06-26 23:14:16 183

原创 2.3.1 卡尔曼滤波

先问是什么,然后再问为什么?在我的印象中,递归滤波器和卡尔曼滤波器,其主要核心是两个过程。预测更新可以理解为,首先对原始数据的建模,用原始数剧进行预测而后,利用新的一步,对原始数据进行建模。这是整个流程。那么什么是卡兹曼滤波呢?卡兹曼滤波有什么优势?1.卡兹曼滤可以对系统下一步要做什么做出有根据的推测。他能找出现象间不易察觉的相关性。2.卡兹曼波只依赖于前面的状态,所以内...

2019-06-26 16:11:34 272

原创 EM算法总结与理解

EM算法:我们要调查学校的男生和女生的身高分布。我们抽取了100个男生和100个女生,共200个人。我们只知道,200个人的身高,甚至不知道它们是男的还是女的。我们现在想要做的事儿是什么呢?1.是希望求出每一个样本属于哪个分布?(也就是说,这个数据到底是属于男人呢,还是属于女人呢?)2. 是希望求出男女分布的两个具体分布。这个问题的难点就在于要求出男女的分布。如果只是求具体分布,...

2019-06-25 16:35:51 211

原创 极大似然估计的定义和流程

在这一篇文章中,我们来回答两个问题。极大似然估计是做什么的?极大似然做的流程是怎么样的?极大似然估计是做什么的?(记得,极大似然估计和朴素贝叶斯是不同的在我们的日常生活中,我们可能会采样到一个数据集。这个数据集有自己的分布,p(y∣x1,x2,x3,θ)p(y|x_1,x_2,x_3,\theta)p(y∣x1​,x2​,x3​,θ)举一个最简单的例子:从一个学校中的男生中挑出...

2019-06-25 15:49:36 1107

原创 芯片中的乘法运算

1. 首先是矩阵的运算,我们会发现在矩cache中装不下这么多数据。那么该怎么办呢?想办法将矩阵从大的切换成小的。然后再进行相乘合并。这一段其实也是用普通的代码实现的。(C++的各种调用)可能在执行的过程中,要考虑地址问题。在整个过程中,输入,输出,都会有各种芯片自己的限制。(那么其实是一个做驱动的组)...

2019-06-25 15:08:00 758

机载网络之上的遗传算法的优化报告

针对于机载网络项目上的遗传算法进行优化,可以理解为遗传算法的一个优化思路

2019-02-19

复旦大学计算机高级软件测试课课程大作业:深度学习系统测试综述

含有两次课堂汇报的PPT及相应论文,以及最后的大作业,以及所有的参考资料。(PPT为独一无二手工制作)

2019-02-19

空空如也

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

TA关注的人

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