CUDA 代码编译流程 1 编译流程 随着 Nvidia 不断更新 GPU 硬件设计架构,每一代架构更迭都会引入新的功能,在同一代架构中不同的 GPU 型号在硬件配置上与性能上也会有一些细小的差异。 Nvidia 提供了一套代号来标识 GPU 的真实架构,它的格式是 sm_xy,x 代表 GPU 架构世代的编号,y代表 GPU 在这个架构世代中的版本号。为了方便对比 GPU 能力,如果 x1y1 <= x2y2 那 2024-01-03 CUDA #machinelearning #deeplearning #CUDA
机器学习项目基础设施 机器学习项目基础设施 机器学习过程可以大体上分为三个部分数据管理、模型训练与生产部署。 图片来自课程 [Full Stack Deep Learning](Lecture 6: Infrastructure & Tooling - Full Stack Deep Learning) 数据管理 数据源(sources) 数据源负责数据的存储与数据格式,常用的存储方式包括本地的文件系统、服务 2021-06-13 ML #machinelearning #deeplearning #softwareenginer #ai-infra
机器学习中的交叉熵 机器学习中的交叉熵 交叉熵损失函数是机器学习分类问题中最常用的一个损失函数。但是很多人对于“交叉熵”的概念缺乏理解。本文的目的是希望能够通俗易懂的解释清楚 “熵”, “交叉熵” 和 “KL-散度” 这三个相关的概念。 信息论中的“熵” “熵” (entropy) 这个概念在热力学中表示一个系统的无序程度,熵越大系统就越混乱。1948年香农在其发表的《通信的数学理论》论文中给出了”信息熵“的定义:信 2020-09-27 ML #machinelearning #math
pkg-config 入门 pkg-config 入门 pkg-config 是类 Unix 操作系统上的一个库查询工具。它通过 .pc 文件来查询当前系统上已安装类库的信息。 下面是 OpenCV4 的 pc 文件, 文件中包含了OpenCV 库的很多元数据(metadata) 1234567891011121314# Package Information for pkg-configprefix=/usr/local/ 2020-07-25 cpp #c++ #linux
机器学习基石 第二讲 感知机 感知器假设集(Perceptron Hypothesis Set) 感知器算法: $$h(x)=sign((\sum_{i=1}^dw_ix_i)-threshold)$$ 对上面的公示进行变形,将threshold作为偏置,纳入 x 中,$$x_0=+1$$ ; #mjx-c5ae339{ display:contents; 2020-07-11 ML #machinelearning #deeplearning #math
Python 依赖管理软件 Poetry 上手 Python 项目管理 Poetry 上手 Python 项目依赖管理工具有 virtualenv pipenv anaconda,来帮助项目做到项目之间的环境隔离,依赖管理等。今天介绍的 Poetry 是它更像是 Python 项目 CLI 工具,能够进行项目模板创建,依赖管理,项目构建与发布等。Poetry v0.1.0 版本发布2018-02,到现在两年的时间,目前社区比较活跃。 Poetr 2020-04-20 python #designpattern #softwareengineering #python
软件设计模型-功能开关 功能开关 本文受到 Pete Hodgson 的文章 Feature Toggles (aka Feature Flags) 启发,原文内容比本文更加丰富。 简单的功能开关 场景一:你刚刚开发完一个新的功能,然后需求告诉你,由于这个功能使用场景的限制,需要添加一个开关,能够让这个功能在某些环境打开或者关闭。 场景二:你实现了一个新版本的算法,但是并不希望立刻在线上启用,希望能进行更多的测试,所以需 2020-04-20 architecture #designpattern #softwareengineering
Softmax Cross Entropy Loss笔记 Softmax函数 Softmax函数是在机器学习做分类预测中一个重要的工具函数。Softmax函数的数学定义如下: #mjx-688a027{ display:contents; mjx-assistive-mml { user-select: text !important; clip 2019-02-22 ML #machinelearning #deeplearning #math