Update MDS and MLPRegressor to new order

nix
Owen Green 6 years ago
parent 50467b33fe
commit deaac85ec9

@ -7,18 +7,21 @@ FluidMDS : FluidManipulationClient {
classvar < kl = 5;
classvar < cosine = 5;
*new {|server|
*new {|server,numDimensions = 2, distanceMetric = 1|
var uid = UniqueID.next;
^super.new(server,uid)!?{|inst|inst.init(uid);inst}
^super.new(server,uid,*[
\numDimensions,numDimensions,
\distanceMetric, distanceMetric
])!?{|inst|inst.init(uid);inst}
}
init {|uid|
id = uid;
}
fitTransform{|sourceDataSet, destDataSet, numDimensions, distanceMetric, action|
fitTransform{|sourceDataSet, destDataSet, action|
this.prSendMsg(\fitTransform,
[sourceDataSet.asSymbol, destDataSet.asSymbol, numDimensions, distanceMetric], action);
[sourceDataSet.asSymbol, destDataSet.asSymbol], action);
}
// not implemented

@ -7,8 +7,14 @@ FluidMLPRegressor : FluidManipulationClient {
*new {|server, hidden = #[3,3] , activation = 0, maxIter = 100, learnRate = 0.0001, momentum = 0.9, batchSize = 50|
var uid = UniqueID.next;
^super.new(server,*([hidden.size]++hidden++activation++maxIter++learnRate++
momentum++batchSize++uid))!?{|inst|inst.init(uid);inst}
hidden = [hidden.size]++hidden;
^super.new(server,uid, *[
\hidden,hidden,
\activation,activation,
\maxIter, maxIter,
\learnRate,learnRate,
\momentum, momentum,
\batchsize,batchSize])!?{|inst|inst.init(uid);inst}
}
init {|uid|

@ -111,7 +111,7 @@ FluidBufMFCC.process(s,~audio, features: ~mfcc_feature);
(
~reducedarray = Array.new(100);
~standardizer.fitTransform(~raw, ~standardized);
~mds.fitTransform(~standardized, ~reduced, 2, FluidMDS.euclidean, action:{
~mds.fitTransform(~standardized, ~reduced, action:{
~reduced.dump{|x| 100.do{|i|
~reducedarray.add(x["data"][i.asString])
}}});

Loading…
Cancel
Save