

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 飛輪反覆運算
<a name="flywheels-iterate"></a>

使用飛輪反覆運算來協助您建立和管理新的模型版本。

**Topics**
+ [

## 反覆運算工作流程
](#flywheels-iterate-flow)
+ [

## 管理反覆運算 （主控台）
](#flywheels-iterate-console)
+ [

## 管理反覆運算 (API)
](#flywheels-iterate-api)

## 反覆運算工作流程
<a name="flywheels-iterate-flow"></a>

飛輪從訓練過的模型版本開始，或使用初始資料集來訓練模型版本。

隨著時間的推移，當您取得新的標記資料時，您會訓練新的模型版本來改善飛輪模型的效能。當您執行飛輪時，它會建立新的反覆運算，以訓練和評估新的模型版本。如果新模型版本的效能優於現有的作用中模型版本，您可以提升新模型版本。

飛輪反覆運算工作流程包含下列步驟：

1. 您可以為新標記的資料建立資料集。

1. 您可以執行飛輪來建立新的反覆運算。反覆運算會遵循下列步驟來訓練和評估新的模型版本：

   1. 使用新資料評估作用中模型版本。

   1. 使用新資料訓練新的模型版本。

   1. 將評估和訓練結果存放在資料湖中。

   1. 傳回兩個模型的 F1 分數。

1. 反覆運算完成後，您可以比較現有作用中模型和新模型的 F1 分數。

1. 如果新模型版本具有卓越的效能，您可以將其提升為作用中模型版本。您可以使用 [主控台](#flywheels-iterate-console-promote)或 [ API](#flywheels-iterate-console-promote) 來提升新的模型版本。

## 管理反覆運算 （主控台）
<a name="flywheels-iterate-console"></a>

您可以使用 主控台來啟動新的反覆運算，並查詢進行中反覆運算的狀態。您也可以檢視已完成反覆運算的結果。

### 啟動飛輪反覆運算 （主控台）
<a name="flywheels-iterate-console-start"></a>

在開始新的反覆運算之前，請先建立一或多個新的訓練或測試資料集。請參閱 [設定資料集](datasets-config.md)

**啟動飛輪反覆運算 （主控台）**

1. 登入 AWS 管理主控台 並開啟 [Amazon Comprehend 主控台](https://console.aws.amazon.com/comprehend/)。

1. 從左側選單中，選擇**飛輪**。

1. 從**飛輪**表格中，選擇飛輪。

1. 選擇**執行飛輪**。

### 分析反覆運算結果 （主控台）
<a name="flywheels-iterate-console-analyze"></a>

執行飛輪反覆運算後，主控台會在**飛輪反覆運算**表中顯示結果。

### 提升新的模型版本 （主控台）
<a name="flywheels-iterate-console-promote"></a>

從 主控台的模型詳細資訊頁面，您可以將新的模型版本提升為作用中的模型版本。

**將飛輪模型版本提升為作用中模型版本 （主控台）**

1. 登入 AWS 管理主控台 並開啟 [Amazon Comprehend 主控台](https://console.aws.amazon.com/comprehend/)。

1. 從左側選單中，選擇**飛輪**。

1. 從**飛輪**表格中，選擇飛輪。

1. 從**飛輪詳細資訊頁面**表格中，從**飛輪反覆運算**表格中選擇要提升的版本。

1. 選擇**建立作用中模型**。

## 管理反覆運算 (API)
<a name="flywheels-iterate-api"></a>

您可以使用 Amazon Comprehend API 開始新的反覆運算，並查詢進行中反覆運算的狀態。您也可以檢視已完成反覆運算的結果。

### 啟動飛輪反覆運算 (API)
<a name="flywheels-iterate-api-start"></a>

使用 Amazon Comprehend [StartFlywheelIteration](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_StartFlywheelIteration.html) 操作來啟動飛輪反覆運算。

```
aws comprehend start-flywheel-iteration \
    --flywheel-arn  "flywheelArn"
```

回應包含下列內容。

```
{
  "FlywheelIterationArn": "arn:aws::comprehend:aws-region:111122223333:flywheel/name"
}
```

### 提升新的模型版本 (API)
<a name="flywheels-iterate-api-promote"></a>

使用 [UpdateFlywheel](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_UpdateFlywheel.html) 操作將模型版本提升為作用中模型版本。

使用 `ActiveModelArn` 參數集將`UpdateFlywheel`請求傳送至新的作用中模型版本的 ARN。

```
aws comprehend update-flywheel \
    --active-model-arn  "modelArn" \
```

回應包含下列內容。

```
{
  "FlywheelArn": "arn:aws::comprehend:aws-region:111122223333:flywheel/name",
  "ActiveModelArn": "modelArn"
}
```

### 描述飛輪反覆運算結果 (API)
<a name="flywheels-iterate-api-analyze"></a>

Amazon Comprehend [DescribeFlywheelIteration](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_DescribeFlywheelIteration.html) 操作會在執行至完成時傳回反覆運算的相關資訊。

```
aws comprehend describe-flywheel-iteration \
	--flywheel-arn "flywheelArn" \
	--flywheel-iteration-id  "flywheelIterationId" \
	--region aws-region
```

回應包含後續內容。

```
{
    "FlywheelIterationProperties": {
        "FlywheelArn": "flywheelArn",
        "FlywheelIterationId": "iterationId",
        "CreationTime": <createdAt>,
        "EndTime": <endedAt>,
        "Status": <status>,
        "Message": <message>,
        "EvaluatedModelArn": "modelArn",
        "EvaluatedModelMetrics": {
            "AverageF1Score": <value>,
            "AveragePrecision": <value>,
            "AverageRecall": <value>,
            "AverageAccuracy": <value>
        },
        "TrainedModelArn": "modelArn",
        "TrainedModelMetrics": {
            "AverageF1Score": <value>,
            "AveragePrecision": <value>,
            "AverageRecall": <value>,
            "AverageAccuracy": <value>
        }
    }
}
```

### 取得反覆運算歷史記錄 (API)
<a name="flywheels-iterate-api-history"></a>

使用 [ListFlywheelIterationHistory](https://docs.aws.amazon.com/comprehend/latest/APIReference/API_ListFlywheelIterationHistory.html) 操作取得反覆運算歷史記錄的相關資訊。

```
aws comprehend list-flywheel-iteration-history \
	--flywheel-arn "flywheelArn"
```

回應包含後續內容。

```
{
    "FlywheelIterationPropertiesList": [
        {
            "FlywheelArn": "<flywheelArn>",
            "FlywheelIterationId": "20220907T214613Z",
            "CreationTime": 1662587173.224,
            "EndTime": 1662592043.02,
            "Status": "<status>",
            "Message": "<message>",
            "EvaluatedModelArn": "modelArn",
            "EvaluatedModelMetrics": {
                "AverageF1Score": 0.8333333333333333,
                "AveragePrecision": 0.75,
                "AverageRecall": 0.9375,
                "AverageAccuracy": 0.8125
            },
            "TrainedModelArn": "modelArn",
            "TrainedModelMetrics": {
                "AverageF1Score": 0.865497076023392,
                "AveragePrecision": 0.7636363636363637,
                "AverageRecall": 1.0,
                "AverageAccuracy": 0.84375
            }
        }
    ]
}
```