본문 바로가기

dev_AI_framework

기본적인 from_config 의 한계

@classmethod
def from_config(cls, config):
    return cls(**config)

간단하고 config 의 딕셔너리 키와 값을 그대로 __init__ 메서드의 매개변수로 전달 

하지만 딕셔너리의 값들이 그대로 전달될 수 없거나 별도 처리가 필요할 경우 이 방법은 적합하지 않음

 

명시적인 값 처리 방식

@classmethod
def from_config(cls, config):
    activation = globals().get(config['activation'])
    return cls(units=config['units'], activation=activation, name=config['name'])

딕셔너리에서 값을 명시적으로 추출하고 처리 후 __init__ 메서드로 전달한다.

데코레이터, @classmethod 를 사용하여 클래스 자체를 인수로 받아 클래스의 속성이나 클래스 메서드에 접근하거 수정할 때 사용, 

위 메서드가 정의된 Dense 클래스 내 속성, 메서드에 접근할 수 있음

객체의 인스턴스가 없어도 호출할 수 있다.

 

일단 단순 구현 ㄱㄱ