下面是笔记, 慢慢补充 免得忘记了
Numpy(Numerical Python 的简称)是高性能科学计算和数据分析的基础包。其部分功能如下:
①ndarray,一个具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组。
②用于对整组数据进行快速运算的标准数学函数(无需编写循环)。
③用于读写磁盘数据的工具以及用于操作内存映射文件的工具。
④线性代数、随机数生成以及傅里叶变换功能。
⑤用于集成由 C、C++、Fortran 等语言编写的代码的工具。
创建数组
创建数组最简单的办法是使用 array 函数。它接受一切序列型的对象(包括其他数组),然后产生一个新的含有传入数据的 NumPy 数组。以一个列表的转换为例:
4-30到5-02日这三天没有发东西- -忙着做华中赛去了, 这次比赛算是间隔一年再次捡起数模吧, 去年的这个时候感觉题目和今天的类似,都是大数据处理的,不同的是去年对这方面完全没有头绪, 今年还算是勉勉强强做了出来吧.只是最后的结果发现可能有有点问题, 算是一个教训吧, 在正式参赛的时候还是要多考虑一下多方面的东西, 感觉自己对比赛的时间掌控还不是很好, 在加上队友的沟通可能也不是太好.
今天看了一下skimage这个库, 感觉比自带的PIL库好用些, 下面写了一点trivial的例子,
一开始想要把图片转成灰色的, 找了半天没有找到rgb2gray…
然后google了一下 发现skimage 的color里面有这个函数..不过里面的参数貌似和matlab不一样, 不过效果感觉差不多
然后测试了一下
from skimage import data, color
import matplotlib.pyplot as plt
cat = data.chelsea()
plt.imshow(color.rgb2gray(cat))
plt.show()
结果迷之图像…
最近看到YELP的电面有问到字符串的一道题, 搜了一下 发现了 TRIE 字典树, 学一下~
Implement a trie with insert, search, and startsWith methods.
Note:
You may assume that all inputs are consist of lowercase letters a-z.
Trie树又被称为字典树、前缀树,是一种用于快速检索的多叉树。Tried树可以利用字符串的公共前缀来节省存储空间。
但如果系统存在大量没有公共前缀的字符串,相应的Trie树将非常消耗内存。(下图为Wiki上的Trie树示意图, Wiki)
笔记来自这篇 文章, 主要讲了l0, l1, l2核范数的理解
对与parametrical模型, 如果是square loss 那就是最小二乘法, 如果是Hinge loss那就是SVM, 如果是EXP-LOSS, 那就是boosting, 如果是log-loss, 那就是logistic回归
希望有生之年, 能够窥见这广阔无垠的星空.
什么叫视觉?可能这个问题的第一反应就是:不就是看东西么。好吧,那么高大上的问题就被这么轻描淡写了。看东西不是目的,目的是看到后知道是个什么东西,然后基于这种物体与事件的联系服务于高层意识理解。哈哈,瞬间档次又拉上去了。个人浅见,目前大体视觉可以分为生物视觉和机器视觉。生物视觉就是有眼睛的动物能什么看东西的。例如喵星人、汪星人还有地球人啥的。每种动物的视觉感官不同,能感受的光波长也不同。我们如果可以知道它们是怎么工作了,就可以借鉴着做出具有类似强大功能的设备了。这其中涉及到的东西有很多,它们的视觉流是怎样的?包含怎么接受光信号的输入,到如何逐级的提取信息,再到高层的推理,还有高层到底层的反馈等等。有的已经被解密了,有的还犹抱琵琶半遮面,也的神秘依旧。遗憾的是,后者的比重更大。
def qsort(lst):return [] if not lst else qsort([i for i in lst[1:] if i < lst[0]]) + [lst[0]] + qsort([i for i in lst[1:] if i > lst[0]])
224n上有提到knn对高纬数据的不适性, 所以这里需要降纬, 简单的有PCA, 这里把任意唯独降为2维的有t-sne方法, 这种方法效果还是比较好的.
下面是t-sne的源码
因为写博客的关系需要很多图片
而且markdown下插入图片如果想上传过来非常麻烦
所以我每次都是用这个图床, 但是每次都要从浏览器打开并且把图片一个个拽上去然后复制粘贴, 非常麻烦, 所以勤劳的我(雾)做一个自动上传图片到图床并且返回图片url的小贡献… 谢谢大家
今天开始算导和CSAPP和PRML一起看
笔记慢慢写
比较模型至少要比较nlgn次才能进行排序.
对比较模型来说, 每比较一次产生一次结果, 那么相当于一个输出产生一个结果, 这个结果可以是枚举产生, 那么对一个输入一共有M = n!种枚举结果, 只有其中的一个是正确的, 每比较一次就可以确定两个数的位置, 而其他操作是没有cost的, 所以这就可以去掉一半的结果, 结果就是最差情况下lgM 次比较后可以找到结果.
因此对于比较来进行搜索排序的算法其最优为O(nlgn)
ML笔记
Machine Learning is a subfield within Artificial Intelligence that builds algorithms that allow computers to learn to perform tasks from data instead of being explicitly programmed.
这两天在看关于boosting算法时,看到一篇不错的文章讲bootstrap, jackknife, bagging, boosting, random forest 都有介绍,以下是搜索得到的原文,没找到博客作者的地址,
在这里致谢作者的研究。
一并列出一些找到的介绍boosting算法的资源:
(1)视频讲义,介绍boosting算法,主要介绍AdaBoosing http://videolectures.net/mlss05us_schapire_b/
(2) 在这个网站的资源项里列出了对于boosting算法来源介绍的几篇文章,可以下载: http://www.boosting.org/tutorials
(3) 一个博客介绍了许多视觉中常用算法,作者的实验和理解,这里附录的链接是关于使用opencv进行人脸检测的过程和代码,可以帮助理解训练过程是如何完成的:
http://www.cnblogs.com/tornadomeet/archive/2012/03/28/2420936.html
(4)这里是一个台湾的电子期刊上关于AdaBoost的介绍: http://140.113.87.114/cvrc/edm/vol_6/tech1.htm
照着sqlteaching这个网站过了一遍练习教程
前面的的比较简单就不写了…(其实是忘记写了…..结果写过的貌似记录没了,, 懒得打了= =)
这里把结果截下图把= =
SELECT
WHERE
LIMIT