make lint happy
Value: [1e-9 to 1e-5]
This commit is contained in:
parent
e2762a0f62
commit
d595285078
|
@ -164,7 +164,7 @@ module T = Dist({
|
|||
}
|
||||
|
||||
let integralEndY = (t: t) => t.integralSumCache |> E.O.default(t |> integral |> Continuous.lastY)
|
||||
let integralEndYResult = (t: t) => t -> integralEndY -> Ok
|
||||
let integralEndYResult = (t: t) => t->integralEndY->Ok
|
||||
let minX = shapeFn(XYShape.T.minX)
|
||||
let maxX = shapeFn(XYShape.T.maxX)
|
||||
let toDiscreteProbabilityMassFraction = _ => 1.0
|
||||
|
@ -230,8 +230,9 @@ module T = Dist({
|
|||
}
|
||||
|
||||
let logScore = (base: t, reference: t) => {
|
||||
combinePointwise(~fn=PointSetDist_Scoring.LogScoring.logScore, base, reference)
|
||||
|> E.R2.bind(integralEndYResult)
|
||||
combinePointwise(~fn=PointSetDist_Scoring.LogScoring.logScore, base, reference) |> E.R2.bind(
|
||||
integralEndYResult,
|
||||
)
|
||||
// |> (r => Ok(r))
|
||||
}
|
||||
})
|
||||
|
|
|
@ -33,7 +33,7 @@ module type dist = {
|
|||
|
||||
let mean: t => float
|
||||
let variance: t => float
|
||||
let logScore: (t,t) => result<float, Operation.Error.t>
|
||||
let logScore: (t, t) => result<float, Operation.Error.t>
|
||||
}
|
||||
|
||||
module Dist = (T: dist) => {
|
||||
|
|
|
@ -44,7 +44,11 @@ let combinePointwise = (
|
|||
t2: t,
|
||||
): result<t, 'e> => {
|
||||
let reducedDiscrete =
|
||||
[t1, t2] |> E.A.fmap(toDiscrete) |> E.A.O.concatSomes |> Discrete.reduce(~integralSumCachesFn, fn) |> E.R.toExn("foo")
|
||||
[t1, t2]
|
||||
|> E.A.fmap(toDiscrete)
|
||||
|> E.A.O.concatSomes
|
||||
|> Discrete.reduce(~integralSumCachesFn, fn)
|
||||
|> E.R.toExn("foo")
|
||||
|
||||
let reducedContinuous =
|
||||
[t1, t2]
|
||||
|
|
|
@ -4,4 +4,4 @@ module LogScoring = {
|
|||
let logScore = (a: float, b: float): result<float, Operation.Error.t> => Ok(
|
||||
Js.Math.log2(Js.Math.abs_float(a /. b)),
|
||||
)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -212,9 +212,8 @@ let dispatchToGenericOutput = (call: ExpressionValue.functionCall): option<
|
|||
a,
|
||||
)->Some
|
||||
| ("normalize", [EvDistribution(dist)]) => Helpers.toDistFn(Normalize, dist)
|
||||
| ("logScore", [EvDistribution(a), EvDistribution(b)]) => Some(
|
||||
runGenericOperation(FromDist(ToScore(LogScore(b)), a)),
|
||||
)
|
||||
| ("logScore", [EvDistribution(a), EvDistribution(b)]) =>
|
||||
Some(runGenericOperation(FromDist(ToScore(LogScore(b)), a)))
|
||||
| ("isNormalized", [EvDistribution(dist)]) => Helpers.toBoolFn(IsNormalized, dist)
|
||||
| ("toPointSet", [EvDistribution(dist)]) => Helpers.toDistFn(ToPointSet, dist)
|
||||
| ("scaleLog", [EvDistribution(dist)]) =>
|
||||
|
|
|
@ -96,7 +96,7 @@ module T = {
|
|||
let fromZippedArray = (pairs: array<(float, float)>): t => pairs |> Belt.Array.unzip |> fromArray
|
||||
let equallyDividedXs = (t: t, newLength) => E.A.Floats.range(minX(t), maxX(t), newLength)
|
||||
let toJs = (t: t) => {"xs": t.xs, "ys": t.ys}
|
||||
let filterYValues = (fn, t: t): t => t |> zip |> E.A.filter(((_,y)) => fn(y)) |> fromZippedArray
|
||||
let filterYValues = (fn, t: t): t => t |> zip |> E.A.filter(((_, y)) => fn(y)) |> fromZippedArray
|
||||
|
||||
module Validator = {
|
||||
let fnName = "XYShape validate"
|
||||
|
|
Loading…
Reference in New Issue
Block a user