0%

Spark action 算子触发 Spark 作业执行,一个作业 job 包含若干阶段 stage,而 Spark 划分 stage 的依据是 transformation 算子之间是否存在宽依赖(wide dependencies),即以 shuffle 操作来划分 stage,一个 stage 会尽可能地包含更多窄依赖 transformations。

Shuffle 是 Spark 用于跨 JVM (executor) 甚至跨机器(不同节点上的 executor 或 driver)的数据重分发机制。需要注意的是,Spark Shuffle 是一个昂贵的操作,因为它通常包含以下开销:

  • 磁盘 I/O
  • 涉及数据序列化与反序列化
  • 网络 I/O

因此,为了提高 Spark 开发应用的性能,我们应尽可能地避免 shuffle。

Read more »

Maven 作为 Java 项目的一个常用构建工具,它很容易上手使用,但若不对其进行深入了解,则往往会在我们后续使用过程中留下一些隐患。
在日常开发环境中,我们很容易遇到较大代码规模的项目,涉及多种不同语言及技术,此时,在使用 Maven 作为主构建工具进行本地项目编译及构建时,则有可能会遇到项目构建速度慢的问题。为提升开发体验,本文将讨论 Maven 项目构建速度优化相关技巧。

Read more »

近几天,在看 Github explore 时意外看到了 fcitx5-material-color,提供了更好看的主题色,并支持单行候选窗显示,于是决定将用了近一年的 fcitx 换成 fcitx5。

顺便简单介绍一下我在 manjaro 上使用已近 2 年多的输入方案 - 小鹤音形。

Read more »

RDD,一个只读的弹性分布式数据集,一个由 Spark 提供的分布式内存计算抽象模型。是 Spark 构建的根基。为了深入了解 Spark 的编程模型,学习 Spark ,我们非常有必要了解什么是 RDD。

Read more »

虽然之前上过 oracle 数据库相关的课程,但学得比较浅,上完课后也没怎么使用到 oracle 数据库,一般都使用 mysql、mariadb 等。

最近因为工作需要,不得不重新认真学学 Oracle 数据库了「重复学习真的很浪费时间😓」,而首先需要考虑的就是如何安装一个 oracle 数据库了,之前已有在 windows 系统下直接安装 oracle 数据库的经验。

理论上,再在 win10 上安装一个 oracle 数据库很简单,但我平时主要使用笔记本电脑上的 manjaro 系统,其他的系统只是备用而已。

Read more »

文献翻译:高效的紧凑编码字符级深层文本分类
authors: Wemerson Marinho, Luis Martı́, Nayat Sanchez-Pi
原文: A Compact Encoding for Efficient Character-level Deep Text Classification

Abstract

本文提出了一种新的文本到张量的表示方式,它依靠信息压缩技术为最常用的字符分配较短的编码。这种表示方式与语言无关,不需要进行预训练并能够产生没有信息损失的编码。它提供了对文本形态的充分描述,例如,它能够用来表示前缀,后缀和变形相似的向量,甚至能够表示训练集中没有的单词。通常,由于它紧凑而稀疏,因此非常适合使用张量处理库来加快训练时间。作为本文的一部分,我们证明了当与卷积神经网络(CNN)结合用于字符级别的文本分类时,该技术特别有效。我们将 CNN 的两个变体与本文的编码方式结合使用。实验结果表明,它极大地减少了要优化的参数数量,从而仅在 one-hot 编码表示所花费的时间的一小部分中就产生了具有竞争力的分类精度,从而应用于商业硬件中来训练模型。

Index Terms – text classification, character level convolutional neural networks, encoding of words

Read more »

文献翻译:文本分类字符级别卷积网络
authors: Xiang Zhang, Junbo Zhao, Yann LeCun
原文: Character-level Convolutional Networks for Text Classification

Abstract

本文提供了使用字符级卷积网络(ConvNets)进行文本分类的实证研究。我们构建了几个大型数据集,以表明字符级卷积网络可以达到最新水平或竞争结果。可以与传统模型(例如词袋BoW,n-grams 其 TFIDF 变体)以及深度学习模型(例如基于单词的 ConvNets 和递归神经网络)进行比较。

Read more »

文献翻译:一个测试离散事件系统可诊断性的多项式时间算法
authors: Shengbing Jiang, Zhongdong Huang, Vigyan Chandra, and Ratnesh Kumar
原文: A polynomial algorithm for testing diagnosability of discrete-event systems

Abstract

  大型复杂系统中的错误诊断是一项关键任务。在离散事件系统(DES)领域,Sampath 等人提出了一种基于语言的错误诊断方法。他们为DES引入可诊断性概念和定义,并使用根据系统构建的诊断器来测试系统的可诊断性。这种测试可诊断性的方法的复杂度是系统状态数的指数级别的,对于系统错误数量是双倍指数级别的。本文给出一种不构建系统诊断器的可诊断性测试算法,其复杂度在系统状态数上是四阶的,在故障类型数上是线性的。

Index Terms: Complexity, diagnosability, discrete event system, failure diagnosis.

Read more »