自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

欢迎光临啊噗不是阿婆主的酒馆

魔都一只get有趣灵魂的程序媛

  • 博客(97)
  • 收藏
  • 关注

原创 二叉树的遍历

bc

2022-11-09 22:31:31 207 1

原创 冒泡排序CPP

b'c

2022-10-29 17:07:59 213

原创 人工智胀 | 堂妹教你用KNN算法筛选约会对象

写在前面早前读者群小伙伴希望我出「机器学习入门系列」,这就来啦~接下来,我会按照自己的节(慢)奏(慢)推出机器学习入门算法系列文章。我给这个系列取名为「人工智"胀"」,是人工智「能」和人工智「障」的兄弟,我知道我的读者很多不是这个领域的同学,没事儿,我们边玩边学,希望轻松看文的同时有所收获。当然,如果真的是想学技术,建议文档和源码。带有情绪的技术文,本身就是图个乐~开篇之作,我们先看个简易入门款:KNN。KNN全称是 K Nearest Neighbors,直译.

2021-11-15 22:04:23 1193

原创 一文贯穿“如何制定研究生规划、找实习、秋招”

原创文章:wzh【九点澡堂子】秋招大战锣鼓喧天,又到一年丰收时。作为一个起点不高的程序媛,再回首来时路,总结一点小小经验,希望能帮到一些小伙伴。以下内容包括个方面: 1、在读研究生如何找实习 2、实习和秋招之间的联系 3、我的专属内推码福利 4、我的研究生规划(JGCK) 1、在读研究生如何找实习 以下是我自己的实习经历为背景展开 特征:小步快走,升级打怪 第一阶段:海投研一的状态大致可以分为两种: 有机会跟着

2021-07-27 23:56:13 2509 2

原创 2021-06-15

听说堂妹用AI技术给自己改头换面?本文章同步更新在个人微信公众号“九点澡堂子”,原创:九点澡堂子各位客官好,我是堂妹。 大家知道,我现在的文章封面基本都是自己的照骗,还是不露正脸的那种。 俗称"背影杀手"。 一般这样的,没有别的原因,就是因为丑,起码对于我这样。 当然,我不仅因为丑,还因为手残。 作为程序媛,我属于化妆上班那一趴, 但基本仅限于粉底、口红、眉毛,顶多加个腮红????‍♀️。 十年如一日,没有任何花样。 再看看我身边的学公关、艺术、人文等专业的女朋友们,

2021-06-16 00:19:15 337

原创 学弟学妹看过了,这里有一个宝藏程序媛和你有个约会。

前两天别的自媒体大佬和我约文章,正好借此机会做了个简单的自我梳理。梳理下来,不禁感叹:我,初心未改。不知不觉,从校园到职场,时间跨度两年。在GZH里记录了我的开心、忧愁、迷茫、洒脱、挣扎、高光、落寞…​我的人生,有迹可循,真好。感谢自己当初这个决定,同时再次感谢路人甲,在他的影响下接触这个圈子。其实作为一个程序媛,我因为「非技术文」深受读者们的喜欢,真不知该哭还是该笑呢~但我知道,读者喜欢我细腻的文字,不加修饰的感情表达。总会有读者找到我,隔着手机屏幕都能感受到对面的激动:“ 我太喜欢

2021-05-13 11:09:54 514 2

原创 git 如何更新fork后的项目为最新状态

fork A项目为B项目,A更新,如何更新A的变动到项目Bgit clone http://ForkProject.git 并切换到需要同步的分支1.查看配置$ git remote -v origin http://ForkProject.git (fetch)origin http://ForkProject.git (push)2. 添加源项目地址$ git remote add upstream http://SourceProject.git(源A 项目地址)

2021-05-07 15:45:05 3749

原创 在python类的析构函数__del__怎么用?

背景如下,想在析构函数__del__里面做一些退出前的操作:第一版代码如下: def __del__(self): try: if self.monitor_info['IterSpeed'] > 0 and self.monitor_info[ 'FullTime'] > 0: benchmark_inserter = insertdata.DataInseter()#写入数

2021-04-29 22:09:38 294

原创 深度学习分布式训练DP、DDP通信原理

日常在「九点澡堂子」裸泳,欢迎关注 ~前言上周末开始写这篇文章,一度以为自己快要写完了。写着写着发现参考资料有点争议,下文讲到的PS架构的实现在网络上说法不一。鉴于是一个快要被淘汰的方案, Parrots里直接省略了该实现,所以堂妹对它背后的实现确实不太清楚。本着传播知识的良知,不敢造次,查了很多资料,发现众说纷纭。涉及上层模型的搭建场景,众所周知(假装),堂妹接触底层多一些,于是乎,堂妹拉着贵司的研究员们一起探讨这个问题,毕竟他们模型搭的多。凌晨2点,大佬依然在线…大概是现代人的标配吧

2021-04-23 11:05:41 2147 3

原创 setattr 可以重写方法

mark 一下~工作中碰到一个需求,需要在运行中改写某个类的方法,想到setattr,搜索相关代码时候发现以下这种说法,说是不支持创建方法。都想要放弃了,但心想还是尝试一下~如图,发现是可以的~import paviwriter = pavi.SummaryWriter('test_pavi')def hack(self, tag, value, iteration=0): # if tag == "t2": # print(value) if ("_

2021-04-23 10:56:31 309

原创 C/C++编译完整过程

情绪反复的一天,原以为自己今天不会学习了,没想到我还是如约来了。给自己点赞,战胜那个糟糕的自己的第一步就是不乱想&行动起来。今天重新梳理下编译的过程,平常编译的时候直接敲别人写好的命令,虚的很,后面慢慢补上,比如cmake,比如extension等。CPP编译的完整过程如下:Cpp源程序 (.h,.cpp)–> 预编译处理 --> 编译优化 --> 汇编程序 --> 链接程序 --> 可执行文件因此,从原始的CPP文件到最终的可执行文件,经历了4个步骤:预处理、

2021-02-18 23:24:52 3928 7

原创 堂妹又又又要开始学CPP了。

堂妹的自省C++ primer 这本书,我已经打开了无数次,每次读完前三章就扔了,该打。时常怀念以前自律,有规划,有目标的自己,想太多不如开始干。择日不如撞日,就从今天开始吧。也想借这个机会,对抗自己的焦虑症,过去的六个月实在过的太糟糕了。过去的几个月,把那个自信,阳光,向上的自己给丢了。我不能任由自己坠落下去,得横住。接下来想在这里记录学习CPP的心路历程,有笔记,有习题解析,有抱怨,有牢骚,有xxxxx…不好意思直接在公号上发文,首发在这里,欢迎大家监(催)督(更),指导我学习嘻嘻。

2021-02-17 21:20:42 183 1

原创 20201219-Leetcode又见两数之和

好久不刷leetcode,又见两数之和。class Solution: def twoSum(self, nums: List[int], target: int) -> List[int]: #dict = {} for i, n in enumerate(nums): #dict[n]=i if target - n in dict: return [dict[target-n

2020-12-19 23:29:26 125 2

原创 Pytorch分布式训练DataParallel和DistributedDataParallel详解

最近工作涉及到修改分布式训练代码,以前半懂非懂,这次改的时候漏了一些细节,带来不必要的麻烦,索性花点时间搞明白。Pytorch 分布式训练主要有两种方式:torch.nn.DataParallel ==> 简称 DPtorch.nn.parallel.DistributedDataParallel ==> 简称DDP其中 DP 只用于单机多卡,DDP 可以用于单机多卡也可用于多...

2020-04-18 23:12:32 11935 12

原创 显存优化 | Pytorch的显存机制torch.cuda.empty_cache及周边概念

注:文中涉及一些内部底层实现机制,可能和大家外界看到的不一样,这里略过不做介绍。借着笔记,分享平时碰到的技术点,不高端,不炫酷,对你有用更好了。最近在做模型的优化工作,主要涉及精度,速度和显存优化,今天主要针对显存优化分享下关于Pytorch显存机制的笔记。显存优化还涉及显存量查看,训练中显存使用分布查看,还有一些节省显存的tricks。我在这篇文章中没有体现,mentor看到文章“嫌弃”说“...

2020-04-17 10:55:24 5348 1

原创 围绕我的三段实习经历聊聊:该怎么找实习?

春招蠢蠢欲动,秋招按现在疫情来看情况不容乐观,陆续有人问我相关的问题,并且从大家的问题意识到,大部分同学找实习的途径、方式方法或者对实习的看法比较局限,借此机会整理分享一波,应该能帮到大家。众所周知,我之前分享过两家公司的实习经历,其实,除此之外,我还在一家创业私募公司实习过。因此,可以把我的实习经历概括为三个阶段,围绕这三个阶段说说该怎么找实习。第一阶段:创业小公司,实习周期:两周。建议找...

2020-03-02 23:04:21 2660 1

原创 商汤实习面经

最近真的是太懒了,要好好慰劳过去六个月心酸的自己,想要享受下短暂的下班回来就躺尸的日子,元旦后要入职商汤了,值此2018岁末,奉上商汤面经一篇,哪怕只字片言能给你一点帮助或是启示,我就吼开心呀~标题关于投简历首先我想谈谈关于投简历这事。我的观点是:基于有自知之明的情况下大胆投,投简历又不花钱且大不了就是挂了但还能增长经验。划重点:有自知之明&大胆投我在这里的解释是:对自己有...

2020-03-02 22:53:39 1813 1

原创 人脸关键点论文笔记(一)

一、级联回归大类暂略。二、深度学习方法DCNN参考:https://blog.csdn.net/hjimce/article/details/49955149本文主要记录2013年CVPR的一篇利用深度学习做人脸特征点定位的经典paper:《Deep Convolutional Network Cascade for Facial Point Detection》,论文的主页为:http...

2019-08-23 14:59:52 294

原创 InceptionV1-V4理解

InceptionV1(GooLeNet)14年比赛冠军,这个model证明了一件事:用更多的卷积,更深的层次可以得到更好的结构。这个model基本上构成部件和alexnet差不多,不过中间有好几个inception的结构, Inception结构经过了一次改进,原版本如下:对上图做以下说明:1 . 采用不同大小的卷积核意味着不同大小的感受野,最后拼接意味着不同尺度特征的融合;2 ....

2019-08-09 11:16:26 758

原创 迭代器和生成器的区别

Iterator :通常生成器是通过调用一个或多个yield表达式构成的函数。每个生成器都是迭代器。Generator:迭代器是一个抽象的概念,包括了iterable和iterator这两种实现。Iterator & GeneratorIterable: 它表示了一个可以重复迭代的对象,判断一个对象是否可以iterable, 是否可以for循环, 是否定义了__getitem__方法...

2019-07-24 11:17:59 384

原创 C++静态库与动态库

写的很好:https://www.cnblogs.com/skynet/p/3372855.html

2019-07-23 13:30:00 228

原创 LMDB笔记

作为一个计算机底层小白,在了解一个知识点的时候时常需要恶补很多基础知识。本文记录在了解LMDB过程中接触的知识点。LMDB基本架构一个比较官方的解释:lmdb的基本做法是使用mmap文件映射,不管这个文件存储实在内存上还是在持久存储上。lmdb的所有读取操作都是通过mmap将要访问的文件只读的映射到虚拟内存中,直接访问相应的地址.因为使用了read-only的mmap,同样避免了程序错误将存...

2019-07-19 15:56:12 2955 1

原创 剑指offer【python】4.重建二叉树

题目描述输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# ...

2019-07-17 21:54:05 149

原创 面试准备

一、实战部分:数据预处理,权重初始化,为什么不能全部初始化为0。上图中图二是0中心化数据:每一个数据样本减去所有的样本均值得到。缺点:数据Y轴变化幅度(抖动幅度)比X轴要大;图三是归一化数据:需要求数据样本的方差。数据x和y值都在0,1之间。答:在训练完毕后,虽然不知道网络中每个权重的最终值应该是多少,但如果数据经过了恰当的归一化的话,就可以假设所有权重数值中大约一半为正数,一半为...

2019-07-16 20:07:24 215

原创 剑指offer【python】3.从尾到头打印链表

题目描述输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。# -*- coding:utf-8 -*-# class ListNode:# def __init__(self, x):# self.val = x# self.next = Noneclass Solution: # 返回从尾部到头部的列表值序列,例如[1,...

2019-07-16 19:00:57 219

原创 剑指offer【python】2.替换空格

题目描述请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。# -*- coding:utf-8 -*-class Solution: # s 源字符串 def replaceSpace(self, s): # write code here ...

2019-07-16 18:58:56 137

原创 剑指offer【python】1.二维数组中的查找

题目描述在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:从左下角开始遍历。# -*- coding:utf-8 -*-class Solution: # array 二维列表 def Find(self, target, a...

2019-07-16 18:57:42 99

原创 专题:排序汇总

冒泡排序## 冒泡排序的原理非常简单,它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。## 步骤:## 比较相邻的元素。如果第一个比第二个大,就交换他们两个。# 对第0个到第n-1个数据做同样的工作。这时,最大的数就“浮”到了数组最后的位置上。# 针对所有的元素重复以上的步骤,除了最后一个。# 持续每次对越来越少的元素重复上面的步骤,直到没有...

2019-05-23 18:55:24 187

原创 二叉树剑指offer

2019-05-23 18:48:54 146

原创 LeetCode 731 我的日程安排表 python

2019-05-23 18:44:42 477

原创 Python Leetcode94. 二叉树的中序遍历

2019-05-23 18:41:48 244

原创 python Leetcode 96.不同的二叉搜索树

2019-05-23 18:39:26 168

原创 python Leetcode 697. 数组的度

给定一个非空且只包含非负数的整数数组 nums, 数组的度的定义是指数组里任一元素出现频数的最大值。你的任务是找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。示例 1:输入: [1, 2, 2, 3, 1]输出: 2解释:输入数组的度是2,因为元素1和2的出现频数最大,均为2.连续子数组里面拥有相同度的有如下所示:[1, 2, 2, 3, 1], [1, 2, 2,...

2019-05-13 21:51:52 252

原创 Leetcode 64.最小路径和 python

给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。输入:[ [1,3,1], [1,5,1], [4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。说明:每次只能向下或者向右移动一步。class Solution: def minPathSum(self, grid: List[Lis...

2019-05-07 22:00:50 268

原创 项目接触工具总结

1.cudaCUDA (Compute Unified Device Architecture) 是显卡厂商 NVIDIA 推出的运算平台。 CUDA™ 是一种由 NVIDIA 推出的通用并行计算架构,该架构使 GPU 能够解决复杂的计算问题。 它包含了 CUDA 指令集架构(ISA)以及 GPU 内部的并行计算引擎。 开发人员现在可以使用 C 语言, C++ , FORTRAN 来为 CUDA...

2019-03-27 21:46:54 648

原创 numpy arange函数以及reshape函数

arange函数用于创建等差数组,使用频率非常高,arange非常类似range函数,两者的区别仅仅是arange返回的是一个数据,而range返回的是list。for example:

2019-03-27 14:48:50 470

原创 numpy生成随机数总结

numpy 中 的random模块有多个函数用于生成不同类型的随机数,常见的有 uniform、rand、random、randint、random_interges下面介绍一下各自的用法1、np.random.uniform的用法np.random.uniform(low=0.0, high=1.0, size=None)作用:可以生成[low,high)中的随机数,可以是单个值,也...

2019-03-27 14:42:29 3113

原创 图像处理之PIL.Image与numpy.array之间的相互转换

使用cv2.warpAffine进行图像平移会使得图片从PIL.Image格式转换为numpy格式,源码中src = np.array(image).astype(np.uint8) # image: img (PIL Image):后续如果需要继续对PIL.Image格式操作,需要from torchvision import transformsimg=transforms.ToP...

2019-03-27 14:27:57 19020 1

原创 剑指offer 二叉搜索树与双向链表

输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的结点,只能调整树中结点指针的指向。# -*- coding:utf-8 -*-# class TreeNode:# def __init__(self, x):# self.val = x# self.left = None# self.right =...

2018-12-04 22:22:25 117

原创 剑指offer 二叉搜索树的后序遍历序列 Python 解法

输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则输出Yes,否则输出No。假设输入的数组的任意两个数字都互不相同。# -*- coding:utf-8 -*-class Solution: def VerifySquenceOfBST(self, nums): if not nums: return False return se...

2018-12-04 21:47:53 193

空空如也

空空如也

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

TA关注的人

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