机器学习
飞猫侠
渴望一流技术的三流技术宅
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JAVA训练XGBOOST
2020年开篇,但是好像没啥特别的,参加个公司年会,时间就这么过去了,就这么迎来了2020年。当然,我们国家传统是过了春节才算是新年,所以原则上2020年还没来到,但是日历上已经变了,现在2020年1月1日,觉得还是要随便写点什么,记录点什么吧。 一直用python去训练模型,考虑用点不一样的技术,用java去训练一个模型吧,这样也方便和java微服务以及大数据集成在...原创 2020-01-02 00:37:22 · 4675 阅读 · 19 评论 -
关于不同算法模型对比验证
在学习算法模型的过程中,(这里的算法模型均指机器学习中的算法模型),总会被各式各样的算法模型所迷惑,明明是干同一件事情,干嘛要出那么多幺蛾子? 背后复杂的数学理论这里就不多阐述了, 有很多相关资料非常专业,这里只陈述一下个人在学习中的感悟, 肯定存在一些主观臆断,欢迎大神拍砖指点. 这里主要针对分类问题,以机器学习中算法模型来进行分类在现实生活中应用场景相对比较多, 因此观点也针对这系列问原创 2018-01-23 21:05:06 · 4128 阅读 · 0 评论 -
关于模型建立的深入思考
随着人工智能被推上了风口浪尖,支撑其理论基础的机器学习也被媒体,培训机构,各种公众号迅速炒热。但是它本身并不是神秘玄学,只是随着计算机越来越强大而能够从数据中学习规律的理论方法,而这些理论方法的汇总就被称为机器学习。 那么机器到底在学习什么呢?学习模型。模型是什么?模型是能够描述现实事物的通用、简洁、精准表述。这种表述可以是实体的,也可以是虚拟的,eg.实体: 车...原创 2018-02-12 23:37:06 · 561 阅读 · 0 评论 -
logistic regression(4)
逻辑回归既是最简单的神经网络, 也是可解释性较强的广义线性回归模型, 同时又是具备概率假设的线性分类模型, 个人认为它是机器学习的一个基础核心. 因此怎么学习都不过分. 复杂的模型虽然有很好的学习能力, 能对非线性数据集进行很好的拟合, 但是往往其背后的原理难以尽知全貌. 而使用逻辑回归模型, 虽然对模型有很好的可解释性,但需要对数据特征有更深刻的认知, 才能构建出更为稳健靠谱的模型. 业...原创 2018-02-17 12:39:04 · 367 阅读 · 0 评论 -
NLP ----- TF-IDF
作为文本处理比较经典的方法,本文通过手动构造 tf_idf 矩阵和 R 的 tm包当中提供的 DocumentTermMatrix 函数方法的构造进行对比,来一种比较直观的解读. 1.构造原始文本数据 doc_1 <- "见鬼了"doc_2 <- "我见鬼了"doc_3 <- "我真的见鬼了"text_data <- c(doc_1, doc_2, doc_...原创 2018-05-16 20:56:03 · 2000 阅读 · 2 评论 -
using keras learn Neural networks (2)
上节探究了模型输入和神经元输出的关系,其主要是为了疏理清楚一些之前的思维误区,为了更好的理解RNN。同时也是因为自己在之前的学习过程始终存在一些不明白的地方,正所谓理越辨越明,学习之路任重而道远,特此记录下来,可以帮助到同时也存在相同困惑的童鞋们(天才少年可以跳过,不浪费时间),若理解有误,欢迎拍砖纠正。 词嵌入是现在基于nn处理各种NLP任务的First st...原创 2018-08-12 04:17:30 · 238 阅读 · 0 评论 -
Keras with R (RNN)
之前学习过了,MLP,CNN,所以RNN也不能落下。下面以经典数据集IMDB来训练一个RNN模型。IMDB是25,000条影评数据,被标记为正面/负面两种评价。影评已被预处理为词下标构成的序列。关于词下标构成的序列,即是将词从词典中查找对应的索引构成的序列。 eg: 上图即表示了一个序列样本,序列中的数字代表词在词典中的索引,若以该索引...原创 2018-08-12 15:09:34 · 3745 阅读 · 0 评论 -
using keras learn Neural networks (1)
nn是现在十分火热流行的机器学习算法,随着越来越多的科学家和工程师加入到该算法的研究和开发当中。该算法也越来越健壮,从最基本的Perceptron --->MLP--->(CNN,RNN) ----> CNN + RNN,更复杂的网络结构和组合不断涌现。越复杂的网络组合和结构让人越难以理解,但万变不离其宗,其都是由最基本的神经元构成。本系列文章围绕网络延变...原创 2018-08-07 21:26:59 · 354 阅读 · 0 评论 -
using keras learn Neural networks (3)
语言模型是现代NLP技术的基础,所有基于统计的NLP算法都是以语言模型作为基础来设计的。什么是语言模型?简单地说,语言模型就是用来计算一个句子的概率的模型,即P(W1,W2,...Wk)。利用语言模型,可以确定哪个词序列的可能性更大,或者给定若干个词,可以预测下一个最可能出现的词语。 训练一个能覆盖很多语料的语言模型有些难度,以下通过一个简单的RNN的demo来说明它的奇妙。 ...原创 2018-10-25 04:12:15 · 210 阅读 · 0 评论 -
tensorflow 源码学习 (一)
作为主流的机器学习框架,tensorflow的提供的接口变化很多,项目代码也比较复杂,为了让自己使用起来更得心应手,所以觉得还是有必要学习一下源码。个人觉得提升编程水平的两种最好方式,一个是自己造轮子,再一个就是阅读源码。 1.版本 2. 整体项目结构 这并不是tensorflow完整的项目结构,而仅仅是python的 tensorf...原创 2019-01-22 19:03:42 · 604 阅读 · 0 评论 -
关于DNN,CNN,RNN的一些思考
关于DNN(这里指的dense),CNN,RNN之前一直没搞清楚这三种网络到底本质的区别在哪里?经过一些反复的思考和实验,结合tensorflow提供的API,将一些感悟和想法记录一下。 首先,创建一个 batch_size=1 的序列,假设该序列是经过词嵌入处理后的,如下:x_inputs = tf.constant(np.random.random(10*...原创 2019-03-21 01:49:40 · 1938 阅读 · 0 评论 -
技术思考--- 静心篇
很多时候明明大家都在做同一件事情,学习同样的事物,但时间总会拉开彼此的差距。求知是人的本能,但现实生活中,多数人追求的并不是如此。这也许就是凡人和大师之间不可逾月的鸿沟。心中总有太多杂念,心生污秽,则智止矣。 再谈机器学习,从事相关工作也有些时间,还没走到从入门到放弃这条路,机器学习作为一门学科其实也并不是啥新科学,只是近些年被炒作到风口浪尖,甚至和人工智能联系在...原创 2019-05-21 20:37:57 · 374 阅读 · 0 评论 -
特征工程(2)
关于异常值的处理是特征处理过程一项比较重要的环节,异常值的存在会对数据敏感的模型的预测结果造成偏差,因此对异常值的处理显得尤为的重要。 异常值有单变量处理,多变量处理之分,单变量处理相对比较容易,盒图就是很好的工具,多变量的异常值处理就相对比较麻烦,因为对于异常值的定义不如单变量那么简单明确。单变量 以iris数据集为例子# 加载数据data(iris)# 探索iris原创 2017-10-15 18:20:12 · 2037 阅读 · 1 评论 -
特征工程(1)
最近在处理特征,有点拙见,分享出来,欢迎各路神仙拍砖指正。 在此以 iris 数据集为例子来说明问题:# 加载数据集到全局环境data(iris) # 加载rpart来构建一颗决策树library(rpart)my_tree <- rpart(Species~., data = iris)# n= 150 ## node), split, n, loss, yval, (y原创 2017-09-17 19:36:58 · 970 阅读 · 2 评论 -
Learning Tensorflow (5)
前节训练了一个简单的 softmax回归 的模型,并且增加了迭代次数以及更换了一下损失函数做了对比参照,这节来训练一个复杂点的模型 卷积神经网络,当然也仅仅是引用和改进一下官网的例子(谁让我是菜鸟呢~呜呜),才被某“算法大神”明确指出我算法太垃圾,连入门的算不上,(可怜的我内心受到了一万点伤害。。。),所以要更加要努力学习才能入 大神 的法眼。(其实此刻我的内心是不服气的,呼呼~~),往往有部分原创 2017-08-27 00:35:10 · 2100 阅读 · 0 评论 -
logistic regression(1)
憋了好久,终于找到些不一样的东西分享出来,是关于逻辑回归的实现。其实有不少革命先驱已经分享了各种不同语言来实现逻辑回归,那么我的独特啥地方呢?作为 Rstudio 的忠实用户和粉丝,基于 Rcpp 包来完成的,算法实现用 C++ , 算法调用交还给 R , 其实也就是简单模拟一下算法开发。 具体逻辑回归算法的推导,就不罗嗦了,网络上有大把大把详尽的资源。这里要引入两个作为结果的公式,它们原创 2017-11-02 03:15:23 · 1846 阅读 · 0 评论 -
logistic regression(2)
逻辑回归不仅可以做二分类,也可以来做多分类,多分类原理是基于对每个类别区别于其他类别的多个二分类来进行划分的,本质上就是多个二分类。 这里我之前存在一个思维误区,想当然认为既然是二分类,就是对两个不同的类别来进行区分,后面发现这样做多分类时按照上述的思路是存在一定问题的,因为此时构建的n个分类器之后,预测未知数据会产生n种预测结果,而如果认为二分类是就是在区别两类时,就无法确定每一次构建的二原创 2017-11-05 05:19:31 · 727 阅读 · 0 评论 -
logistic regression(3)
自己用底层语言去实现一下基本算法,并没有想象中那么容易,其中为了保证最终模型得到结果的正确性,在构建迭代算法时候真是一点不能马虎,尽管最终测试表面上通过了,这很大程度建立在iris数据集比较特殊的基础上,尝试接入同事从验证码当中提取的数据集来对验证码进行识别(该数据集也很规整),但是怎么训练得到的参数都不经人意,无奈。。。(有种强烈的挫败感。。。) 回过头来还是膜拜 sklearn 库,自身原创 2017-11-07 16:33:02 · 1026 阅读 · 0 评论 -
TensorFlow简单实例(一):linear_regression
http://www.longxyun.com/blog.html [原文地址] 很简单的线性回归例子,用的是Python2.7,Tensorflow1.0.# -*- coding: utf-8 -*-'''A linear regression learning algorithm example using TensorFlow library.Author: Ayme转载 2017-12-12 10:48:38 · 9746 阅读 · 2 评论 -
TensorFlow简单实例(二):logistic regression
http://www.longxyun.com/blog.html [原文地址] 目前机器学习中,逻辑回归多用来估计某种事物的可能性。例如用户在某电商平台搜索了一类商品,那么估计他的可能性,估计他想要哪一类或者哪几类商品,推荐给他。这在目前大部分电商平台处处可见。Logistic regression可以用来回归,也可以用来分类,主要是二分类。主要是二分类。还记得上几节讲的支持向量机转载 2017-12-12 11:08:24 · 5106 阅读 · 0 评论 -
TensorFlow简单实例(三):nearest_neighbor
http://www.longxyun.com/blog.html [原文地址] k-NN算法:有那么一堆你已经知道分类的数据,然后当一个新数据进入的时候,就开始跟训练数据里的每个点求距离,然后挑离这个训练数据最近的K个点看看这几个点属于什么类型,然后用少数服从多数的原则,给新数据归类。k-NN算法步骤:初始化距离为最大值计算未知样本和每个训练样本的距离dist得到目前K个最临转载 2017-12-12 11:17:02 · 560 阅读 · 0 评论 -
Learning Tensorflow (4)
搞了那么多准备工作,这节开始来训练一个模型吧,官网上有个关于手写识别完整的例子,模型预测率大概是 91% , 本来打算换一个数据集来玩,结果发现预测率出奇的低(可能是数据量不够,杀鸡用了牛刀),也许是我开打的方式不对. (含泪) 先引入两个损失函数:– 交叉熵: f1(x)=∑i=1ny′ilog(yi)\begin{align}f_1(x) = \sum_{i=1}^n y'原创 2017-08-23 16:55:29 · 2145 阅读 · 0 评论 -
Learning Tensorflow (3)
在学习 Tensorflow 官方文档时,简介介绍了用 tensorflow 针对生成的一些三维数据来拟合一个平面的例子。 import tensorflow as tfimport numpy as np# 使用 NumPy 生成假数据(phony data), 总共 100 个点.x_data = np.float32(np.random.rand(2, 100)) # 随机原创 2017-08-22 19:28:36 · 2176 阅读 · 0 评论 -
Learning Tensorflow (2)
上章节对比了一下 numpy 和 tensorflow 的计算方式,这节来具体阐述一下tensorflow的工作原理: Tensorflow是用数据流图(data flow graphs)技术来进行数计算的!!! 那么问题来了,啥是数据流图???(重要的问题问三遍) 数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的原创 2017-08-21 15:12:00 · 2142 阅读 · 0 评论 -
Keras with R (MLP)
Keras 是一款很不错的深度学习框架,因为把深度学习需要用到的组件都封装更高级,可以很方便自由组合调用,这里贴出中文学习的文档 http://keras-cn.readthedocs.io/en/latest/ , 英文好的童鞋可直接阅读原生态的英文文档。 本来是支持 python 的框架,现在也支持 R , 直接如下命令即可完成安装。 install.packages("Ker原创 2017-12-11 22:31:17 · 2086 阅读 · 0 评论 -
Keras with R (CNN)
MLP 本身已经可以达到很不错的准确率了,但是随着模型的迭代次数增加,精度基本趋向于稳定而不再有更多变化。这时候模型本身就遇到了瓶颈,需要更高级深入的模型来做更专业的工作。 CNN 基于这样的问题被开发设计出来,专门解决图像识别的问题。 基于之前的模型,加入卷积层,池化层使用 R 语言作为控制语言来训练一个 CNN , 看看效果。library(keras)# downloa原创 2017-12-12 02:34:45 · 1245 阅读 · 1 评论 -
Learning Tensorflow (1)
TensorFlow 是谷歌基于 DistBelief 进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow 为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。 —— [百度百科] 以上是百度百科对Tenso原创 2017-08-20 22:51:53 · 2122 阅读 · 0 评论
分享