机器学习
zhzhzhi
daddy
展开
-
python中文乱码
关于中文乱码,老夫已经遇到无数次,遍寻良方,也使出无数种招数。总结一下,费话不多说,python中文乱码的根源只有一个,字符编码不统一!有的数据是爬来的,soup解析的,那很可能会出现ascii cannot decode error. OK,把语言环境它统一成utf-8码再说import sysreload(sys)sys.setdefaultencoding("utf-8")上述语句编译原创 2016-03-31 21:02:18 · 526 阅读 · 0 评论 -
哈希学习
哈希学习(learning to hash)通过机器学习机制将数据映射成二进制串的形式, 能显著减少数据的存储和通信开销, 从而有效提高学习系统的效率. 哈希学习的目的是学到数据的二进制哈希码表示, 使得哈希码尽可能地保持原空间中的近邻关系, 即保相似性. 每个数据点会被一个紧凑的二进制串编码, 在原空间中相似的2个点应当被映射到哈希码空间中相似的2个点. 举例来说, 如果原空间中每个数据样本都原创 2016-05-28 16:19:56 · 2838 阅读 · 0 评论 -
fudanNLP(fnlp)添加自定义字典
fnlp目前找到的接口方便的开源的NLP开源工具 StanfordNLP Hanlp FudanNLP NLTK LTP 由于StanfordNLP中文包配置较困难,使用fnlp做分词加语义 考虑语义依存时,算法几乎都如出一辙的HMM,所以暂且认为模型参数问题可以用scale的数据量弥补。fnlp这是一段具有分词,实体识别,语义依存功能的代码import org.fnlp.nlp.cn原创 2016-04-22 13:04:06 · 6395 阅读 · 4 评论 -
fizzbuzz的机器学习解法
转:fizzbuzz是面试的常见问题,内容为:输出0到100的数字,但是3的倍数输出Fizz,5的倍数输出Buzz,同时是3和5的倍数的输出FizzBuzz。通过训练一个分类器将结果分为4classes:fizzbuzzfizzbuzznoneall in all,网络输入需要为二进制,我们需要将9表示为[1,0,0,1],我们取输入神经元为10个,达到1024的训练数据,避免作弊嫌疑.d原创 2016-05-31 08:48:58 · 2379 阅读 · 0 评论 -
约束优化问题(拉格朗日乘子)
给定一个约束优化问题: min/maxf(x,y,z)min/max \quad f(x,y,z) s.t.g(x,y,z)=0s.t. \quad g(x,y,z)=0 可以转换为无约束问题优化,是我们的目标普遍形式 min/maxz=f(x,y)min/max \quad z = f(x,y) s.t.g(x,y)=0s.t. \quad g(x,y) = 0 可转化为 F(x,原创 2016-06-08 22:23:37 · 936 阅读 · 0 评论 -
数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已
数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已,这个说法很深刻!贴上一张最近常看的图原创 2016-07-17 10:04:26 · 13659 阅读 · 1 评论 -
四模型代码管理
模型(未上flask)model_io:load seg_modelload pos_modelload ner_modelload pseg(low ram & high speed)load 7 online dictionariesproduct_dict_list(多维产品同义词数组)company_dict_list(多维公司同义词数组)reader4_list (人名guid推测公司关联原创 2016-08-02 11:19:33 · 356 阅读 · 0 评论 -
Matrix factorization
以为降维是很多认知(广义的分类)问题的最终目的,现流行的推荐系统大多数都在做降维工作,Matrix factorization是足够简洁华丽的降维方法 Information-theoretical label embeddings for large-scale image classification原创 2016-08-18 12:14:54 · 712 阅读 · 1 评论 -
网络层权重常用约束
MaxNorm隐含层权重给定输入最大值约束References Dropout: A Simple Way to Prevent Neural Networks from Overfitting Srivastava, Hinton, et al. 2014NonNeg保证训练中权重非负(类似于nmf,或proning效果)UnitNorm隐含层权重一范数规则原创 2016-09-12 16:44:26 · 1624 阅读 · 0 评论 -
Vectors, Matrices and Tensors 在papers中的常规约定
基础总结vectors(lowercase)如果n维向量的每个元素属于ℝ\mathbb{R},此向量为ℝ\mathbb{R}的n阶笛卡尔乘积,表示为ℝn\mathbb{R}^n x_{-1}表示向量x除去第一个元素的结果 x_{-S}表示向量x除去S集合中所有元素的结果matrices(uppercase)实矩阵表示方法:A∈ℝm×nA\in \mathbb{R}^{m\times n}转置(t原创 2016-08-22 01:25:17 · 628 阅读 · 0 评论 -
preprocessing(归一化/标准化/正则化)
preprocessing(归一化/标准化/正则化) 转载关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化转载 2016-08-22 13:38:14 · 3412 阅读 · 0 评论 -
theano的T.grad如何计算
f(x) = x*x + x - 2Graph = ADD / \ MUL SUB / \ / \ x x x 2Chain rule for ADD=> (a(x)+b(x))' = a'(x) + b'(x)Chain rule for MUL=> (a(x)*b(x))' = a'(x)*b原创 2016-10-13 14:23:50 · 2645 阅读 · 0 评论 -
中文期刊分类结果记录
baseline:贝叶斯一层分类标题|关键词|摘要 0 |0 |1[ 0.74959006 0.75502539 0.75502539 0.75396741 0.75111088]Mean score: 0.753 (+/-0.001)74.9633948803[ 0.73197567 0.73180279 0.72979264 0.73111511 0原创 2016-04-23 15:25:20 · 1281 阅读 · 0 评论 -
中文期刊分类(blog版)
中文期刊分类1.选题意义2.项目目标3.reference4.模型5.整体方案选题意义期刊论文本数量增长迅速,人工分类耗费精力某个实验表明,相同的人在不同时间段对同一批文献分类;不同的人对同一批文献分类,得到的结果发现相差较大,是因为人的主观性和知识结构的变迁会影响分类结果。机器分类不会存在此问题。项目目标建立合理的CNKI数据集 样本地址 项目地址对中图法分类的22个大类原创 2016-03-08 18:50:52 · 4017 阅读 · 0 评论 -
PRML--Bayesian probabolitis
PRML(P40)考虑使用多项式 y(x,w)=w0+w1x+w2x2+...+wMxM=∑j=0Mwjxjy(x,w) = w_0+w_1x+w_2x^2+...+w_Mx^M = \sum_{j=0}^{M}w_jx^j 拟合给定数据,我们将ww用概率p(w)p(w)表示,给定数据集D=t1,t2,...tnD = {t_1,t_2,...t_n}状态则可以用概率表示为p(D|w)p(D原创 2016-04-02 19:37:20 · 469 阅读 · 0 评论 -
Good-turning估计
吴军数学之美又看了一遍,写的有深有浅,这次又有了不同的感觉。统计预言模型的数据稀疏问题解决方案–古德图灵估计原创 2016-04-03 14:59:29 · 3451 阅读 · 0 评论 -
DL的若干tricks
原文在这Must Know Tips/Tricks in Deep Neural Networks,我只是记录,以免忘记。。。拿CNN做图像举例1.尽可能的扩展数据集(Ng课上讲过如何空手把dataset扩展10倍的故事) 2.做好数据预处理(如图像whitening) 3.好的初始化参数 4.卷积核/学习速率调整 5.激活函数(主流还是relu) 6.规则化(大多还是用dropout)原创 2016-03-21 23:58:07 · 674 阅读 · 0 评论 -
选择支持向量机(SVM)核函数
SVM核函数通常有四种: 1. Linear 2. Polynomial 3. Gaussian (RBF) 4. Sigmoid/Logistic 不知为何,RBF最常用一般情况下,给定随意的数据集,你不知道该用什么样的核函数,通常先用简单的映射方式,然后再一步步的复杂化。如果数据集是线性可分的,用linear当然足够;如果数据集线性不可分,这个核函数就显然不行了原创 2016-03-21 19:16:25 · 13092 阅读 · 0 评论 -
Cnki数据集包装清洗
包装决定先处理好数据集训练形式等问题再清洗拿B/C/D/E/F/G/H举例,B包含10*1000篇,C包含7*1000篇,D包含10*1000篇,E:5*100,F:9*1000,G:6*1000,H:7*1000各类训练比例不均匀清洗标题,关键词,摘要融合——-data大类分类号————————label找出stop words sets,去除剔除数字字母和标点清洗过程中发现了些很原创 2016-03-14 15:33:34 · 677 阅读 · 0 评论 -
关于文本分类的若干方法
空间向量模型LSA/LSILDA词向量方法原创 2016-03-12 17:42:43 · 788 阅读 · 0 评论 -
基于统计学的中文分词
基于统计学的分词方法可以借鉴2.2节的统计预言模型的思想,常用的有n_gram模型、隐马尔科夫模型、最大熵模型。由于我们本次使用统计预言模型为期刊文本分词,将对上述三个模型一一介绍并比较。n-gram模型 给定句子S,假定可由规则A1,A2,A3,...AkA_1,A_2,A_3,...A_k这k个词组成,称之为规则A,则在规则A下出现这个句子的概率P(S)可表示为 PA(S)=P(A1,A2原创 2016-04-04 00:14:52 · 1749 阅读 · 0 评论 -
维比特(vibiter)算法python
缘由再一次做分词,毫无疑问又用了jieba,但是结巴的语料库貌似很多没能与时俱进。比如一句话里的“大数据”,被硬生生分词为“大/数据”,再把“大”纳入stopwords的话,那句子就变了味咯。当然,一个简单办法是,找到jieba的dict, $sudo su$gedit dictctrl+f修改“大数据”的占比重,save即可。 想到李航《统计机器学习》里有维比特算法介绍,数学之美里也有一章略讲原创 2016-03-24 23:59:00 · 3357 阅读 · 0 评论 -
PRML-贝叶斯网络
把贝叶斯网络当做图来描述的 宏观一下,google显示此图用图表示概率分布,和马尔科夫链甚是有渊源,联想到有人用neo4j图数据库的ER图解决n-gram问题,肯定都是一个套路给出p(a,b,c)p(a,b,c)的联合分布形式 p(a,b,c)=p(c|a,b)p(a,b)p(a,b,c) = p(c|a,b)p(a,b) 继续 p(a,b,c)=p(c|a,b)p(b|a)p(a)p(原创 2016-04-07 08:52:35 · 1002 阅读 · 0 评论 -
DeepLearning(Bengio,ch3)-概率
大部分的计算机问题是确定性问题,还记得在洛克《人类理解论》里讨论英汉互译的不确定性问题,提到了计算机语言的通用可能性,在于确定性。但对于机器学习的若干问题,我们常常要使用概率,比如蚁群,遗传等全局优化,再比如用随机梯度下降来提高效率。 总结一下,机器学习对概率的依赖来源于三点原因: 1. 系统固有的随机性。在量子力学的世界里,一切的粒子都是波,粒子一切的运动都是不确定的,类似这样的模型。 2.原创 2016-04-08 17:20:58 · 515 阅读 · 0 评论 -
DeepLearning(Bengio,ch4)-数值计算
softmaxsoftmax用于处理多项式分布的概率,softmax(x)i=exp(xi)sumnj=1exp(xj)softmax(x)_i = \frac{exp(x_i)}{sum_{j=1}^{n}exp(x_j)}这里考虑一个计算的基本问题:overflow和underflow,超出了数据类型范围的最大值和低于了数据类型范围的最小值。对于softmax上式,假定有每个xix_i都为常数c原创 2016-04-09 21:23:24 · 361 阅读 · 0 评论