自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 问答 (1)
  • 收藏
  • 关注

原创 python实现复制一个图形到另一张图片里

#设图形所在图片为矩阵a#设另一张图为矩阵b#设图形为a[a>threshold]#则将图形复制到b的制定位置的方法是#b[x:x+a.shape[0],y:t+a.shape[1]][a>threshold] = a[a>threshold]

2020-06-29 08:05:34 1106

原创 关于numpy复制、类型的超级深坑

1.numpy切片仍然引用源数组,一旦更改源也更改。2.numpy转list会失去类型(dtype),再转回来要注意加类型。尤其音频处理时是short,不转直接爆炸。

2020-05-11 23:55:27 117

原创 scrapy大成之路 -- 爬取动态加载页面的数据

有时候我们发现,在网页中有些信息是靠js加载的。比如百度图片。当采用在html页面上用xpath定位的方法时会发现定位不到资源。但是考虑到资源加载到浏览器上并被我们看见这一过程,必定有资源的传输。所以一定有资源文件从后端传递到了前端。因此我们可以通过查询传递的文件来定位资源。具体的办法是,右键检查,在network选项卡中找到数据。加载资源的name可以用如下方式解析:如htt...

2020-04-10 22:55:31 1177

原创 scrapy 大成之路 -- 文件下载

1.items 中声明两个字段 1)file_urls 2)files2.spider 中定义parse方法。将所有的需要爬取的url通过response.urljoin方法改为绝对地址,再将url以列表形式放入items['file_urls']中。3.settings 定义 FILE_STORE 文件存储路径。定义item_pipelines 需包含:scrapy.pipelines....

2020-04-08 18:39:26 90

原创 scrapy大成之路1 ------ pipeline处理数据

pipelines类不继承父类。但是要实现一些特有的方法。这些方法会在爬虫的某个生命周期自动执行。open_spider(self,spider):此方法在爬虫开启时执行,且只执行一次。一般用于连接数据库或打开文件。例如:self.c = pymysql.connect(hpup)self.cur = self.c.cursor()self.cur.execute('us...

2020-04-05 22:55:00 210

原创 scrapy 导入items模块的经验

1.如果要运行爬虫文件本身(比如用于调试),正确的做法是:import syssys.append('..')from items import *可以顺利导入。但是当运行 scrapy crawl xxx 时会报错。原因是运行scrapy的路径在上一级。所以2.如果要运行scrapy命令,则采用如下导入方式:from ..items import *...

2020-04-04 21:44:51 2202

原创 numpy中的broadcast

在使用numpy中的broadcast时要严格注意array的shape。有时对array切片时,会导致array shape丢失。需要重新reshape,小心翼翼的实现,不然会带来奇异的bug。

2019-03-20 21:49:33 347

原创 本地git 同步 github

git initgit addgit commit -mgit remote add origin http://git push -u origin master大功告成!

2019-03-17 16:50:45 155

原创 简单分类任务的炼丹经验

对于一些复杂的分类任务,adam(Nadam)往往具有很好的效果。但是对于一些简单的分类任务却并非如此。两张图是在别处盗的,从图中可以看出adadelta具有最快的收敛速度,在鞍区停留时间最短。对于简单分类任务,有时为了防止过拟合,往往使用很少的参数。这时正确的初始化方法配合收敛速度最快的adadelta是最好的选择。例如一个简单的线性二分类问题(keras2.0下):import matplot...

2018-07-07 21:58:14 465

原创 关于python中的sorted函数中的key问题

python中使用字典进行排序时,有时会用到value进行排序。绝大多数人会使用如下的方法:dic={……}sorted(dic.items(),lambda item:item[1])注意:在python3以下的版本调用iteritems。但是可能会有细心的同学产生疑问,item[1]是指什么呢?我们打开交互模式,输入dic.items()[1]发现,系统提示错误,原因是it

2017-10-05 13:57:55 2352

原创 <note>8月23日

北京出差,落了几天。1.构造方法前不要使用void,那会使得构造方法变成普通方法。

2017-08-23 09:49:30 134

原创 <note>8月12日

1.可以采用简便方法Array.toString方法来表示数组。2.注意Arrays的方法,如sort及fill的截止位置表示的是数组中下标为截止位置-1的元素。

2017-08-12 14:08:38 194

原创 <note>8月11日

1.即使方法的返回值类型为void,也可以调用return语句。其作用是强制结束方法。可以用于例如排除错误输入等方面。2.在已知某个公式后,不要直接去尝试实现它。应该先去尝试变换公式的形式以期减少公式的运算次数。例子:不同进制之间的转化。3.在使用char型数据进行计算时,尽量使用相对值加基准值的方法,这样可以排除unicode码的参与。例如:我们表示‘z’应该用‘a’+25,尽量不要使用

2017-08-11 22:50:03 147

原创 <note>8月9日

1.将外部的jar导入eclipse时,应先将其复制在项目之下的文件夹下,再重构路径。这样可以得到不依赖绝对路径的引用。2.数组的equals方法并没有重写,其与“==”相同。不可用于判断数组的内容是否相同。仅能用于判断是否具有相同的引用。可以用array的equals方法。3.String的空字符串用“”表示而不是null。

2017-08-09 23:04:58 154

原创 <note>8月5日

1.牛顿迭代法解方程的根:将方程写成最简单的f(x)=0的形式。在任意点处,如x=1处求取函数曲线的切线g1=f'(1)*x+(f(1)-f'(1)*1) 求取切线方程等于0时的横坐标x1=-(f(1)-f'(1)*1)/f'(1) 抽象成迭代式 x=-(f(x)-f'(x)*x)/f'(x)对于多个根的情况,可以引入一个外部循环给定定义域。因为牛顿迭代总是能解出满足迭代方向距离初始值最近的根

2017-08-05 13:01:26 179

原创 <note>8月3日

1.else if 与if的区别:此处容易出现的问题是,当多个if语句进行判断,可能彼此的判断条件相互交错,同时成立。此时java就会依次运行每一个满足条件的程序段。如果只想运行某一个,应使用else if。其可实现排除前面其涉及的情况后,再进行下一步判断。2.逻辑运算的优先级序依次为:非!,与&&,或||。3.浮点型转换为整数型时,是将小数点后所有数字截断而非四舍五入。事实上,java中

2017-08-03 21:21:34 156

空空如也

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

TA关注的人

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