- 博客(24)
- 资源 (177)
- 收藏
- 关注
原创 521. Longest Uncommon Subsequence I
原题链接1 蛮力破解(Time Limit Exceeded)暴力破解方式将会生成所有的 2n2^n个子序列。并且将他们的复现次数也一同存储到hashmap中。最长的子序列的复现次数一定为1,如果没有找到复现次数为1的序列,则返回-1ublic class Solution { public int findLUSlength(String a, String b) { Ha
2017-12-27 22:43:23 134
原创 637. Average of Levels in Binary Tree
原题链接主要考察的是对树这个数据结构的遍历。这里有两种方式BFS 在这种题目上来说,使用BFS进行层次遍历进行代码的书写更舒服public List<Double> averageOfLevels(TreeNode root) { List<Double> list = new LinkedList<>(); Queue<TreeNode> queue = new LinkedList<>
2017-12-27 20:50:17 234
原创 496. Next Greater Element I
原题链接这个题做起来相对有意思一些。这是一个用于找规律的题。题目大意是,给两个数组nums1和nums2,其中nums1的元素均是nums2里面的子元素,问nums1中元素右边最大的元素是谁,如果没有则返回-1。这个题的思路就是:把nums2拆分为若干递减再递增的列表。然后依次push到HashMap中。遍历nums1,获取HashMap中的value值例: 假定num2中的元素为[1,3,
2017-12-26 19:15:53 163
原创 获取AutoEncoder中间层输出
获取AutoEncoder中间层输出dl4j对于自动编码机提供了多种实现形式深度自动编码器降噪自动编码器堆叠式降噪自动编码器在dl4j中,对于MultiLayerNetwork提供了两个方法net.activate(layer, input)net.feedForwardToLayer(layNum,input)可以用于获取中间输出, 通过在github上面gitter的作者提供,应当使
2017-12-21 15:57:49 2184
翻译 工作区指南(Workspaces Guide)
工作区指南自0.9.0版(或0.8.1-SNAPSHOT版)开始,ND4J提供一种额外的内存管理模式:工作区。该模式让您可以将内存重复用于循环工作负荷,而无需依赖JVM垃圾回收器来跟踪堆外内存。换言之,在工作区循环结束时,所有INDArray的内存内容都会被废弃。在ND4J中使用该模式的具体方法参见这些示例。基本的思路很简单:您可以在一个或多个工作区内部进行任何所需的操作,如果想要将一个INDArr
2017-12-19 19:48:40 741
翻译 ND4J/DL4J的内存管理:工作原理
ND4J/DL4J的内存管理:工作原理ND4J使用堆外内存存储N维数组NDArray,以便提升从本机代码(例如BLAS和CUDA库)使用NDArray时的性能。 “堆外”意味着系统分配的这部分内存位于JVM(Java虚拟机)之外,因此不受JVM垃圾回收器(GC)的管理。在Java/JVM一侧,我们只设置指向堆外内存的指针,可以传递给底层的C++代码(通过JNI),用于ND4J运算。我们用两种方法管理
2017-12-19 19:16:53 1963
翻译 Deeplearning4j的本机CPU优化
Deeplearning4j的本机CPU优化本页指南将介绍在DL4J和ND4J上调试或提升CPU系统性能的几种方法。让我们先来定义一些术语:OpenMPOpenMP是一个开源的并行编程API,支持C/C++/Fortran语言。ND4j使用以C++编写的后端,因此我们用OpenMP来改善CPU的并行计算性能。CPU、内核、超线程一个CPU通常是由多个内核组成的单个物理单元。每个内核都能独立处理指令,
2017-12-19 13:34:07 1234
原创 669. Trim a Binary Search Tree
原题链接/** * Created by Joe on 2017/12/14. * https://leetcode.com/problems/trim-a-binary-search-tree/description/ */public class P669 { public TreeNode trimBST(TreeNode root, int L, int R) {
2017-12-14 22:45:53 146
原创 566. Reshape the Matrix
原题链接/** * Created by Joe on 2017/12/13. * https://leetcode.com/problems/reshape-the-matrix/description/ */public class P566 { public int[][] matrixReshape(int[][] nums, int r, int c) {
2017-12-13 22:57:55 140
原创 412. Fizz Buzz
原题链接import java.util.ArrayList;import java.util.List;/** * Created by Joe on 2017/12/13. * https://leetcode.com/problems/fizz-buzz/description/ */public class P412 { public List<String> fizzBu
2017-12-13 22:21:01 171
原创 575. Distribute Candies
原题链接import java.util.HashSet;import java.util.Set;/** 1. Created by Joe on 2017/12/13. 2. https://leetcode.com/problems/distribute-candies/description/ */public class P575 { public int distrib
2017-12-13 22:04:06 98
原创 682. Baseball Game
原题链接import java.util.LinkedList;/** * Created by Joe on 2017/12/12. * https://leetcode.com/problems/baseball-game/discuss/ */public class P682 { public int calPoints(String[] ops) { int
2017-12-13 21:44:35 190
原创 500. Keyboard Row
原题链接这道题如果是自己做的话,应该就是遍历了。 但是在discuss区有个非常巧妙的做法,这里就贴上来public class P500 { public String[] findWords(String[] words) { return Stream.of(words).filter(s -> s.toLowerCase().matches("[qwertyuiop
2017-12-12 21:37:13 127
原创 Reverse Words in a String III
原题链接/** * Created by Joe on 2017/12/12. */public class P557 { public String reverseWords(String s) { if (s == null) return null; if (s == "") { return "";
2017-12-12 20:46:11 140
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(九) 利用梯度更新参数
在前面我们已经通过反向传播计算出梯度。 并且梯度也经过梯度标准化,已经L1, L2参数的调整,接下来继续返回到StochasticGradientDescent.optimize()方法中继续执行以下语句//先获取模型的参数INDArray params = model.params();//然后使用StepFunction对参数进行更新stepFunction.step(params, g
2017-12-11 14:37:16 478
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(八) 根据参数更新梯度
前面经过反向传播,已经计算出了模型的损失函数得分以及梯度,在反向传播完成之后会返回到package org.deeplearning4j.optimize.solvers包下的BaseOptimizer.gradientAndScore()方法体重继续执行,该方法体中继续执行。反向传播计算完的参数还需要经过梯度正则化以及L1,L2参数惩罚@Overridepublic Pair<Gradient,
2017-12-08 17:02:29 738
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(七) 损失函数得分计算
在反向传播计算完梯度和误差之后,返回到MultiLayerNetwork.computeGradientAndScore()方法中继续计算输出函数的偏差MultiLayerNetwork.computeGradientAndScore()@Overridepublic void computeGradientAndScore() { //Calculate activations (whi
2017-12-08 11:02:24 651
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(六) 反向传播部分
1 backprop()/** Calculate and set gradients for MultiLayerNetwork, based on OutputLayer and labels*/protected void backprop() { Pair<Gradient, INDArray> pair = calcBackpropGradients(null, true);
2017-12-06 20:51:02 602
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(五)正向传播
接下来执行的就是preOutput()如下的两条语句:INDArray b = getParam(DefaultParamInitializer.BIAS_KEY);INDArray W = getParam(DefaultParamInitializer.WEIGHT_KEY);用于获取当前层的权重和偏值。之后继续执行的是输入的有效性判断以及是否使用dropoutConnect,当前的网络架构没
2017-12-05 21:00:53 380
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(四)dropout
preOut这一部分就是网络模型前向传播的重点。public INDArray preOutput(boolean training) { applyDropOutIfNecessary(training); INDArray b = getParam(DefaultParamInitializer.BIAS_KEY); INDArray W = getParam(Defau
2017-12-05 20:08:58 646
原创 超参数总结
超参数总结损失函数选择权重初始化学习率learning rate学习速率计划learning rate schedule激活函数Epoch数量和迭代次数更新器和优化算法梯度标准化 Gradient Normalization微批次大小miniBatch网络层数和隐藏单元个数正则化额外链接超参数总结损失函数选择回归任务通常选择MSE、MEAN_ABSOLUTE_ERROR等
2017-12-05 14:55:51 8704
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(三)
2.3.3.1 gradientAndScore();这里用于获取梯度和分数@Overridepublic Pair<Gradient, Double> gradientAndScore() { oldScore = score; model.computeGradientAndScore(); if (iterationListeners != null && iterat
2017-12-04 16:30:43 353
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(二)
2.3.3 solver.optimize()optimezie()方法首先需要判断solver类中的optimizer字段是否为空。public void optimize() { if (optimizer == null) optimizer = getOptimizer(); optimizer.optimize();}如果为空则需要调用getOptimiz
2017-12-01 20:21:25 346
原创 Dl4j-fit(DataSetIterator iterator)源码阅读(一)
fit(DataSetIterator iterator)源码阅读1 网络模型//Create the networkint numInput = 1;int numOutputs = 1;int nHidden = 2;MultiLayerNetwork net = new MultiLayerNetwork(new NeuralNetConfiguration.Builder()
2017-12-01 16:46:32 1361
Manning Deep Learning for Search-2019年.pdf
2019-06-10
Netty 入门与实战:仿写微信 IM 即时通讯系统.zip
2019-05-13
Graph Algorithms Practical Examples in Apache Spark and Neo4j
2019-05-13
Effective Java 第三版中文版全彩.pdf
2019-05-10
What’s New in Java 11?-O’Reilly(2019).pdf
2019-04-02
effective java第三版完整版(开源翻译版本)
2019-03-20
Architecting Modern Data Platforms(2019)
2019-03-05
Clustering data streams_ Theory and practice.pdf
2019-02-28
Network Intrusion Detection using Deep Learning_A Feature Learning Approach
2019-02-27
Machine Learning and Knowledge Discovery in Database, Part IIIs(第三部分)
2019-01-20
Machine Learning and Knowledge Discovery in Databases, Part I(第一部分)
2019-01-20
Computer Security Art and Science, Second Edition - Matt Bishop(2018).epub
2018-11-12
Sanet.st.Feature Engineering Made Easy - Sinan Ozdemir.epub(正式版)
2018-10-24
HPUX System and Network Administration.zip
2018-10-13
Springer.Neural.Information.Processing.Part.V.331970138X.pdf
2018-10-09
Springer.Neural.Information.Processing.Part.IV.3319700928.pdf
2018-10-09
Springer.Neural.Information.Processing.Part.III.3319700898.pdf
2018-10-09
Springer.Neural.Information.Processing.Part.II.3319700952.pdf
2018-10-09
Scala.for.the.Impatient.2nd.Edition.2016.12.pdf(带书签)
2018-09-23
浙江人民-成为数据分析师:6步练就数据思维.201802.epub浙江人民-成为数据分析师:6步练就数据思维.201802.epub
2018-09-23
Artificial Unintelligence_How Computers Misunderstand the World-MIT(2018).epub
2018-09-23
TensorFlow_Powerful Predictive Analytics with TensorFlow(2018) 书和代码
2018-09-05
Deep Learning Vol 1 From Basics to Practice_带书签.pdf
2018-09-05
Sanet.st_Deep_Learning,_Vol._2_From_Basics_to_Practice_-_Andrew_Glassner_带书签.pdf
2018-09-05
自己动手做大数据系统.azw3
2018-09-05
Beginning Application Development with TensorFlow and Keras
2018-06-17
Big Data Principles and best practices of scalable realtime data systems.pdf
2018-05-25
Deep Learning in Natural Language Processing-Springer(2018).pdf
2018-05-25
Introduction to Deep Learning Business Applications for Developers(2018)
2018-05-06
Computer Systems_A Programmer’s Perspective, 3rd Edition
2018-05-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人