数学基础
- 线性代数
- 概率论与随机过程
- 数值计算
- 蒙特卡洛方法与 MCMC 采样
- 机器学习方法概论
统计学习
深度学习
- 深度学习简介
- 深度前馈网络
- 反向传播算法
- 正则化
- 深度学习中的最优化问题
- 卷积神经网络
- CNN:图像分类
- 循环神经网络 RNN
- Transformer
- 一、Transformer [2017]
- 二、Universal Transformer [2018]
- 三、Transformer-XL [2019]
- 四、GPT1 [2018]
- 五、GPT2 [2019]
- 六、GPT3 [2020]
- 七、OPT [2022]
- 八、BERT [2018]
- 九、XLNet [2019]
- 十、RoBERTa [2019]
- 十一、ERNIE 1.0 [2019]
- 十二、ERNIE 2.0 [2019]
- 十三、ERNIE 3.0 [2021]
- 十四、ERNIE-Huawei [2019]
- 十五、MT-DNN [2019]
- 十六、BART [2019]
- 十七、mBART [2020]
- 十八、SpanBERT [2019]
- 十九、ALBERT [2019]
- 二十、UniLM [2019]
- 二十一、MASS [2019]
- 二十二、MacBERT [2019]
- 二十三、Fine-Tuning Language Models from Human Preferences [2019]
- 二十四 Learning to summarize from human feedback [2020]
- 二十五、InstructGPT [2022]
- 二十六、T5 [2020]
- 二十七、mT5 [2020]
- 二十八、ExT5 [2021]
- 二十九、Muppet [2021]
- 三十、Self-Attention with Relative Position Representations [2018]
- 三十一、USE [2018]
- 三十二、Sentence-BERT [2019]
- 三十三、SimCSE [2021]
- 三十四、BERT-Flow [2020]
- 三十五、BERT-Whitening [2021]
- 三十六、Comparing the Geometry of BERT, ELMo, and GPT-2 Embeddings [2019]
- 三十七、CERT [2020]
- 三十八、DeCLUTR [2020]
- 三十九、CLEAR [2020]
- 四十、ConSERT [2021]
- 四十一、Sentence-T5 [2021]
- 四十二、ULMFiT [2018]
- 四十三、Scaling Laws for Neural Language Models [2020]
- 四十四、Chinchilla [2022]
- 四十七、GLM-130B [2022]
- 四十八、GPT-NeoX-20B [2022]
- 四十九、Bloom [2022]
- 五十、PaLM [2022] (粗读)
- 五十一、PaLM2 [2023](粗读)
- 五十二、Self-Instruct [2022]
- 句子向量
- 词向量
- 传统CTR 预估模型
- CTR 预估模型
- 一、DSSM [2013]
- 二、FNN [2016]
- 三、PNN [2016]
- 四、DeepCrossing [2016]
- 五、Wide 和 Deep [2016]
- 六、DCN [2017]
- 七、DeepFM [2017]
- 八、NFM [2017]
- 九、AFM [2017]
- 十、xDeepFM [2018]
- 十一、ESMM [2018]
- 十二、DIN [2017]
- 十三、DIEN [2019]
- 十四、DSIN [2019]
- 十五、DICM [2017]
- 十六、DeepMCP [2019]
- 十七、MIMN [2019]
- 十八、DMR [2020]
- 十九、MiNet [2020]
- 二十、DSTN [2019]
- 二十一、BST [2019]
- 二十二、SIM [2020]
- 二十三、ESM2 [2019]
- 二十四、MV-DNN [2015]
- 二十五、CAN [2020]
- 二十六、AutoInt [2018]
- 二十七、Fi-GNN [2019]
- 二十八、FwFM [2018]
- 二十九、FM2 [2021]
- 三十、FiBiNET [2019]
- 三十一、AutoFIS [2020]
- 三十三、AFN [2020]
- 三十四、FGCNN [2019]
- 三十五、AutoCross [2019]
- 三十六、InterHAt [2020]
- 三十七、xDeepInt [2023]
- 三十九、AutoDis [2021]
- 四十、MDE [2020]
- 四十一、NIS [2020]
- 四十二、AutoEmb [2020]
- 四十三、AutoDim [2021]
- 四十四、PEP [2021]
- 四十五、DeepLight [2021]
- 图的表达
- 一、DeepWalk [2014]
- 二、LINE [2015]
- 三、GraRep [2015]
- 四、TADW [2015]
- 五、DNGR [2016]
- 六、Node2Vec [2016]
- 七、WALKLETS [2016]
- 八、SDNE [2016]
- 九、CANE [2017]
- 十、EOE [2017]
- 十一、metapath2vec [2017]
- 十二、GraphGAN [2018]
- 十三、struc2vec [2017]
- 十四、GraphWave [2018]
- 十五、NetMF [2017]
- 十六、NetSMF [2019]
- 十七、PTE [2015]
- 十八、HNE [2015]
- 十九、AANE [2017]
- 二十、LANE [2017]
- 二十一、MVE [2017]
- 二十二、PMNE [2017]
- 二十三、ANRL [2018]
- 二十四、DANE [2018]
- 二十五、HERec [2018]
- 二十六、GATNE [2019]
- 二十七、MNE [2018]
- 二十八、MVN2VEC [2018]
- 二十九、SNE [2018]
- 三十、ProNE [2019]
- Graph Embedding 综述
- 图神经网络
- 一、GNN [2009]
- 二、Spectral Networks 和 Deep Locally Connected Networks [2013]
- 三、Fast Localized Spectral Filtering On Graph [2016]
- 四、GCN [2016]
- 五、神经图指纹 [2015]
- 六、GGS-NN [2016]
- 七、PATCHY-SAN [2016]
- 八、GraphSAGE [2017]
- 九、GAT [2017]
- 十、R-GCN [2017]
- 十一、 AGCN [2018]
- 十二、FastGCN [2018]
- 十三、PinSage [2018]
- 十四、GCMC [2017]
- 十五、JK-Net [2018]
- 十六、PPNP [2018]
- 十七、VRGCN [2017]
- 十八、ClusterGCN [2019]
- 十九、LDS-GNN [2019]
- 二十、DIAL-GNN [2019]
- 二十一、HAN [2019]
- 二十二、HetGNN [2019]
- 二十三、HGT [2020]
- 二十四、GPT-GNN [2020]
- 二十五、Geom-GCN [2020]
- 二十六、Graph Network [2018]
- 二十七、GIN [2019]
- 二十八、MPNN [2017]
- 二十九、UniMP [2020]
- 三十、Correct and Smooth [2020]
- 三十一、LGCN [2018]
- 三十二、DGCNN [2018]
- 三十三、AS-GCN
- 三十四、DGI [2018]
- 三十五、DIFFPOLL [2018]
- 三十六、DCNN [2016]
- 三十七、IN [2016]
- 图神经网络 2
- 图神经网络 3
- 推荐算法(传统方法)
- 一、Tapestry [1992]
- 二、GroupLens [1994]
- 三、ItemBased CF [2001]
- 四、Amazon I-2-I CF [2003]
- 五、Slope One Rating-Based CF [2005]
- 六、Bipartite Network Projection [2007]
- 七、Implicit Feedback CF [2008]
- 八、PMF [2008]
- 九、SVD++ [2008]
- 十、MMMF 扩展 [2008]
- 十一、OCCF [2008]
- 十二、BPR [2009]
- 十三、MF for RS [2009]
- 十四、 Netflix BellKor Solution [2009]
- 推荐算法(神经网络方法 1)
- 一、MIND [2019](用于召回)
- 二、DNN For YouTube [2016]
- 三、Recommending What Video to Watch Next [2019]
- 四、ESAM [2020]
- 五、Facebook Embedding Based Retrieval [2020](用于检索)
- 六、Airbnb Search Ranking [2018]
- 七、MOBIUS [2019](用于召回)
- 八、TDM [2018](用于检索)
- 九、DR [2020](用于检索)
- 十、JTM [2019](用于检索)
- 十一、Pinterest Recommender System [2017]
- 十二、DLRM [2019]
- 十三、Applying Deep Learning To Airbnb Search [2018]
- 十四、Improving Deep Learning For Airbnb Search [2020]
- 十五、HOP-Rec [2018]
- 十六、NCF [2017]
- 十七、NGCF [2019]
- 十八、LightGCN [2020]
- 十九、Sampling-Bias-Corrected Neural Modeling [2019](检索)
- 二十、EGES [2018](Matching 阶段)
- 二十一、SDM [2019](Matching 阶段)
- 二十二、COLD [2020 ] (Pre-Ranking 模型)
- 二十三、ComiRec [2020](https://www.wenjiangs.com/doc/0b4e1736-ac78)
- 二十四、EdgeRec [2020]
- 二十五、DPSR [2020](检索)
- 二十六、PDN [2021](mathcing)
- 二十七、时空周期兴趣学习网络ST-PIL [2021]
- 推荐算法之序列推荐
- 一、FPMC [2010]
- 二、GRU4Rec [2015]
- 三、HRM [2015]
- 四、DREAM [2016]
- 五、Improved GRU4Rec [2016]
- 六、NARM [2017]
- 七、HRNN [2017]
- 八、RRN [2017]
- 九、Caser [2018]
- 十、p-RNN [2016]
- 十一、GRU4Rec Top-k Gains [2018]
- 十二、SASRec [2018]
- 十三、RUM [2018]
- 十四、SHAN [2018]
- 十五、Phased LSTM [2016]
- 十六、Time-LSTM [2017]
- 十七、STAMP [2018]
- 十八、Latent Cross [2018]
- 十九、CSRM [2019]
- 二十、SR-GNN [2019]
- 二十一、GC-SAN [2019]
- 二十二、BERT4Rec [2019]
- 二十三、MCPRN [2019]
- 二十四、RepeatNet [2019]
- 二十五、LINet(2019)
- 二十六、NextItNet [2019]
- 二十七、GCE-GNN [2020]
- 二十八、LESSR [2020]
- 二十九、HyperRec [2020]
- 三十、DHCN [2021]
- 三十一、TiSASRec [2020]
- 推荐算法(综述)
- 多任务学习
- 系统架构
- 实践方法论
- 深度强化学习 1
- 自动代码生成
工具
- CRF
- lightgbm
- xgboost
- scikit-learn
- spark
- numpy
- matplotlib
- pandas
- huggingface_transformer
- 一、Tokenizer
- 二、Datasets
- 三、Model
- 四、Trainer
- 五、Evaluator
- 六、Pipeline
- 七、Accelerate
- 八、Autoclass
- 九、应用
- 十、Gradio
Scala
- 环境搭建
- 基础知识
- 函数
- 类
- 样例类和模式匹配
- 测试和注解
- 集合 collection(一)
- 集合collection(二)
- 集成 Java
- 并发
二、历史
2.1 历史简介
深度学习分为三个时期:
1940s-1960s
:这时它被称作控制论cybernetics
。1980s-1990s
:这时它被称作连接机制connectionism
。2006--
:这时被称作deep learning
。
深度学习在历史上的不同名字反映了不同的哲学观点。
下图展示了神经网络研究的三个历史浪潮中的两个(因为第三波太近了)。
- 第一波随着生物学习理论的发展和第一个模型的出现(如感知机神经元)。
- 第二波用反向传播训练一层或者两层隐层神经网络。
第一波浪潮:早期的人工智能算法模拟生物的学习过程:对大脑的学习过程建模。
- 此时的深度学习被称作人工神经网络
artificial neural networks:ANNs
, 深度学习模型因此被认为是受生物大脑启发的工程系统。 - 现代的深度学习超越了神经科学的观点:它是一种多层次学习的、通用的机器学习框架,而不必是从神经科学中获取灵感。
- 此时的深度学习被称作人工神经网络
第二波浪潮:连接机制的中心思想是:大量简单的计算单元在连接时可以实现智能行为。
这种观点适用于生物神经系统中的神经元,以及深度网络模型中的隐层神经元。
在连接机制期间,有一些核心思想仍然影响了后续的神经网络:
分布式表达
distributed representation
:系统的每个输入应该由许多特征表示,每个特征描述了输入的一个部分。如一个视觉识别系统可以识别:汽车、卡车、鸟,这些对象可以为红色、蓝色、绿色。
- 表达这些输入的一种方式为:9个神经元分别表示红色卡车、红色汽车、红色鸟、绿色汽车...等等。
- 如果使用分布式表达,则使用6个神经元:3 个神经元来表示卡车、汽车、鸟,另外3个神经元来表示红色、绿色、蓝色。
反向传播算法
back-propagation
:它是当前主要的训练深度模型的算法。long short-term memory:LSTM
网络:它是一种序列模型,解决了许多自然语言处理任务。
第三波浪潮从2006年开始突破。
Geoffrey Hinton
给出了一种称作深度信念网络(deep belief network
),该网络可以使用greedy layer-wise pre-training
策略来有效地训练。
2.2 目前状况
深度学习的成功的关键有两个:
- 训练集大小的增长。
- 硬件和软件的发展。包括更快的
CPU
、通用的GUP
发展、更大内存、更快的网络连接、更好的软件基础。
2.2.1 训练集大小
早期的深度学习需要一些
trick
才能从算法中获得良好的性能。随着训练数据量的增加,所需的trick
在降低。截止2016年,一个粗略的经验法则是:
- 在深度学习的监督学习中要想获取可接受的性能,那么每个分类集合需要大约5000个标记样本。
- 要想匹配甚至超越人类的性能,则训练集至少包含 1000 万个标记样本。
- 对于小于这个数量的数据集,如何获取良好的性能是个重要的研究领域。尤其关注如何使用未标记样本(通过无监督学习或者半监督学习)。
下图显示了
benchmark
数据集大小随时间的变化,这种变化趋势是由于整个社会的数字化的推动。20 世纪初,统计学家使用数百或者数千的人工制作的数据来研究 。
20世纪50年代到80年代,AI 专家采用较小的、合成的数据集(如低分辨率的位图的字母),从而证明神经网络能够完成特定任务。
20世纪80年代到90年代,机器学习本质上更具有统计性。人们开始利用包含成千上万个例子的大数据集,如
MNIST
数据集。21世纪前十年,继续产生了同样大小的更复杂的数据集,如
CIFAR-10
数据集。2010年以来,更大的数据集包含了数十万到数千万的样本,深刻地改变了深度学习的可行性。
神经网络的表现与它的规模和数据量有关。如今在神经网络上获取更好的性能的最可靠的方法就是:训练一个更大的神经网络,以及投入更多的数据。
在大规模数据集上:更大的神经网络表现得更好。它们都优于传统算法。
在小规模的数据集中,各种算法的性能排名事实上不是很确定。
- 如果没有大量的训练集,则最终效果取决于你的特征工程能力,以及在算法细节上的处理上。
- 只有在超大规模的训练集上,神经网络才能占领统治地位。
2.2.2 计算资源
神经网络最近成功的另一个关键原因是:有充足的计算资源来运行更大的模型。
连接主义的主要观点是:单个神经元或者少量的神经元集合没什么用处,只有许多神经元一起工作(更大的模型)才产生智能。
更大的模型有两层含义:单个神经元的连接数量更多、模型的神经元的数量更多。
生物的神经元的连接并不是非常密集。下图给出了一些动物和人的大脑中,每个神经元的连接数量。
早期人工神经元之间的连接数受到硬件能力的限制,今天神经元之间的连接数量多数出于设计考虑。目前一些人工神经网络的单个神经元的连接数量已经和猫相同。
在神经元总量上,早期的神经网络非常的小,直到最近才有较强的改观。
- 自从引入了隐层以来,人工神经网络的大小大约每隔 2.4年翻一番。这种增长是由更大内存、更快的计算机(更快的
CPU
、通用GPU
的出现、更快的网络连接、更好的软件基础)和更大的数据集来驱动的。 - 更大的神经网络能够在更复杂的任务上实现更高的精度。
- 按照目前的趋势,大约2050年人工神经网络将具有与人类大脑相同数量的神经元。但是生物神经元可能拥有比人工神经元更复杂的功能。
- 自从引入了隐层以来,人工神经网络的大小大约每隔 2.4年翻一番。这种增长是由更大内存、更快的计算机(更快的
2.2.3 算法优化
在最近几年,许多算法方面的创新也推动了神经网络的发展。这些算法主要使得神经网络运行的更快。
- 如:激活函数从
sigmoid
转换到ReLU
函数。它使得基于梯度下降的算法运行的更快。 - 快速计算的一个重要作用是:迭代网络的效率更高。
- 如:激活函数从
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论