#1989 ์์
์์ @freddyaboulton ์ TargetImputer
๋ฅผ SimpleImputer
์ ํ์ ํด๋์ค๋ก ๋ง๋ค ๊ฒ์ ์ ์ํ์ต๋๋ค. ๋ถํํ๋ _get_subclasses
์์ ์คํ ๊ฐ๋ฅํ ๊ตฌ์ฑ ์์๋ฅผ ์ฐพ์ ๋ _get_subclasses
๋ ๊ณ์ธต ๊ตฌ์กฐ์ ๋งจ ์๋์์๋ ํด๋์ค ๋ง ์์งํฉ๋๋ค. ์:
ComponentBase --> Transformer --> SimpleImputer # will only grab SimpleImputer
๋ฌธ์ ๋ SimpleImputer๋ฅผ ํ์ ํด๋์ค๋ก ๋ถ๋ฅํ๋ฉด TargetImputer์ ์ก์ธ์ค ํ ์ ์์ง๋ง EvalML์์ ๋ ์ด์ ์ฌ์ฉ ๊ฐ๋ฅํ ๊ตฌ์ฑ ์์๋ก SimpleImputer
๋ฅผ ์ฐพ์ ์ ์๋ค๋ ๊ฒ์
๋๋ค.
ComponentBase --> Transformer --> SimpleImputer --> TargetImputer
# will only grab TargetImputer, SimpleImputer is no longer a leaf
์๋ ์๋๋ ์ ์ฉํ์ง ์์ ํด๋์ค (์ : Transformer)๋ฅผ ๊ฐ์ ธ ์ค์ง ์๋ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์ง๋ง, ์ ์ฉํ ๊ตฌ์ฑ ์์๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์๋ก์ด ๊ตฌ์ฑ ์์๋ฅผ ์์ฑํ๋ ค๋ ๊ฒฝ์ฐ ๋ฌธ์ ๊ฐ๋ฉ๋๋ค.
์ฌ๊ธฐ์ ์๋ ์๊ฒฌ: https://github.com/alteryx/evalml/pull/1989#discussion_r599894996
์ต์
:
1.) TargetImputer๊ฐ SimpleImputer๋ฅผ ์ฌ์ฉํ๋๋ก ํฉ๋๋ค.
2.) TargetImputer ๊ตฌ์ฑ ์์๋ฅผ ์ ์ํ์ง ๋ง๊ณ ๋์ SimpleImputer๋ฅผ ๋์์ ์ ์ฉํ์ญ์์ค.
3.) ์ ์ ๊ตฌ์ฑ ์์ ๋ชฉ๋ก์ ์ํด _get_subclasses ()๋ฅผ ์ญ์ ํฉ๋๋ค. (์ ํธ)
4.) _get_subclasses()๋ฅผ ๋ ๋๋ํ๊ฒ ๋ง๋ญ๋๋ค.
๋ค์ ๋จ๊ณ: ์ด ์์ ์ ์ํํ๋ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํ๊ธฐ ์ํด ํ ๋ก ์ผ์ ์ ์ก์ต๋๋ค.
๋ด ์๊ฒฌ์ ์ฐ๋ฆฌ๊ฐ ์ฝ๋๋ฒ ์ด์ค์์ ๊ธฐ๋ณธ์ด ์๋ ํด๋์ค์ ์์์ ๋ณด๋ค ์ผ๋ฐ์ ์ธ ํจํด์ผ๋ก ๋ง๋ค๊ณ ์ถ์ง ์๋ค๋ฉด ์๋ฌด๊ฒ๋ ๋ณ๊ฒฝํด์๋ ์ ๋๋ค๋ ๊ฒ์ ๋๋ค. ์ฐ๋ฆฌ๋ ํ์ฌ ๊ทธ๋ ๊ฒ ํ์ง ์๊ธฐ ๋๋ฌธ์ ๊ทธ๊ฒ์ ํ์ฉํ๋ ์์คํ ์ ๊ตฌ์ถํ๋ ๊ฒ์ ๋์๊ฒ ๋ฎ์ ์ฐ์ ์์๋ก ๋ณด์ ๋๋ค.
์ด ๋ฌธ์ ๋ ๋ชฉํ ์ ๊ฐ ์๋ ์ฐ๋ฆฌ๊ฐ ์๋๊ณ ์๋ ๋จ๊ธฐ ์์ ๊ณผ ํ์ ํด๋์ค "์๋"์ ์๋ณํ๋ ํ์ฌ ์์คํ ์ ์ฐจ๋จํ์ง ์์ต๋๋ค. ์ฐ๋ฆฌ๊ฐ ์ ๋ง๋ก 3์ ์ํ๋ค๋ฉด ๊ทธ๊ฒ์ ๋ ๋ค๋ฅธ ์ด์ผ๊ธฐ์ ๋๋ค.
๊ทธ๋ฆฌ๊ณ ๋ฏธ๋์ TargetImputer์์ SimpleImputer๋ฅผ ํ์ฉํ๊ณ ์ถ๋ค๋ฉด ์์๋ณด๋ค ํฉ์ฑ์ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๊ฒ์ด ์ต์ 1์ด ์ฐธ์กฐํ๋ ๊ฒ์ ๋๋ค.
์ฌ๊ธฐ์ @freddyaboulton์ ๋์ํฉ๋๋ค. ๋ํ ์ ์ ๊ตฌ์ฑ ์์ ๋ชฉ๋ก์ ์ถ์ ํ๋ ๊ฒ์ด ์ ์ ๋ ๋ง์ ๊ตฌ์ฑ ์์๋ฅผ ์ถ๊ฐํจ์ ๋ฐ๋ผ ์ฝ๊ฐ ์ง๋ฃจํ๊ณ ์ค๋ง _get_subclasses()
๋ฅผ ์ ์ํ๋ค๋ ์ ์ ์ฃผ๋ชฉํ ๊ฐ์น๊ฐ ์์ต๋๋ค. 3 ๊ฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ _get_subclasses()
๋ฅผ ์ ์งํ๋ ๊ฒ์ด ๋ ํฉ๋ฆฌ์ ์ผ ์ ์์ง๋ง SimpleImputer / TargetImputer ์ผ์ด์ค์ ๊ฐ์ "์์ธ"๋ชฉ๋ก๋ ์ ์งํ์ฌ ํฌํจ๋๋๋กํ์ง๋ง Transformer
์ (๋) ์ฌ์ ํ ์ ์ธ๋ฉ๋๋ค.
์์ ์ด ์๋ฃ๋๋ฉด ์๊ณก๊ณผ ๊ฐ์ ๊ธฐ๋ฒ์ ๋ํ ์์ด๋์ด๋ ๊ด์ฐฎ์ต๋๋ค.
@angela97lin ์ด๊ฑธ ๋ซ์๋ ๋ ๊น์? TargetImputer / ๊ธฐํ ๊ตฌ์ฑ ์์๋ฅผ ๊ฐ๋ฐํ๊ธฐ ์ํด _get_subclasses
๋ฅผ ๋ณ๊ฒฝํ ํ์๊ฐ ์๋ค๋ ๋ฐ ๋์ํฉ๋๋ค.