def render(self, is_lock): bimpy.indent(10) bimpy.text('- Plane') bimpy.same_line() bimpy_tools.help_marker( 'generate with random points\n' \ '* plane random: random on whole plane\n' \ '* balanced random: balanced positive and negative samples' ) bimpy.push_item_width(140) if bimpy.begin_combo('strategy##plane_random_generator', self._select_strategy): for item in self._strategy_list: is_selected = bimpy.Bool(self._select_strategy == item) if bimpy.selectable(item, is_selected) and not is_lock: self._select_strategy = item if is_selected.value: bimpy.set_item_default_focus() bimpy.end_combo() bimpy.pop_item_width() bimpy.unindent(10)
def render(self, is_lock): bimpy.indent(10) bimpy.text('- SGD') bimpy.same_line() bimpy_tools.help_marker('torch.optim.SGD') flags = bimpy.InputTextFlags.EnterReturnsTrue if is_lock: flags |= bimpy.InputTextFlags.ReadOnly bimpy.push_item_width(120) if bimpy.input_float('lr##sgd_optimizer', self._lr, flags=flags): self._lr.value = max(0.0, self._lr.value) if bimpy.input_float('momentum##sgd_optimizer', self._momentum, flags=flags): self._momentum.value = max(0.0, self._momentum.value) if bimpy.input_float('dampening##sgd_optimizer', self._dampening, flags=flags): self._dampening.value = max(0.0, self._dampening.value) if bimpy.input_float('weight_decay##sgd_optimizer', self._weight_decay, flags=flags): self._weight_decay.value = max(0.0, self._weight_decay.value) if bimpy.checkbox('nesterov##sgd_optimizer', self._nesterov): self._hint_nesterov = False if self._nesterov.value: if self._momentum.value == 0 or self._dampening.value > 0: self._nesterov.value = False self._hint_nesterov = True bimpy.same_line() bimpy_tools.help_marker( 'Nesterov momentum requires a momentum and zero dampening', self._hint_nesterov) bimpy.pop_item_width() bimpy.unindent(10)
def render(self, is_lock): bimpy.indent(10) bimpy.text('- Linear layer init') bimpy.same_line() bimpy_tools.help_marker( 'Initializer used in torch.nn.Linear, use Kaiming uniform') bimpy.push_item_width(120) flags = bimpy.InputTextFlags.EnterReturnsTrue if is_lock: flags |= bimpy.InputTextFlags.ReadOnly if bimpy.input_float('a##sgd_optimizer', self._a, flags=flags): self._a.value = max(0.0, self._a.value) if bimpy.begin_combo('mode##linear_layer_init', self._select_mode): for item in self._mode_list: is_selected = bimpy.Bool(self._select_mode == item) if bimpy.selectable(item, is_selected) and not is_lock: self._select_mode = item if is_selected.value: bimpy.set_item_default_focus() bimpy.end_combo() if bimpy.begin_combo('nonlinearity##linear_layer_init', self._select_nonlinearity): for item in self._nonlinearity_list: is_selected = bimpy.Bool(self._select_nonlinearity == item) if bimpy.selectable(item, is_selected) and not is_lock: self._select_nonlinearity = item if is_selected.value: bimpy.set_item_default_focus() bimpy.end_combo() bimpy.pop_item_width() bimpy.unindent(10)
def render(self, is_lock): bimpy.indent(10) bimpy.text('- MSE loss') bimpy.same_line() bimpy_tools.help_marker('torch.nn.MSELoss') bimpy.push_item_width(120) if bimpy.begin_combo('reduction##mse_loss_fn', self._select_redution): for item in self._reduction_list: is_selected = bimpy.Bool(self._select_redution == item) if bimpy.selectable(item, is_selected) and not is_lock: self._select_redution = item if is_selected.value: bimpy.set_item_default_focus() bimpy.end_combo() bimpy.pop_item_width() bimpy.unindent(10)
def render(self, is_lock): bimpy.indent(10) bimpy.text('- Adam') bimpy.same_line() bimpy_tools.help_marker('torch.optim.Adam') flags = bimpy.InputTextFlags.EnterReturnsTrue if is_lock: flags |= bimpy.InputTextFlags.ReadOnly bimpy.push_item_width(140) if bimpy.input_float('lr##adam_optimizer', self._lr, flags=flags): self._lr.value = max(0.0, self._lr.value) if bimpy.input_float2('momentum##adam_optimizer', self._betas_first, self._betas_second, flags=flags): self._betas_first.value = max(0.0, self._betas_first.value) self._betas_second.value = max(0.0, self._betas_second.value) if bimpy.input_float('eps##adam_optimizer', self._eps, decimal_precision=8, flags=flags): self._dampening.value = max(0.0, self._eps.value) if bimpy.input_float('weight_decay##adam_optimizer', self._weight_decay, flags=flags): self._weight_decay.value = max(0.0, self._weight_decay.value) bimpy.checkbox('amsgrad##adam_optimizer', self._amsgrad) bimpy.pop_item_width() bimpy.unindent(10)
def render(self, is_lock): bimpy.indent(10) bimpy.text('- Raw Point') bimpy.same_line() bimpy_tools.help_marker('generate with raw points') bimpy.push_item_width(120) if bimpy.begin_combo('strategy##raw_point_generator', self._select_strategy): for item in self._strategy_list: is_selected = bimpy.Bool(self._select_strategy == item) if bimpy.selectable(item, is_selected) and not is_lock: self._select_strategy = item if is_selected.value: bimpy.set_item_default_focus() bimpy.end_combo() bimpy.pop_item_width() bimpy.unindent(10)
while not ctx.should_close(): with ctx: chinese = u"學而不思則罔,思而不學則殆。" japanese = u"二兎を追う者は一兎をも得ず。 " hiragana = u"あ い う え お か き く け こ さ し す せ そ が ぎ ぐ げ ご ぱ ぴ ぷ ぺ ぽ" katakana = u"ア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ ガ ギ グ ゲ ゴ パ ピ プ ペ ポ" kanji = "川 月 木 心 火 左 北 今 名 美 見 外 成 空 明 静 海 雲 新 語 道 聞 強 飛" ukrainian = "Садок вишневий коло хати,\nХрущі над вишнями гудуть,\nПлугатарі з плугами йдуть,\nСпівають ідучи дівчата,\nА матері вечерять ждуть." polish = "Hej, tam gdzieś z nad czarnej wody\nWsiada na koń kozak młody.\nCzule żegna się z dziewczyną,\nJeszcze czulej z Ukrainą." russian = "Ночь, улица, фонарь, аптека,\nБессмысленный и тусклый свет.\nЖиви ещё хоть четверть века -\nВсё будет так. Исхода нет." bp.text('Chinese:') bp.indent() bp.text(chinese) bp.unindent() bp.text('Japanese:') bp.indent() bp.text(japanese) bp.bullet_text("hiragana: " + hiragana) bp.bullet_text("katakana: " + katakana) bp.bullet_text("kanji: " + kanji) bp.unindent() bp.separator() bp.text('Ukrainian:') bp.indent() bp.text(ukrainian) bp.unindent() bp.separator()