摘要:
感知机的模型是一个线性分类模型,只能处理线性可分问题(你可以试试让其学习与、或、非等线性可分问题)。可以证明,若两类模式是线性可分的,即存在一个线性超平面能将他们分开,则感知机的学习过程一定会收敛(converge)而求得适当的权向量w;否则感知机学习过程将会发生振荡(fluctuation),w难以稳定下来,不能求得合适解。亦或问题就是一种非线性可分问题。如图d所示,我们无法用线性超平面去将正负样本分隔开。 阅读全文
摘要:
在Logistic 回归模型中,一个事件的几率(odds)是指该事件发生的概率与不发生的概率的比值。如果事件发生的概率是p,那么该事件的几率是p/(1-p),该事件的对数几率(log odds,简称对率)或 logit 函数是log(p/1-p)。这玩意在统计学里面称之为“对率回归”,其实就是“Logistic regression 名称”的由来。这里的 Logistic 和“逻辑”没有任何关系,和对率才是有关系的。 可以看出,输出Y=1的对数几率是由输入x的线性函数表示的模型,即 Logistic回归模型。 阅读全文
摘要:
人类对客观世界的认识分为“先验”和“后验”。后验是指人类通过经验所产生的认识,而先验是指人类在经验之外通过自身的理性对客观世界的认识。先验和后验的概念贯穿了整个概率论与统计学。在统计学中由于对概率本身看法的不同,也分化为了频率学派和贝叶斯学派,他们的思想正好分别对应于哲学上的经验主义与理性主义。 阅读全文
摘要:
我们在学习数值线性代数时,学习了当方程的解存在时,如何找到Ax=b的解。但是当解不存在的时候该怎么办呢?当方程不一致(无解)时,有可能方程的个数超过未知变量的个数,我们需要找到第二可能好的解,即最小二乘近似。这就是最小二乘法的数值计算视角。 阅读全文
摘要:
很简单,右击下方终端面板,选中"将视图移动到侧面板",可以看到终端成功显示到右边了。 阅读全文
摘要:
在训练模型时我们有时需要以单通道加载训练图片(即灰度图),此时我们只需要设置加载数据集时的transform参数即可。 阅读全文
摘要:
我们在做机器学习相关项目时,常常会分析数据集的样本分布,而这就需要用到直方图的绘制。在Python中可以很容易地调用matplotlib.pyplot的hist函数来绘制直方图。不过,该函数参数不少,有几个绘图的小细节也需要注意。首先,我们假定现在有个联邦学习的项目情景。我们有一个样本个数为15的图片数据集,样本标签有4个,分别为cat, dog, car, ship。这个数据集已经被不均衡地划分到4个客户端(client)上。 阅读全文
摘要:
下面我们在深度学习项目情境中展示用lambda函数嵌套法修改函数参数个数的应用。我们这是一个联邦学习项目,有多个client客户端,每个client中都有机器学习模型。我们现在有一份现有的祖传代码不能改动,该祖传代码中client类的初始化函数中需要传入模型类的初始化函数和优化器类的初始化函数(注意,不是模型的对象和优化器的对象),然后在client类的构造函数中完成模型对象的初始化和优化器对象的初始化。 阅读全文
摘要:
我们时常会遇到这样的情形:我们有一个元素为indices的列表,想通过函数update_indices对其进行更新。不过有点特殊的是,我们想在update_indices中先将列表置空,然后再插入元素。不过,代码运行的结果会出乎我们意料。 阅读全文
摘要:
因为在我最近的科研中需要用到分布式的社区检测(也称为图聚类(graph clustering))算法,专门去查找了相关文献对其进行了学习。下面我们就以这篇论文IPDPS2018的文章为例介绍并行社区检测算法。目前对于图的簇/社团划分,目前最有名的一种启发式求解方法是基于贪心准则的Louvain方法。在本篇论文中,作者将这个方法扩展到了分布式内存领域进行了并行化。 阅读全文