Skip to content

Commit 7f5a3cc

Browse files
Update development_flow.md
1 parent d0d54b8 commit 7f5a3cc

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

doc/devdoc/development_flow.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,11 @@
3434

3535
1. `__init__`, `set_`, `get_`関数を実装する
3636
* `__init__`には
37-
* `c_`で始まる変数についてはデフォルト値を設定せず,入力を必須にする.
37+
* `c_`で始まる変数のうち,他の変数と関連する値(次元等)についてはデフォルト値を設定せず,入力を必須にする.
3838
* `c_`で始まる変数を用いてパラメータ,ハイパーパラメータの配列サイズを決める.
3939
* その後,`set_params``set_h_params`を呼ぶ.
4040
* `set_`関数では入力されたパラメータが正しい集合に属しているか(上記のベルヌーイ分布なら$p \in [0, 1]$を満たすかどうか等)を判定する関数を実装する.
41+
* 必ず値渡しで変数値を更新し,なおかつ可能な限りin-placeな処理を実現する.
4142
* `c_`で始まる変数は変更しなくてよく,それに整合しない場合はエラーを返す.
4243
* 他の変数と独立にその変数が正しいか判定する関数は`bayesml/_check.py`に整理してある.もしそこに見つからない場合は後の人も使えるように`bayesml/_check.py`に追記しておく.ただし,その際は`develop-check`ブランチ上で追記し,中原のチェックを受けてから自分の作業ブランチにマージするようにする.
4344
* 複数の変数の次元の整合性についてはブロードキャストできるかどうかで判定できる部分はそれに任せる.明示的に次元をそろえたい場合は`bayesml/_check.py``shape_consistency`で確認する.使用例は`bayesml/gaussianmixture/_gaussianmixture.py`を参照
@@ -51,10 +52,11 @@
5152

5253
1. `__init__`, `set_`, `get_`, 関数を実装する
5354
* `__init__`には
54-
* `c_`で始まる変数についてはデフォルト値を設定せず,入力を必須にする.
55+
* `c_`で始まる変数のうち,他の変数と関連する値(次元等)についてはデフォルト値を設定せず,入力を必須にする.
5556
* `c_`で始まる変数を用いてパラメータ,ハイパーパラメータの配列サイズを決める.
5657
* その後,`set_h0_params`を呼ぶ.
5758
* `set_`関数では入力されたパラメータが正しい集合に属しているか(上記のベルヌーイ分布なら$p \in [0, 1]$を満たすかどうか等)を判定する関数を実装する.
59+
* 必ず値渡しで変数値を更新し,なおかつ可能な限りin-placeな処理を実現する.
5860
* `c_`で始まる変数は変更しなくてよく,それに整合しない場合はエラーを返す.
5961
* 他の変数と独立にその変数が正しいか判定する関数は`bayesml/_check.py`に整理してある.もしそこに見つからない場合は後の人も使えるように`bayesml/_check.py`に追記しておく.ただし,その際は`develop-check`ブランチ上で追記し,中原のチェックを受けてから自分の作業ブランチにマージするようにする.
6062
* 複数の変数の次元の整合性についてはブロードキャストできるかどうかで判定できる部分はそれに任せる.明示的に次元をそろえたい場合は`bayesml/_check.py``shape_consistency`で確認する.使用例は`bayesml/gaussianmixture/_gaussianmixture.py`を参照

0 commit comments

Comments
 (0)