浅谈分布式事务那些事

2021-02-22
阅读 6 分钟
1.5k
本篇文章我们重点讨论关于分布式事务的一些相关知识点。这是学习分布式系统的一个必不可少的技术。我们最常见的案例就是银行转账问题,A账户向B账户转100元,那么A账户余额要减少100,B账户上要增加100。两个步骤必须都要成功才算成功,只成功一个的话应当回滚掉。如果A和B不在同一个环境或者系统上,这个事务就是分布式...

Spring源码分析(二)如何解决循环依赖

2021-02-19
阅读 8 分钟
1.5k
在上一篇Spring源码分析中,我们跳过了一部分关于Spring解决循环依赖部分的代码,为了填上这个坑,我这里另开一文来好好讨论下这个问题。

Spring源码分析(一) 从Spring Bean的生命周期谈起

2021-02-02
阅读 15 分钟
2.5k
Spring Bean的生命周期真的是面试的时候关于Spring的最高频的考点之一了,笔者曾经被这个问题问懵了不止一次,一直记不住那一大串的步骤,但实际上尝试去死记硬背那些步骤的我是错误的,表面上看只是背诵一个流程,实际上,这个流程牵扯到的知识点可是很多而且很有意思的。

实现分布式锁的各种姿势

2020-09-15
阅读 10 分钟
1.8k
各位Javaer都对锁应该都是不陌生的,无论工作还是面试的时候,都是很常见的。不过对于大部分的小型的项目,也就是单机应用,基本都是使用Java的juc即可应对,但是随着应用规模的扩大,在分布式系统中,依靠着诸如syncronized,lock这些就无法应对了。那么本文就是来给大家唠嗑唠嗑在分布式系统中常见的几种实现分布式锁...

谈谈Map

2020-01-19
阅读 10 分钟
1.1k
作为Javaer,对于Map这个单词绝对不会陌生,无论是开发过程中还是出去面试的时候,都会经常遇到,而最频繁使用和面试提问的无非这么几个,HashMap, HashTable, ConcurrentHashMap。那么本文就针对这几个知识点做一个归纳和总结。

关联规则挖掘与Apriori算法

2020-01-13
阅读 3 分钟
4.8k
关联规则挖掘是数据挖掘中常用的手段,一般指的是从交易数据库、关系数据库以及其他的数据集中发现项或对象的频繁的模式(frequent patterns)、关联(association)的过程。此方法一般用于在购物篮分析(market basket analysis)中。最早是用于发现超市销售数据库中不同商品之间的关联关系,最经典的莫过于啤酒与尿布的这个...

就乱七八糟地发泄下

2019-11-21
阅读 1 分钟
898
今晚闲来无事翻了下自己的博客和一些之前整理的笔记资料什么的,猛然就发现我已经很久没正儿八经的去认真的学习一些东西了。最后一篇博客还是今年四月份写的,都过去七个月了。回想下从四月份到现在的七个月,总感觉真的是时间都被我给白白浪费了。

机器学习A-Z~Thompson抽样算法

2019-04-16
阅读 3 分钟
2.1k
本文继续讲一个强化学习的算法,叫做Thompson抽样算法。这个算法的数学理论基础要用到的是贝叶斯推断(Bayesian Inference)。我们先谈谈这个算法的基本原理。

机器学习A-Z~置信区间上界算法 Upper Confidence Bound or UCB

2019-04-15
阅读 5 分钟
11.2k
本文将要开始介绍机器学习中的强化学习, 这里首先应用一个多臂老虎机(The Multi-Armed Bandit Problem)问题来给大家解释什么是强化学习。

机器学习A-Z~先验算法Apriori

2019-04-10
阅读 2 分钟
4.1k
本文将会讲述关联规则学习中的一个基本算法,叫做先验算法。所谓先验算法,就是找出不同事件之间的联系。比如一个人在超市买了产品A,他可能会买货物B。这里我们看一个例子。

机器学习A-Z~K平均聚类算法

2019-03-15
阅读 5 分钟
2.8k
本文来讲讲K平均聚类算法(K-Means Clustering),K Means算法是所有聚类算法中最经典的一种,因为它不断在直觉上容易理解,而且它的计算效率也是非常的高。

机器学习A-Z~分类模型性能评价及选择

2019-03-14
阅读 4 分钟
2.5k
首先讲的是伪阳性和伪阴性,英文叫做False Positives和False Negatives。先回到之前逻辑回归的例子,下图画出了sigmod函数,用来预测某件事情是否会发生,比如用户是否会购买产品。

机器学习A-Z~决策树与随机森林

2019-03-13
阅读 3 分钟
2.7k
有的人可能听过一个词:CART,这个代表的意思是Classification And Regression Tree。它是一个分类和回归的决策树。它被分为两类,一类是分类决策树(Classification Trees),另一个类是回归决策树(Regression Trees)。也就是我们要用这个决策树解决两类问题,一个分类问题一个回归问题。

机器学习A-Z~朴素贝叶斯

2019-03-12
阅读 3 分钟
1.9k
本文要讲述一个古老的机器学习算法,叫做朴素贝叶斯。这个算法比较简单明了,没有使用非常复杂的数学定理。用到的核心的数学理论就是概率中的一个定理,叫做贝叶斯定理(Bayes' Theorem)。

机器学习A-Z~支持向量机

2019-02-22
阅读 4 分钟
2.7k
有一组数据如图所示,有红色的点和蓝色的点,代表了两种分类的数据,现在我们要做的是如何将这两种数据准确的分隔开来。看图像其实很简单,可以横着画一条直线或者竖着画或者斜着画都能将其分隔开来。那么svm要做的就是找到最佳的一条直线。

机器学习A-Z~Logistic Regression

2019-02-12
阅读 3 分钟
1.7k
之前的课程谈论的都是线性回归问题,现在开始看看分类问题。首先讲的是逻辑回归,英文叫做Logistic Regression。看一下下面的图像,因变量不再如同线性回归那样相对来说比较连续,这里的数据点是离散的。

机器学习A-Z~评估回归模型的表现

2019-02-03
阅读 3 分钟
2.2k
怎么拟合这条直线呢?实际上就是假设平面上有一条直线,我们将这些数据点向这条直线上做投影,那么这些投影和实际值的差的平方和最小时就能得到这条直线。这个也有个专业术语叫做剩余平方和($SS_{res}$)。

机器学习A-Z~多项式回归

2019-01-16
阅读 3 分钟
2k
这个表达式和多元线性回归非常像,唯一的区别就是多项式线性回归中存在很多次方项,而多元线性回归中是多个变量。实际上这里可以把多元线性回归中的多个变量理解成多项式中的$x_n^2$。所谓线性看的是$b_0$一直到$b_n$这些参数的一个线性组合,跟自变量是否线性其实没什么关系,因此这种情况依然是线性的。当然也存在非线...

机器学习A-Z~多元线性回归

2019-01-10
阅读 6 分钟
2.7k
之前的文章已经讲述了简单线性回归的概念和代码实现,现在来继续看看多元线性回归。所谓多元线性回归其实就是自变量的个数变多了,之前的简单线性回归方程可以表示为:$y=b_0 +bx$,那么在多元中则是$y=b_0+b_1x_1+b_2x_2+...+b_nx_n$。

机器学习A-Z~简单线性回归

2019-01-08
阅读 2 分钟
1.5k
所谓简单线性回归,其实就是自变量只有一个条件情况下的线性回归问题,是线性回归问题中最简单的一种了,这种问题在生活中也经常能简单,本文就用一个简单的例子来讲解简单线性回归。

机器学习A-Z~数据预处理

2019-01-03
阅读 4 分钟
1.6k
数据预处理是机器学习中非常重要的步骤,为了能正确的分析数据,得到最佳的机器学习算法,拿到数据后我们一般来说都需要对数据进行预处理。数据预处理包括以下几个步骤:

吴恩达机器学习笔记-非监督学习

2018-11-05
阅读 4 分钟
3.6k
之前的课程中我们学习的都是监督学习相关的算法,现在来开始看非监督学习。非监督学习相对于监督非学习来看,其使用的是未标记的训练集而监督学习的是标记的训练集。换句话说,我们不知道向量y的预期结果,仅仅只是拥有一个可以找到结构的特征的集合。其中一种可能的结构是,所有的数据可以大致地划分成两组,这种划分的...

吴恩达机器学习笔记-支持向量机

2018-10-12
阅读 6 分钟
2.6k
优化目标 之前的课程有学习过Logistic回归的假设函数: $$ h_\theta(x) = \frac{1}{1+e^{-\theta^Tx}} $$ 其图像如下: 从图像可以看出,如果$y=1$的话,那么我们希望$h_\theta(x) \approx 1$,那么$\theta^Tx >> 0$;如果$y=0$的话,那么我们希望$h_\theta(x) \approx 0$,那么$\theta^Tx << 0$;对于Logisti...

吴恩达机器学习笔记-机器学习系统设计

2018-09-27
阅读 3 分钟
2k
确定执行的优先级 我们已经学习过一些机器学习的算法,那么如何设计一个机器学习系统呢,课程中举了一个垃圾邮件分类器的例子,例子比较简单这里就不再赘述: 那么如何来提升这个分类器的准确度呢?有下面几个建议: 收集更多的数据 增加更复杂的特征(比如邮件头) 开发更复杂的算法来鉴定错误拼写 误差分析 如果你准备...

吴恩达机器学习笔记-应用机器学习的建议

2018-09-26
阅读 5 分钟
3.1k
我们之前已经学习过一些机器学习的算法,现在我们来谈谈如何评估算法学习得到的假设。当发现预测的结果和实际的数据有误差的时候,我们需要进行一些调整来保证预测的准确性,大部分情况下,有以下几种办法来调整假设函数:

吴恩达机器学习笔记-反向传播算法练习

2018-09-25
阅读 3 分钟
4.1k
直观感受反向传播的概念 上篇文章讲述了神经网络的反向传播算法的基本概念,现在来详细的对此算法进行一些讲解。回忆一下神经网络的代价函数: 如果我们只考虑一个简单的只有一个输出单元的情况,即k=1,那么代价函数则变成: 直观的说,$\delta_j^(l)$项表示在第l层中第j个单元的误差。更正式的说,$\delta$的值实际上...

吴恩达机器学习笔记-神经网络的代价函数和反向传播算法

2018-09-18
阅读 3 分钟
4k
代价函数 在神经网络中,我们需要定义一些新的参数来表示代价函数。 L = total number of layers in the network $s_l$ = number of units (not counting bias unit) in layer l K = number of output units/classes 在上一章的神经网络的介绍中,我们有多个输出的节点。这里我们定义 $h_\Theta(x)_k$ 来表示第k个输出结...

吴恩达机器学习笔记-神经网络

2018-09-11
阅读 7 分钟
3.4k
本文将会介绍一种叫“神经网络”(Neural Network)的机器学习算法。 非线性假设 我们之前已经学习过线性回归和逻辑回归算法了,为什么还要研究神经网络? 我们先看一个例子。下面是一个监督学习分类问题的训练集: 如果利用逻辑回归算法来解决这个问题,首先需要构造一个包含很多非线性项的逻辑回归函数。如下所示: 这里g...

吴恩达机器学习笔记-过拟合

2018-09-07
阅读 4 分钟
3k
左边的图中,我们假设$y = \theta_0 + \theta_1x$,与数据集进行比较发现此函数和数据的拟合度并不是很高,先然数据并不是呈现一条直线的形状,因此我们认为此函数并不能很好的预测后面的数据的真实情况,我们通常称这种情况为欠拟合(underfitting);中间的图中,我们假设$y = \theta_0 + \theta_1x + \theta_2x^2$,...

吴恩达机器学习笔记-Logistic回归模型

2018-09-04
阅读 3 分钟
3k
在逻辑回归模型中我们不能再像之前的线性回归一样使用相同的代价函数,否则会使得输出的结果图像呈现波浪状,也就是说不再是个凸函数。代价函数的表达式之前有表示过,这里我们把1/2放到求和里面来。