网易首页 > 网易号 > 正文 申请入驻

AI 科普丨一文说尽深度学习发展历程

0
分享至

转自 python人工智能前沿

本文我们聊一聊深度学习模型的发展历史及原理。

深度学习模型的发展历程是令人震撼的一部波澜壮阔的史诗,其发展历程可以划分为5个重要的阶段,每个阶段都伴随着理论上的突破和技术上的革新,逐步揭开了人工智能世界的神秘面纱。


1. 启蒙时期与早期模型

  • M-P模型:在20世纪40年代,心理学家Warren McCulloch和数学家Walter Pitts提出了M-P模型。这是最早的神经网络模型,基于生物神经元的结构和功能进行建模。M-P模型通过逻辑运算模拟了神经元的激活过程,为后续的神经网络研究奠定了基础。

  • Hebb学习规则:1949年,心理学家Donald Hebb提出了Hebb学习规则,该规则描述了神经元之间连接强度(即权重)的变化规律。Hebb认为,神经元之间的连接强度会随着它们之间的活动同步性而增强,这一规则为后续的神经网络学习算法提供了重要的启示。

2. 感知器时代

  • 感知器模型:在1950年代到1960年代,Frank Rosenblatt提出了感知器模型。感知器是一种简单的神经网络结构,主要用于解决二分类问题。然而,由于其只能处理线性可分问题,对于复杂问题的处理能力有限,导致神经网络研究在一段时间内陷入了停滞。


3. 连接主义与反向传播算法的提出

  • 连接主义:在1960年代末到1970年代,尽管神经网络研究遭遇低谷,但连接主义的概念仍在继续发展。连接主义强调神经元之间的连接和相互作用对神经网络功能的重要性。

  • 反向传播算法:1986年,David Rumelhart、Geoffrey Hinton和Ron Williams等科学家提出了误差反向传播(Backpropagation)算法。这一算法允许神经网络通过调整权重来最小化输出误差,从而有效地训练多层神经网络。反向传播算法的提出标志着神经网络研究的复兴。



4. 深度学习时代的来临

感知机时代,神经网络由于受限于算力而饱受质疑。随着算力、数据、算法迎来了突破,深度学习的时代来了。


  • 多层感知器(MLP):在反向传播算法的推动下,多层感知器(MLP)成为了多层神经网络的代表。MLP具有多个隐藏层,能够学习复杂的非线性映射关系。比如在NLP中,神经网络可以对语义共现关系进行建模,成功地捕获复杂语义依赖

  • 随着计算能力的提升和大数据的普及,基于多层神经网络的深度学习逐渐成为神经网络研究的热点领域。如下示例代码展示,如何通过MLP识别图片(注:MLP通常不是处理图像数据的首选模型,因为卷积神经网络(CNN)在处理图像数据时更为高效和准确。为了简单起见,我们将使用MLP。):


import keras
from keras.datasets import mnist
from keras.models import Sequential
from keras.layers import Dense, Flatten
from keras.utils import to_categorical

# 设置参数
batch_size = 128
num_classes = 10
epochs = 12

# 加载MNIST数据集
(x_train, y_train), (x_test, y_test) = mnist.load_data()

# 数据预处理
x_train = x_train.reshape(60000, 784)
x_test = x_test.reshape(10000, 784)
x_train = x_train.astype('float32')
x_test = x_test.astype('float32')
x_train /= 255
x_test /= 255
y_train = to_categorical(y_train, num_classes)
y_test = to_categorical(y_test, num_classes)

# 构建MLP模型
model = Sequential()
model.add(Dense(512, activation='relu', input_shape=(784,)))
model.add(Dense(512, activation='relu'))
model.add(Dense(num_classes, activation='softmax'))

# 编译模型
model.compile(loss=keras.losses.categorical_crossentropy,
optimizer=keras.optimizers.Adadelta(),
metrics=['accuracy'])

# 训练模型
model.fit(x_train, y_train,
batch_size=batch_size,
epochs=epochs,
verbose=1,
validation_data=(x_test, y_test))

# 评估模型
score = model.evaluate(x_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])

  • 卷积神经网络(CNN)与循环神经网络(RNN):在深度学习时代,卷积神经网络(CNN)和循环神经网络(RNN)等模型得到了广泛应用。CNN特别适用于处理图像数据,而RNN则擅长处理序列数据如文本和语音。这些模型在图像识别、语音识别、自然语言处理等领域取得了显著的成果。

  • 随着研究的深入,神经网络模型不断发展和创新。例如,生成对抗网络(GAN)用于生成逼真的图像和视频;长短时记忆网络(LSTM)解决了传统RNN在处理长序列时的梯度问题;注意力机制(Attention Mechanism)提高了模型对重要信息的关注度;图神经网络(GNN)则用于处理图结构数据等。

5. 大模型时代

大模型基于缩放定律。简单来说就是,随着深度学习模型参数和预训练数据规模的不断增加,模型的能力与任务效果会持续提升,甚至展现出了一些小规模模型所不具备的独特“涌现能力”。

在大模型时代,最具影响力的模型基座无疑就是Transformer和Diffusion Model。基于Transformer的ChatGPT具有革命性的意义,展示了人工智能技术的无限潜力。而基于Diffusion Model的Sora大模型在此惊艳了世人,进入多模态的人工智能时代。


  • Transformer,最初是为自然语言处理任务而设计的,其核心思想是通过自注意力机制捕捉输入序列中的依赖关系。与传统的循环神经网络(RNN)相比,Transformer能够并行处理整个序列,大大提高了计算效率。同时,由于其强大的特征提取能力,Transformer架构作为基础模型,如BERT、GPT等,通过在海量数据上进行训练,获得了强大的通用表示能力,为下游任务提供了高效的解决方案。

  • Diffusion Model是一种基于扩散过程的生成模型,它通过逐步添加噪声到数据中,然后再从噪声中逐步恢复出原始数据,从而实现了对数据分布的高效建模。此外,Diffusion Model还具有很强的可控性,通过调整模型参数,可以控制生成图像的风格、颜色、纹理等特性。这使得Diffusion Model在艺术创作、设计等领域具有广泛的应用前景。


import torch
import torch.nn as nn
import torch.optim as optim
#该示例仅用于说明Transformer的基本结构和原理。实际的Transformer模型(如GPT或BERT)要复杂得多,并且需要更多的预处理步骤,如分词、填充、掩码等。
class Transformer(nn.Module):
def __init__(self, d_model, nhead, num_encoder_layers, num_decoder_layers, dim_feedforward=2048):
super(Transformer, self).__init__()
self.model_type = 'Transformer'

# encoder layers
self.src_mask = None
self.pos_encoder = PositionalEncoding(d_model, max_len=5000)
encoder_layers = nn.TransformerEncoderLayer(d_model, nhead, dim_feedforward)
self.transformer_encoder = nn.TransformerEncoder(encoder_layers, num_encoder_layers)

# decoder layers
decoder_layers = nn.TransformerDecoderLayer(d_model, nhead, dim_feedforward)
self.transformer_decoder = nn.TransformerDecoder(decoder_layers, num_decoder_layers)

# decoder
self.decoder = nn.Linear(d_model, d_model)

self.init_weights()

def init_weights(self):
initrange = 0.1
self.decoder.weight.data.uniform_(-initrange, initrange)

def forward(self, src, tgt, teacher_forcing_ratio=0.5):
batch_size = tgt.size(0)
tgt_len = tgt.size(1)
tgt_vocab_size = self.decoder.out_features

# forward pass through encoder
src = self.pos_encoder(src)
output = self.transformer_encoder(src)

# prepare decoder input with teacher forcing
target_input = tgt[:, :-1].contiguous()
target_input = target_input.view(batch_size * tgt_len, -1)
target_input = torch.autograd.Variable(target_input)

# forward pass through decoder
output2 = self.transformer_decoder(target_input, output)
output2 = output2.view(batch_size, tgt_len, -1)

# generate predictions
prediction = self.decoder(output2)
prediction = prediction.view(batch_size * tgt_len, tgt_vocab_size)

return prediction[:, -1], prediction


class PositionalEncoding(nn.Module):
def __init__(self, d_model, max_len=5000):
super(PositionalEncoding, self).__init__()

# Compute the positional encodings once in log space.
pe = torch.zeros(max_len, d_model)
position = torch.arange(0, max_len).unsqueeze(1).float()
div_term = torch.exp(torch.arange(0, d_model, 2).float() *
-(torch.log(torch.tensor(10000.0)) / d_model))
pe[:, 0::2] = torch.sin(position * div_term)
pe[:, 1::2] = torch.cos(position * div_term)
pe = pe.unsqueeze(0)
self.register_buffer('pe', pe)

def forward(self, x):
x = x + self.pe[:, :x.size(1)]
return x


# 超参数
d_model = 512
nhead = 8
num_encoder_layers = 6
num_decoder_layers = 6
dim_feedforward = 2048

# 实例化模型
model = Transformer(d_model, nhead, num_encoder_layers, num_decoder_layers, dim_feedforward)

# 随机生成数据
src = torch.randn(10, 32, 512)
tgt = torch.randn(10, 32, 512)

# 前向传播
prediction, predictions = model(src, tgt)

小结

当下,大模型时代的神经网络模型往往具有更高的计算复杂度和更大的参数规模。这得益于计算机硬件的不断进步和算法的优化。同时,大规模数据的收集和处理也为这些模型的训练提供了有力支持。然而,大模型也面临着一些挑战,如高质量数据资源不足、计算资源的消耗、模型的泛化能力等问题。

未来的发展中,如何进一步提高大模型的性能并降低其计算成本将是一个重要的研究方向!

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
“会打扮”VS“不会打扮”,终于发现:衣服再多、都不如会搭配!

“会打扮”VS“不会打扮”,终于发现:衣服再多、都不如会搭配!

疯说时尚
2024-11-15 08:00:32
后续!卫生巾全面塌房,网友喊话雷军求帮忙,医用卫生巾遭疯抢

后续!卫生巾全面塌房,网友喊话雷军求帮忙,医用卫生巾遭疯抢

鋭娱之乐
2024-11-22 10:37:15
2.8亿元!南京富家千金买下父亲上市公司股份,家族另有一家公司上市,市值27亿元

2.8亿元!南京富家千金买下父亲上市公司股份,家族另有一家公司上市,市值27亿元

每日经济新闻
2024-11-24 19:05:08
才女张爱玲:任何一个男人接近你,和你聊天,不是为了哄你开心

才女张爱玲:任何一个男人接近你,和你聊天,不是为了哄你开心

清风拂心
2024-11-07 17:21:53
前体操冠军变擦边女网红,被奥运冠军下场怒斥后一天涨粉近70万!

前体操冠军变擦边女网红,被奥运冠军下场怒斥后一天涨粉近70万!

可达鸭面面观
2024-11-23 23:56:20
韩国爱豆自曝饮食日常:早餐一杯茶,披萨只吃馅,饿到睡不着,简直地狱生活....

韩国爱豆自曝饮食日常:早餐一杯茶,披萨只吃馅,饿到睡不着,简直地狱生活....

英国那些事儿
2024-11-23 23:22:32
张雪峰爆本科已饱和的七大专业,经历过的人在哭,没经历的人想学

张雪峰爆本科已饱和的七大专业,经历过的人在哭,没经历的人想学

拾月热
2024-10-25 12:00:02
“80后”蒋毅,任厅长

“80后”蒋毅,任厅长

新京报政事儿
2024-11-23 18:32:09
王文澜:我没有弃养生病的儿子,前妻倪萍依旧是我的挚爱

王文澜:我没有弃养生病的儿子,前妻倪萍依旧是我的挚爱

趣谈人物纪
2024-11-22 18:00:03
感觉麦琳对杨子的爱都要溢出来了!被网友评论区笑死!

感觉麦琳对杨子的爱都要溢出来了!被网友评论区笑死!

圈里的甜橙子
2024-11-24 18:32:55
医生研究发现:经常吃苹果的人,不出5个月,身体或出现3个变化

医生研究发现:经常吃苹果的人,不出5个月,身体或出现3个变化

荷兰豆爱健康
2024-11-13 19:14:31
宿迁儿童医院约4.8亿元拍卖在即!专家:医院应实施战略调整,勿盲目扩张

宿迁儿童医院约4.8亿元拍卖在即!专家:医院应实施战略调整,勿盲目扩张

红星资本局
2024-11-24 18:47:05
4—0!王楚钦为何横扫张本,被打10—0,谁注意张本父亲反应

4—0!王楚钦为何横扫张本,被打10—0,谁注意张本父亲反应

保持热爱0263
2024-11-24 16:03:30
真正的危机,比你想象的更严峻

真正的危机,比你想象的更严峻

十分心理
2024-11-13 23:04:03
黄圣依在节目中的素颜状态,真是让人惊叹她颜值的抗打能力。

黄圣依在节目中的素颜状态,真是让人惊叹她颜值的抗打能力。

娱乐的小灶
2024-11-24 18:55:47
刘亦菲私下里真是个素颜爱好者,每次出门几乎都是纯素颜。

刘亦菲私下里真是个素颜爱好者,每次出门几乎都是纯素颜。

人情皆文史
2024-10-12 21:00:30
故意冲撞石山舰!中国海警通报:抓获违法嫌疑人17名

故意冲撞石山舰!中国海警通报:抓获违法嫌疑人17名

极目新闻
2024-11-23 21:05:39
微信突然更新,界面进行调整!

微信突然更新,界面进行调整!

全是技能
2024-11-24 10:21:43
8000毫安电池,明年手机才是真香机,充电宝都不好卖了!

8000毫安电池,明年手机才是真香机,充电宝都不好卖了!

玩机小子
2024-11-24 11:58:35
湖人102-127掘金!无奈不是惨败,是雷迪克这话,詹姆斯心气没了

湖人102-127掘金!无奈不是惨败,是雷迪克这话,詹姆斯心气没了

巴叔GO聊体育
2024-11-24 15:01:56
2024-11-25 00:15:00
中国人工智能学会
中国人工智能学会
中国人工智能学会网易官方账号
2991文章数 1462关注度
往期回顾 全部

科技要闻

“这是中国的非凡机遇,德日远远落后了”

头条要闻

媒体:特朗普点将完毕 对华政策方面其团队群"鹰"荟萃

头条要闻

媒体:特朗普点将完毕 对华政策方面其团队群"鹰"荟萃

体育要闻

卡文迪什:公路自行车传奇谢幕

娱乐要闻

窦靖童演唱会:王菲助阵,谢霆锋助唱

财经要闻

特朗普任免对市场有何影响?券商研判

汽车要闻

尊界S800首张官图发布 双色车身"尊的"很亮

态度原创

房产
手机
游戏
公开课
军事航空

房产要闻

丁村迎来大动作!首宗、百亩城更宅地挂出!楼面价2367元/㎡!

手机要闻

小米15 Ultra:明年一月发布!小米15S系列:先等一等!

传《女神异闻录6》开发完成 已进入本地化阶段

公开课

一块玻璃,如何改变人类世界?

军事要闻

泽连斯基:俄乌冲突完全有可能在2025年结束

无障碍浏览 进入关怀版