自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用 markdown/html 写latex by jupyter

前言学latex半年了,感觉心好累好多东西记不住(毕竟不是天天用(谁会天天用这个啊))然后觉得,这个东西就跟汇编一样,还是不够抽象,那么应该存在一个c所以如何使用jupyter写latex呢jupyterjupyter 太好用啦语言python,R,haskell…报告本身可以写markdown,而markdown兼容html,而且里面还可以用latex写公式pptjupyter可以写ppt!可以用

2017-06-09 21:14:35 4958

原创 Kmeans python 可视化

就是用PLT, 上一篇中主要写了kmeans图像分割的算法主体 这里对他做可视化 可视化两个函数, 第一个是visualize,遍历一遍不同的K值的图像,每个暂停0.7s,嘿嘿嘿可以做动画第二个是交互式的inter_vis 写了两个按钮,+K和-K。嗯就是这样,UI果然好麻烦。以后还是少写,感觉代码风格都变丑了from scipy.misc import imread,imshow

2017-05-14 11:45:10 1389

原创 Kmeans 图像分割 by python

依然是神奇的numpy boardcast!!! > 输入:k,data[n]; (1) 选择 k 个初始中心点,例如 c[0] = data[0], ……,c[k-1]=data[k-1]; (2) 对于 data[0],……,data[n],分别与 c[0],……,c[k-1]比较,假设 c[i]差值最少,就标记为 i; (3) 对于所有标记为 i 点,重新计算 c[

2017-05-13 16:57:07 1579

原创 convolution by numpy

手动实现一个卷积其实就是数字图像处理的作业= =其实有时间的话想搞一下im2col,不过也没啥用,应该直接用框架就好了计算公式 输入图片大小 W×W Filter大小 F×F 步长 S padding的像素数 P N = (W − F + 2P )/S+1 padding = ‘SAME’ => W = N S(W-1) = W-F+2P P = ((S-1)W-S+F)/2

2017-04-05 22:25:18 987

原创 最大子数组 by Haskell

FIND-MAXIMUM-SUBARRAY算法导论中文第三版p42页习题4.1-5 非递归的线性时间的最大子数组算法 。。。然而Haskell没循环啊。。。,我这种写法也算书中描述的吧。。。?不过这道题就已经很体现函数式的优势了,写这种题太爽了,一共四行(我没算声明)。完全入坑最气的是这道题在codewars上有问题,test全过但是因为一个Tab不让submit!难得做一道5kyu的题,下次

2017-04-03 18:01:55 552

原创 rule30 Haskell

rule30codewars上挺好玩的一道题,可以用来生成随机数, 规则:好气喔markdown表格反人类,给个wiki吧 wiki的解释 下图为迭代过程!题目在这里! codewars haskell rule30 code x = [x!!(i-1)*4+x!!i*2+x!!(i+1)|i<-[1..(length x-2)]]extend t = 0:t++[0]ite :: [In

2017-03-28 22:43:30 1026

原创 tensorflow 源码编译遇到的坑坑坑坑坑坑坑坑

前言 强烈推荐cuda8.0+cudnn5+ 然后直接pip安装!源码编译非常费劲 很多坑 de的我都意识模糊了配置:ubuntu14,cuda7.5,cudnn版本未知(应该是5吧)安装tensorflow 1.0.1-gpu需要准备一台能翻墙疯狂google github issues的电脑因为是cuda7.5还是公用服务器。被迫源码编译进入主题 clone 要从github下载zip文件

2017-03-28 22:40:28 9869 1

原创 KNN-PCA mnist

I’ll write it tomorrow.# -*- coding: utf-8 -*-"""Created on Fri Oct 14 22:32:18 2016@author: ryan"""# -*- coding: utf-8 -*-"""Created on Wed Sep 7 00:19:48 2016@author: ryanIn this program I use

2017-03-22 19:52:33 546

原创 chaos python 直方图均衡化

直方图均衡化是一种增加图片对比度的手段。之前学过一段时间Haskell. 函数式贼好玩,于是python现在开始瞎写。 欢迎交流各种实现方法!我CUDA写不出来(share memory写的有问题),写出来求交流    总的来说就是三步:  1.对图片求直方图  2.对直方图均衡化(使用累计分布函数)  3.映射回原图像 累计分布函数:    先看代码。。。import matplotl

2017-03-21 16:04:35 400

原创 图像旋转(matlab)

原理 没啥好说的 就一个矩阵乘法。浏览器没装latex,所以意思一下A = [cos(alpha) sin(alpha) 0; -sin(aplha) cos(alpha) 0; 0 0 1];newij = A*[i;j;1]; 就是坐标转化公式 newij 为新坐标,i,j 为旧坐标 注意要使用uint8强制转换才能imshow掉 这样计

2017-03-09 11:01:39 863

原创 tensorflow update

GPU Server: Past: 0.8 to 1.0 cuda7.5,cudnn5+but it doesn’t matter. use pip update automatically.pip install -U tensorflow --user -i https://pypi.tuna.tsinghua.edu.cn/simpleand because of the networ

2017-02-22 22:10:40 338

原创 神经网络(vanilla ver.) in numpy

写在最前vanilla neural network 学习材料有好多 前年年都是用MATLAB写的,写的还挺丑,后来用tensorflow写把底层细节都盖住了。 这里是一个只用numpy实现的版本学习材料的话。MATLAB推荐王小川的 45个神经网络案例 第一章 数学推导推荐吴恩达的Ufldl 反向传导算法细节activation function 的求导比较有技巧sigmoid : 1

2017-02-08 13:32:31 2106

原创 C++基数排序另一种实现

1.04497 1.65082Press ENTER or type command to continuePress ENTER or type command to continue 11.9672 16.6019Press ENTER or type command to continue ryan@Aeolian:~/VIM$ vim sort.cpp Press

2017-02-04 13:45:26 401

转载 git 误传大文件如何删除

背景最近刚开始学git,虽然确实是用来做项目,但是老忍不住当百度云盘用= = 于是不小心传了一个1.7GB的数据集上去,git add 和git commit 都没毛病(虽然等了很久), git push 不上去了。 然后想删掉对策$ du -hs4.8G先感受一下。确实出大事了,因为版本管理的原因1.7G被保存了两遍git filter-branch --tree-filter 'rm

2017-01-20 17:58:52 1059

原创 基于C++11 CPU多线程的 奇偶排序(没有CUDA)

写的不一定对!错了求指正!前言这篇是用C++11 的 thread 做的。 编译大概是g++ sort -O3 -pthread -std=c++14 -o sort其实还没学c++14最近开始学CUDA,感觉线程具体怎么用和硬件是直接相关的, 不同架构啊不同精度啊使用线程的方式都应该不同。这篇博客就是个实验,用CPU实现一下奇偶排序为日后与CUDA做比较一直是CPU和GPU一起学的。二者都支持

2017-01-14 21:51:33 807

原创 CUDA从组成到编程(二) Hello World!

首先是官网给的向量加法的例子。 我的环境是ubuntu16, cuda7.5 先是常用命令:这个的作用是使用自带的工具每0.5s刷新一下GPU的状态,可以作监控用$ watch -n 0.5 nvida-smi检查cuda编译器是否安装正确$ which nvcc检查GPU型号$ ls -l /dev/nv*编译与运行$ nvcc hello.cu -o hello$ ./hello#i

2016-12-31 18:53:06 827

原创 组成:GPU与CPU的比较

GPU与CPU的比较不管是CPU还是GPU都是很高速的设备,然而从主存中取数据会很慢很慢,为了充分利用高速设备,二者都使用了缓存,编程一定要考虑的是计算机程序的局部性(locality)的基本属性—–时间局部性与空间局部性。多核时代和GPU并行运算时代来临,另外一个影响程序运行的速度的关键因素—–缓存一致性(Cache Coherency)。这些CPU和GPU都有一些区别,深入底层才能写出更高效的代

2016-12-31 14:02:36 1494

原创 Kaggle 数据集下载

kaggle数据集一般比较大,比如这次dstl更是达到22GB。国内连kaggle下载经常会断。尤其是kaggle需要认证才能下载,直接点击链接就是浏览器下载于是对策:1.wget wget -x --load-cookies cookies.txt -P data -nH --cut-dirs=5 https://www.kaggle.com/c/dstl-satellite-imagery-fe

2016-12-31 13:56:15 18517 4

原创 线性回归 numpy normal equation & tensorflow gradient descent

Linear Regression最简单的线性回归就是求出w,b使得 y = w x + b与真实值均方误差最小 于是很直接的可以直接令cost fuction 导数等于0, 然后就有可以求出closed solution 唯一需要注意的是把b吸收进w中 也就是 X = [X,1], Y = W * X 方便计算train_x = (np.arange(10000)

2016-12-18 20:55:26 560

原创 CSAPP: 反汇编

这篇好好说话 c -> 汇编 -> 机器语言 二进制的 .o 文件可以通过objdump反汇编成汇编代码,然后就可以通过汇编代码仔细地考察c代码的效率啦 从效果上来说感觉对应地还不错 书上的例子:int accum = 0;int sum(int x,int y){ int t = x + y; accum += t; retu

2016-12-14 21:01:33 724

原创 Atrous algorithm: deeplab

atrous algrithmdeeplab

2016-12-14 18:03:12 1778

翻译 Pythonic machine learning:KNN

搬运自 YouTube:PyCon2015python 是一门优雅的语言,尽量少使用循环,选择结构 KNN是一个很简单的算法,这里不再介绍 特别的,nearest neighbor 是k=1时的特殊情况 如何使用numpy 中的broadcast机制优雅地实现呢?numpy broadcast官方文档 Losing your Loops Fast Numerical Computing

2016-12-08 22:24:15 481

原创 学习笔记:Network in Network(NIN)

1. Overview1. 1×1卷积核2. MLP Convolution Layers3. Global Average Pooling1*1 卷积核传统卷积核最小是3×3,这样还能保证所有方向,而这里的卷积核有说是相当于全连接,原文中的解释是对输入的feature map的加权线性重组,目的是跨通道的复杂和可学习的信息交互。也是因为这种操作只对通道运算,与空间无关。比较极端的一个例子:如果1

2016-11-15 22:32:07 1404 1

空空如也

空空如也

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

TA关注的人

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