- 博客(25)
- 资源 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 深度学习-利用卷积网络识别动物
深度学习框架很多,我讲的是deeplearning4j,因为它能和spark结合,代码是java,虽然我java也很烂数据源是4种动物的照片,有熊,鸭,鹿,龟示例的分类结果不是很理想,建议我们通过以下方式提高:1.增加照片数量2.进行更多的数据预处理3.增加训练次数,所有数据都训练完了才叫一次训练4.调整模型配置5.调整学习率,更新器,激活函数,损失函数,正则化参数等
2016-11-30 17:13:27
6196
1
原创 spark ml 聚类源码笔记二
上一篇基本把聚类串完了,还剩一个点就是怎么选择初始化的点,代码如下 val centers = initialModel match { case Some(kMeansCenters) => { Array(kMeansCenters.clusterCenters.map(s => new VectorWithNorm(s))) }
2017-02-10 11:03:48
905
原创 spark ml 聚类源码笔记一
首先是参数k : 聚类数,默认2initMode : 初始化算法的参数,可以是RANDOM或K_MEANS_PARALLEL,RANDOM是随机选择初始聚类中心,K_MEANS_PARALLEL是使用算法选择初始聚类中心,也是默认情况initSteps : K_MEANS_PARALLEL方法迭代步数,默认5接下来是一些重要的方法private[clustering
2017-02-08 19:18:21
1279
原创 深度学习-基于spark的LSTM
这篇是接上一篇的基于spark的LSTM字符模型,数据源是一些英文段乱,利用LSTM每次学习一个字符,代码如下public class SparkLSTMCharacterExample { private static final Logger log = LoggerFactory.getLogger(SparkLSTMCharacterExample.class);
2017-01-24 15:02:31
9644
3
原创 深度学习-如何调试基于spark的LSTM
本文是在spark本地模式运行,如果想用集群模式,使用上篇提到的参数即可,例子是LSTM字符,代码如下public class TrainingStatsExample { private static final Logger log = LoggerFactory.getLogger(TrainingStatsExample.class); @Parameter(na
2017-01-23 11:21:11
3472
1
原创 深度学习-基于spark的多层神经网络
最后我们再写3篇基于spark的深度学习,这篇是手写识别的,用的是spark的local模式,如果想用集群模式在submit的时候设置-useSparkLocal false,或者在程序中设置useSparkLocal=false,代码如下public class MnistMLPExample { private static final Logger log = LoggerF
2017-01-20 17:14:39
4259
原创 深度学习-利用递归网络判断序列趋势
这其实是一个利用LSTM递归网络进行序列分类的问题,根据数据趋势把数据分成6个类正常,循环,阶跃上升,阶跃下降,趋势向上,趋势向下数据连接:https://archive.ics.uci.edu/ml/machine-learning-databases/synthetic_control-mld/synthetic_control.data图像连接:https://archive.ics
2016-12-27 18:46:06
2471
原创 深度学习-递归网络
先介绍一个简单的例子,放入字符串的第一个字符,让递归网络复述出后面的字符串,我们看看是如何工作的public class BasicRNNExample { // define a sentence to learn public static final char[] LEARNSTRING = "Der Cottbuser Postkutscher putzt den C
2016-12-23 10:26:37
2038
原创 深度学习-文档分类
public class ParagraphVectorsClassifierExample { ParagraphVectors paragraphVectors; LabelAwareIterator iterator; TokenizerFactory tokenizerFactory; private static final Logger log =
2016-12-16 19:37:55
1487
原创 深度学习-gloVe模型
下面几篇是deeplearning4j在文本方面的例子,文本方面我还没有实战经验,只是大概看过spark-ml中word2vector等的源码,word2vector是比较传统的模型,本质上可以把它理解成词的降维,而gloVe是和word2vector功能相似的模型,把句子的信息和全局的信息结合,目的是在语义和语句上都获得更好的表达效果,下面我们仅从使用的角度上看gloVe模型的代码pub
2016-12-16 14:19:50
3461
原创 深度学习-程序过早停止诊断
内容不难,但是在实战中很有用,大部分内容和之前一样,特别的地方会做注解public class EarlyStoppingMNIST { public static void main(String[] args) throws Exception { //Configure network: int nChannels = 1;
2016-12-14 17:32:03
2792
原创 深度学习-用户自定义层
这篇我们看下如果自定义层,如何做梯度测试,老吴还是很推崇梯度测试的public class CustomLayerExample { static{ //Double precision for the gradient checks. See comments in the doGradientCheck() method // See also
2016-12-09 18:22:55
2340
原创 深度学习-根据名字识别男女
这是一个非常有启发的例子,可以扩展到生产环境做一些模型!public class PredictGenderTrain{ public String filePath; public static void main(String args[]) { PredictGenderTrain dg = new PredictGenderTrain(
2016-12-08 10:27:17
5856
原创 深度学习-异常检测
我们看看dl4j怎么做异常检测,效果如何/**Example: Anomaly Detection on MNIST using simple autoencoder without pretraining * The goal is to identify outliers digits, i.e., those digits that are unusual or * not li
2016-12-07 15:15:03
9191
1
原创 深度学习-pipeline
pipeline可以理解为模块组装,这里以手写识别为数据,介绍其用法,贴代码/** * This code example is featured in this youtube video * https://www.youtube.com/watch?v=ECA6y6ahH5E * ** This differs slightly from the Video Exampl
2016-12-06 17:27:32
6353
原创 深度学习-根据提供的csv数据做回归并画图
这篇主要是看下怎么画图,贴代码public class CSVPlotter { public static void main( String[] args ) throws IOException, InterruptedException { String filename = new ClassPathResource("/DataExamples
2016-12-05 18:50:37
2013
原创 深度学习-读csv数据做分类器
本节主要介绍如dl4j如何操作csv,虽然实战中比较少用,但是对熟悉基本数据操作及结构还是有好处的,代码如下public class BasicCSVClassifier { private static Logger log = LoggerFactory.getLogger(BasicCSVClassifier.class);//工厂方法生成日志类 private
2016-12-05 11:21:10
3965
原创 spark ml 推荐源码笔记三
上一篇讲到 val (userInBlocks, userOutBlocks) = makeBlocks("user", blockRatings, userPart, itemPart, intermediateRDDStorageLevel)(userInBlocks, userOutBlocks)就是上篇最终结果inBlock,outBlock,继续看
2016-11-17 11:30:14
672
原创 spark ml 推荐源码笔记二
上次我们讲到als对象train方法的val solver = if (nonnegative) new NNLSSolver else new CholeskySolver
2016-11-10 15:09:49
766
原创 spark ml 推荐源码笔记一
首先是trait ALSModelParams,主要设置了user和item的默认列名接下来又是一个trait ALSParams,参数包括rank:矩阵因子等级,是大于等于1的整数,默认10,例如user对item的评分,最多是10numUserBlocks:用户矩阵分块数,是大于等于1的整数,默认是10numItemBlocks:项目矩阵分块数,是大于等于1的整数,默认是
2016-10-28 11:27:24
1951
原创 spark ml 随机森林源码笔记三
二已经很长了,告一段路,从三开始真正构建决策森林,首先创建缓存节点id的RDD,让所有点属于跟节点 val nodeIdCache = if (strategy.useNodeIdCache) { Some(NodeIdCache.init( data = baggedInput, numTrees = numTrees,
2016-10-14 11:24:16
913
原创 spark ml 随机森林源码笔记二
书接上回,该分析run方法了,有1000多行,该方法主要是根据数据和参数,训练生成一组树,就是决策森林开始先干了一件事 val metadata = DecisionTreeMetadata.buildMetadata(retaggedInput, strategy, numTrees, featureSubsetStrategy)这里构建决策树的元数据pr
2016-10-10 16:30:08
850
原创 spark ml 随机森林源码笔记一
以回归为例吧,回归在某些场合可能更精准支持连续变量和类别变量,类别变量就是某个属性有三个值,a,b,c,需要用Feature Transformers中的vectorindexer处理上来是一堆参数setMaxDepth:最大树深度setMaxBins:最大装箱数,为了近似统计变量,比如变量有100个值,我只分成10段去做统计setMinInstancesPerNo
2016-10-09 14:07:02
7415
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人