归一化那些事
归一化那些事
|
归一化那些事为什么要归一化?在对神经网络训练的过程中,未归一化的数据可能会导致陡峭的优化曲面,导致其在优化参数的过程中对学习率敏感,从而难以收敛,也就难以训练。举个简单的例子,如果数据有两个特征维度,其中一个其值在 0-1 之间,另一个在 0-10000 之间,为了优化第一个特征,显然其学习率应该低
图神经网络:GCN
图神经网络:GCN
|
图神经网络:GCNGCN 基本原理在机器学习中,我们常用 MLP、CNN、RNN 等网络来对数据进行特征学习,这些网络对数据都有一个要求,那就是维度是确定的、是规则的,否则就无法进行学习。也就是说,这些网络的数据是在欧氏空间中的,它是一种向量空间,存在距离、角度等几何意义。但是图结构是一种非欧结构,
Attention 直观理解
Attention 直观理解
|
什么是 Attention?通常很多教程或教材会告诉你,Attention 就是一种注意力,它可以让你关注更应该关注的,而忽略那些不应该关注的,Attention 通常代表某种兴趣点或关联性,Attention 机制使得模型会更关注有关联性的特征。但是这种表达非常抽象,即使是用了比喻的方法,仍然不好
循环神经网络 RNN 简析
循环神经网络 RNN 简析
|
循环神经网络 RNN前言要看懂这篇文章需要你对机器学习有基本的了解,至少了解 MLP 的原理,本文并不是零基础文章。时序数据与模型时序数据指的是一系列带有时序关系的数据,例如一段文本,先出现哪个字后出现哪个字是有时序关系的,字词顺序颠倒会导致意义不同,时序数据指的就是这一类数据点前后存在相关性的数据
std::bind 和 std::thread 传引用的那些事
std::bind 和 std::thread 传引用的那些事
|
C++ |
0 评论
前言在 std::bind 和 std::thread 中可能会遇到引用失效的问题,解决办法是通过 std::ref 传递引用。这通常不是什么难的技术问题,但是知其然知其所以然,为什么这样设计,也许值得深入探讨一下。引用失效的情况在以下两种情况下,引用可能失效,仍然导致拷贝操作std::bindst
C++ 内存模型深入解析
C++ 内存模型深入解析
|
C++ |
C++
0 评论
C++ 内存模型深入解析前言C++ 内存模型所聚焦的问题在于一个 C++ 对象在内存中是如何编排的,各种类内数据及方法,是如何存储在内存中的,以及模型是如何适配继承体系的。本文有大量例程进行验证和说明,需要花一定时间阅读,也推荐读者在自己的机器上进行试验和验证。本文中程序所用编译器为 clang 1
源码分析:C++ 信号槽机制的实现
源码分析:C++ 信号槽机制的实现
|
前置知识C++11 智能指针多线程知识设计模式 Observer什么是信号槽程序需要一种监听结构,当对象发生改变时,监听者能知道,非常常用的监听是输入事件的监听,例如按钮点击之后会产生一个监听事件,该事件会被监听者「听到」。虽然叫做监听者,直观理解上是监听者能够知道对象的变化,但实际上这种知道是被动
Linux 网络编程入门:API 详解
Linux 网络编程入门:API 详解
|
字节序/网络序为了保证机器无关,需要保证在网络上传输的字节序是一致的。所以某些关键信息(例如 IP),需要经过字节序的转化,确保所有机器都能正常解析,网络上采用大端方式的字节序。所以有一系列的 API 负责字节序的转化,例如 htons,其中 h 代表 host,主机,n 代表 network,网络
Docker 入门
Docker 入门
|
0 评论
概念Docker 通过将运行环境打包进容器中,可以实现运行环境的迁移,在不同设备或终端中,保持运行环境的一致,可以避免因为环境配置导致的一些令人头疼的玄学问题。镜像:只读的运行环境相关的文件,镜像就是我们跑的软件所需要的运行环境。容器:基于镜像可以创建出容器,镜像是静态的,不可运行的,实际运行需要基
C++11 多线程入门
C++11 多线程入门
|
C++ |
0 评论
前言本文不赘述操作系统中多线程的相关知识,只讲述了 C++11 中关于多线程库的一些使用和说明。线程的创建及入口函数线程的入口函数传入一共有三种方法:普通函数成员函数仿函数#include <thread>using namespace std;// 1. 普通函数void func(i