
机器学习
文章平均质量分 87
整理机器学习、深度学习等工程实践技巧、基础理论概念。
虾米小馄饨
算法工程师
展开
-
汉明距离、汉明损失详解及代码(python)
用具体的图示+代码,帮你理解汉明距离(Hamming distance)、汉明损失(Hamming loss)。原创 2022-05-25 21:54:51 · 10068 阅读 · 3 评论 -
如何理解「最大似然估计」?参数估计、似然函数、最大似然估计
最大似然估计,就是寻找一组模型参数,使得观测到现有样本出现的概率最大,即这组模型参数,可以使模型拟合的结果最接近实际数据分布。原创 2022-05-04 19:19:08 · 5191 阅读 · 0 评论 -
OpenCV中的「SVM分类器」:基本原理、函数解析和示例代码
在非均衡样本的分类训练中,用opencv中SVM默认的`train`函数,容易导致分类器偏向数量多的类别,这时可以采用`trainAuto`函数进行平衡。原创 2021-09-30 19:32:38 · 15367 阅读 · 9 评论 -
样本不均衡、长尾分布问题的方法整理(文献+代码)
分类任务中的样本不平衡问题,主要是不同类别之间样本数量的不平衡,导致分类器倾向于样本较多的类别,在样本较少的类别上性能较差。样本不均衡问题常常出现在呈长尾分布的数据中(long tailed data),如下图所示[^longtail]。现实生活中很多数据都类似长尾分布,头部数据类别数据量多,尾部类别数据量少。由于尾部类别(tail classes)数据量少,模型学习到的表征信息不够丰富,导致模型并不能很好的表达尾部类。原创 2021-06-22 17:52:11 · 12060 阅读 · 19 评论 -
深度神经网络可解释性:卷积核、权重和激活可视化(pytorch+tensorboard)
文章目录引言卷积核可视化权重和激活可视化小结引言本文整理了卷积神经网络训练过程中的可视化,便于对训练过程进行分析和检查。有需要的朋友可以马住收藏。卷积核可视化以下代码参考1:# 可视化卷积核 # in model.named_parameters(): if 'conv' in name and 'weight' in name: in_channels = param.size()[1] out_channels = param.size()[0原创 2021-06-12 11:57:33 · 8246 阅读 · 26 评论 -
50行代码,带你理解梯度下降法(Gradient Descent Method)
梯度gradf(x,y)=∂f∂xi+∂f∂yjgrad f(x,y)=\frac{\partial{f}}{\partial{x}}\bold{i}+\frac{\partial{f}}{\partial{y}}\bold{j}gradf(x,y)=∂x∂fi+∂y∂fj梯度下降法求函数的最小值:1import numpy as npimport matplotlib.pyplot as pltfrom matplotlib import cmfrom mpl_toolkits.mpl原创 2021-06-04 18:17:47 · 3796 阅读 · 26 评论 -
机器学习核心概念、常用术语整理(建议收藏)
【转】机器学习核心概念完全解析(建议收藏)原文链接:https://mp.weixin.qq.com/s/wEpmF1gdvsIimnvXrxKdRwAI干货知识库刚接触机器学习框架 TensorFlow 的新手们,这篇由 Google 官方出品的常用术语词汇表,一定是你必不可少的入门资料!本术语表列出了基本的机器学习术语和 TensorFlow 专用术语的定义,希望能帮助您快速熟悉 TensorFlow 入门内容,轻松打开机器学习世界的大门。本文来源:https://develo..转载 2021-05-10 15:18:25 · 3444 阅读 · 0 评论 -
调参方法论:如何提高机器学习模型的性能?
整理自Ian和Ng的建议。原创 2021-04-12 16:27:59 · 1304 阅读 · 1 评论 -
CausalDiscoveryToolbox:因果建模、因果图代码实现
Cdt工具包实现了端到端的因果建模方法,支持从观测数据中恢复直接依赖关系(因果图的骨架)和变量之间的因果关系。基于python 实现了许多用于图结构恢复的算法,接口简单,易于上手。原创 2021-03-30 17:31:43 · 17354 阅读 · 5 评论 -
Pytorch+Tensorboard混淆矩阵可视化
混淆矩阵是分类任务常用的一种评估方法。尤其是在类别数量不平衡的情况下,相比accuracy,混淆矩阵对哪个类被错误分类具有更直观的解释。在平时做简单的数据实验时,可以仅用from sklearn.metrics import plot_confusion_matrix或者seaborn对混淆矩阵进行可视化。但是在深度学习训练模型的过程中,在`tensorboard`中可视化混淆矩阵会更方便结果记录和对照。原创 2021-03-10 10:42:29 · 6323 阅读 · 7 评论 -
一次项目测评反思:数据准备、测评要求和各种问题记录
最近一直加班,总算是把项目指标的第三方测评为了项目和课题验收,需要对任务书中的技术指标进行第三方测试,并拿到第三方出具的测试报告,作为项目和课题验收的一个重要材料。测评前的准备工作程序运行后不能只显示检测指标,运行命令、输入路径、输出路径、运行时间等信息也需要输出,以证明结果是由程序跑出来的,程序和数据集也需要拷贝留存第三方测评需要采用“离线+在线”结合的形式,要有现场注册验证环节,测试中心对所测任务提出如下要求:各个任务点对测试集至少随机采样2次以上,取其平均结果作为最终评测结果;各任务点能够原创 2021-03-08 21:55:57 · 434 阅读 · 2 评论 -
一张图教你如何选择机器学习算法
如何选择合适的机器学习算法?根据你的业务场景,可以从下面这张微软提供的图清单的问题出发:1从文本中提取信息任务:文本分析算法,如N-Gram语言模型、特征哈希、文本预处理、Word2Vec等。预测数值任务:Regression回归算法,详情参考logistic-regression。分类任务:Classification算法,判别对象所属的类别,比如SVM, nearest neighbors, random forest在两个类别中预测:Two-class Classification 二翻译 2021-02-18 23:02:51 · 940 阅读 · 1 评论 -
用cookiecutter快速构建机器学习项目结构
文章目录为什么要采用标准化的项目结构?用cookiecutter生成更好的项目结构快速入门1、安装cookiecutter2、使用项目工程模板开始一个新项目3、常用文件说明数据科学/机器学习可用的Cookiecutter模板参考链接为什么要采用标准化的项目结构?我们常常会遇到这样一类问题:在尝试复现几个月前或者几年以前的数据分析实验时,却发现对自己以前编写的代码感到迷茫,不知道从何开始下手?数据应该如何加载和处理?哪些是中间处理的结果?等等。良好的项目结构应该能帮助我们更轻松地回到过去的工作的实践,具原创 2021-02-03 20:24:33 · 954 阅读 · 2 评论