Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шолле Ф. - Глубокое обучение на Python (Библиотека программиста) - 2023.pdf
Скачиваний:
4
Добавлен:
07.04.2024
Размер:
11.34 Mб
Скачать

540    Глава 14. Заключение

Для.обработки.единственной.последовательности.(или.набора).векторов.используется.только.TransformerEncoder.

Ниже.приводится.пример.модели.Transformer.для.преобразования.последовательности.в.последовательность,.которая.отображает.исходную.последовательность.в.целевую.(эта.конфигурация.может.использоваться,.например,.для. машинного.перевода.или.выбора.ответов.на.вопросы):

 

Исходная последовательность

 

 

 

encoder_inputs = keras.Input(shape=(sequence_length,), dtype="int64")

 

 

 

 

x = PositionalEmbedding(

Целевая последовательность

 

 

sequence_length, vocab_size, embed_dim)(encoder_inputs)

в настоящий момент

 

encoder_outputs = TransformerEncoder(embed_dim, dense_dim, num_heads)(x)

 

decoder_inputs = keras.Input(shape=(None,), dtype="int64")

 

 

 

 

 

 

x = PositionalEmbedding(

Целевая последовательность

sequence_length, vocab_size, embed_dim)(decoder_inputs) на один шаг вперед в будущем x = TransformerDecoder(embed_dim, dense_dim, num_heads)(x, encoder_outputs) decoder_outputs = layers.Dense(vocab_size, activation="softmax")(x) transformer = keras.Model([encoder_inputs, decoder_inputs], decoder_outputs) transformer.compile(optimizer="rmsprop", loss="categorical_crossentropy")

А.вот.одиночный.кодировщик.TransformerEncoder.для.бинарной.классификации. целочисленных.последовательностей:

inputs = keras.Input(shape=(sequence_length,), dtype="int64")

x = PositionalEmbedding(sequence_length, vocab_size, embed_dim)(inputs) x = TransformerEncoder(embed_dim, dense_dim, num_heads)(x)

x = layers.GlobalMaxPooling1D()(x)

outputs = layers.Dense(1, activation="sigmoid")(x) model = keras.Model(inputs, outputs)

model.compile(optimizer="rmsprop", loss="binary_crossentropy")

Полные.реализации.слоев.TransformerEncoder,.TransformerDecoder .и.Posi­ tionalEmbedding .представлены.в.главе.11.

14.1.7. Пространство возможностей

Что.можно.построить,.использовав.приемы.глубокого.обучения?.Помните,. что.конструирование.моделей.глубокого.обучения.напоминает.игру.с.конструктором .лего: .слои .можно .подключать .друг .к .другу .для .отображения. практически.всего.что.угодно.при.наличии.подходящего.набора.обучающих. данных.и.возможности.получения.отображения.с.помощью.последовательности. геометрических.преобразований.с.разумной.сложностью..Пространство.возможностей.бесконечно..В.этом.разделе.демонстрируется.несколько.примеров,. чтобы.показать,.что.глубокое.обучение.позволяет.решать.не.только.задачи. классификации.и.регрессии,.которые.традиционно.были.хлебом.насущным. для.машинного.обучения.

14.1. Краткий обзор ключевых понятий    541

Я.отсортировал.предлагаемые.мною.примеры.применения.по.модальностям. входов.и.выходов..Обратите.внимание.на.то,.что.некоторые.из.них.расширяют. рамки.возможного:.хотя.можно.обучить.модель.на.всех.этих.задачах,.в.некоторых. случаях.такая.модель,.вероятно,.не.сможет.обеспечить.обобщение.за.границами.круга.обучающих.данных..В.разделах.с.14.2.по.14.4.рассказывается,.как.эти. ограничения.могут.быть.сняты.в.будущем.

.Отображение.вектора.данных.в.вектор.данных:

. прогнозное здравоохранение.—.предсказание.результатов.лечения.по.ме- дицинским.картам.пациентов;

. анализ поведения.—.предсказание.продолжительности.пребывания.поль- зователя.на.веб-сайте.по.множеству.атрибутов.этого.сайта;

. контроль качества продукции.—.предсказание.по.множеству.атрибутов. экземпляра.произведенного.продукта.вероятности.того,.что.он.перестанет. пользоваться.спросом.в.будущем.году.

.Отображение.изображения.в.вектор.данных:

. помощник доктора .—.предсказание.наличия.опухоли.по.медицинским. фотографиям;

. транспорт с автоматическим управлением — определение.угла.поворота. рулевых.колес.по.кадрам,.поступающим.с.видеокамеры,.а.также.управление.акселератором.и.тормозом;

. настольные игры с ИИ.—.предсказание.следующего.хода.игрока.по.рас- положению.фигур.на.шахматной.доске.или.камней.на.доске.го;

. помощник диетолога.—.предсказание.калорийности.блюда.по.его.изо- бражению;

. предсказание возраста.—.определение.возраста.людей.по.их.автопортре- там.(селфи).

.Отображение.временных.последовательностей.в.вектор.данных:

. прогноз погоды.—.прогноз.погоды.на.следующую.неделю.в.определенном. местоположении.по.временным.последовательностям.метеорологических. данных;

. интерфейс «мозг — компьютер».—.отображение.временных.последователь- ностей.данных.магнитной.энцефалограммы.в.команды.для.компьютера;

. анализ поведения .—.определение.вероятности.того,.что.пользователь. купит.что-то,.по.временной.последовательности.взаимодействий.его. с.веб-сайтом.

.Отображение.текста.в.текст:

. машинный перевод.—.отображение.абзаца.текста.на.одном.языке.в.перевод. на.другом.языке;