함수 값을 포함하는 데이터 유형이 있는데 show
및 read
이 될 수 있기를 원합니다. 나는 함수를 다시 읽을 수 없다는 것을 알고 있으므로, 읽기 기능을 지정하는 방법이 필요하다. 여기 함수가있는 데이터 유형의 표시 및 읽기 인스턴스
type Activation = (Vector Double -> Vector Double, Vector Double -> Vector Double)
data Layer = L { biases :: !(Vector Double)
, nodes :: !(Matrix Double)
, activation :: Activation
}
instance Show Layer where
show (L biases nodes _) = "(" ++ show biases ++ "," ++ show nodes ++ ")"
그리고이 같은 기능을 원하는 :
readLayer :: String -> Activation -> Layer
어떻게 그 일 것?
글쎄, 당신은 그것을 무시하면, 그래서 당신은 무엇을 읽을 때 함수 값을 채우시겠습니까? –
일반적으로 나는 그것을하기 위해'String -> String -> Activation -> Layer' 함수를 사용할 것입니다. 그러나 무엇을 시도 했습니까? 어떤 오류가 있습니까? 'String'을 "읽고"'[Double]'을 생성하는 간단한 함수를 만들 수 있다면'Vector.fromList'가 유용 할 것입니다. – epsilonhalbe
이'readLayer'는 일반적인'Read' 인스턴스와 다릅니다. – epsilonhalbe