Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update constraints.md #202

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 15 additions & 15 deletions sources/constraints.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
## 제약의 사용법
## 제약의 사용법<sub>Usage of constraints</sub>

`constraints` 모듈의 함수는 최적화 과정에서 네트워크 매개변수에 제약(예시. 비음수)을 설정할 수 있도록 합니다.
`constraints` 모듈의 함수는 최적화 과정에서 네트워크 매개변수<sub>parameter</sub>에 제약(예시. 음수가 되지 않도록 하기)을 설정할 수 있도록 합니다.

페널티는 각 레이어 별로 적용됩니다. API의 구체사항은 레이어마다 다를 수 있지만, `Dense`, `Conv1D`, `Conv2D` 그리고 `Conv3D` 레이어는 통일된 API를 가집니다.
페널티는 각 층<sub>layer</sub> 별로 적용됩니다. API의 구체사항은 층마다 다를 수 있지만, `Dense`, `Conv1D`, `Conv2D` 그리고 `Conv3D` 층은 통일된 API를 가집니다.

이러한 레이어들은 2가지 키워드 인수를 노출합니다:
이러한 층들은 2가지 키워드 인수를 노출합니다:

- 주요 가중치 행렬에 대한 `kernel_constraint`
- 편향에 대한 `bias_constraint`
Expand All @@ -17,7 +17,7 @@ model.add(Dense(64, kernel_constraint=max_norm(2.)))

---

## 사용가능한 제약
## 사용가능한 제약<sub>Available constraints</sub>

<span style="float:right;">[[source]](https://github.com/keras-team/keras/blob/master/keras/constraints.py#L22)</span>
### MaxNorm
Expand All @@ -28,18 +28,18 @@ keras.constraints.MaxNorm(max_value=2, axis=0)

MaxNorm 가중치 제약.

히든 레이어에 대응하는 가중치를 제약해서
은닉층<sub>hidden layer</sub>에 대응하는 가중치를 제약해서
가중치의 노름이 특정 값 이하가 되도록 합니다.

__인수__

- __max_value__: 입력 가중치의 최대 노름
- __axis__: 정수, 가중치 노름을 계산할 축.
예를 들어, 어느 `Dense` 레이어의 가중치 행렬이
예를 들어, 어느 `Dense` 층의 가중치 행렬이
`(input_dim, output_dim)`의 형태를 취할 때,
`axis`를 `0`으로 설정해서 `(input_dim,)`의 길이를 갖는
각 가중치 벡터를 제약할 수 있습니다.
`data_format="channels_last"`의 데이터 포맷을 갖는 `Conv2D`레이어의 경우,
`data_format="channels_last"`의 데이터 포맷을 갖는 `Conv2D`층의 경우,
가중치 텐서는
`(rows, cols, input_depth, output_depth)`의 형태를 가지며,
`axis`를 `[0, 1, 2]`로 설정하여
Expand All @@ -60,7 +60,7 @@ __참고__
keras.constraints.NonNeg()
```

가중치가 비음수가 되도록 제약합니다.
가중치가 음수가 되지 않도록 제약합니다.

----

Expand All @@ -71,16 +71,16 @@ keras.constraints.NonNeg()
keras.constraints.UnitNorm(axis=0)
```

히든 레이어 유닛에 대응하는 가중치가 단위 노름을 가지도록 제약합니다.
은닉 유닛<sub>hidden unit</sub>에 대응하는 가중치가 단위 노름을 가지도록 제약합니다.

__인수__

- __axis__: 정수,가중치 노름을 계산할 축.
예를 들어, 어느 `Dense` 레이어의 가중치 행렬이
예를 들어, 어느 `Dense` 층의 가중치 행렬이
`(input_dim, output_dim)`의 형태를 취할 때,
`axis`를 `0`으로 설정해서 `(input_dim,)`의 길이를 갖는
각 가중치 벡터를 제약할 수 있습니다.
`data_format='channels_last'`의 데이터 포맷을 갖는 `Conv2D`레이어의 경우,
`data_format='channels_last'`의 데이터 포맷을 갖는 `Conv2D`층의 경우,
가중치 텐서는
`(rows, cols, input_depth, output_depth)`의 형태를 가지며,
`axis`를 `[0, 1, 2]`로 설정하여
Expand All @@ -98,7 +98,7 @@ keras.constraints.MinMaxNorm(min_value=0.0, max_value=1.0, rate=1.0, axis=0)

MinMaxNorm 가중치 제약.

히든 레이어에 대응하는 가중치를 제약해서
은닉층에 대응하는 가중치를 제약해서
가중치의 노름이 상한과 하한 사이의 값을 가지도록 합니다.

__인수__
Expand All @@ -113,11 +113,11 @@ __인수__
매 단계마다 가중치가 리스케일되어
원하는 간격 사이의 값에 천천히 가까워지도록 함을 말합니다.
- __axis__: 정수, 가중치 노름을 계산할 축.
예를 들어, 어느 `Dense` 레이어의 가중치 행렬이
예를 들어, 어느 `Dense` 층의 가중치 행렬이
`(input_dim, output_dim)`의 형태를 취할 때,
`axis`를 `0`으로 설정해서 `(input_dim,)`의 길이를 갖는
각 가중치 벡터를 제약할 수 있습니다.
`data_format='channels_last'`의 데이터 포맷을 갖는 `Conv2D`레이어의 경우,
`data_format='channels_last'`의 데이터 포맷을 갖는 `Conv2D`층의 경우,
가중치 텐서는
`(rows, cols, input_depth, output_depth)`의 형태를 가지며,
`axis`를 `[0, 1, 2]`로 설정하여
Expand Down