- Timestamp:
- 04/12/17 12:15:37 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/TSNE/HeuristicLab.Algorithms.DataAnalysis/3.4/TSNE/TSNEStatic.cs
r14837 r14855 285 285 var minBeta = double.MinValue; 286 286 var maxBeta = double.MaxValue; 287 const double tol = 1e-5; // TODO: why 1e-5?287 const double tol = 1e-5; 288 288 289 289 // Iterate until we found a good perplexity 290 290 var iter = 0; double sumP = 0; 291 while(!found && iter < 200) { // TODO 200 iterations always ok?291 while(!found && iter < 200) { 292 292 293 293 // Compute Gaussian kernel row 294 for(var m = 0; m < k; m++) curP[m] = Math.Exp(-beta * distances[m + 1]); // TODO distances m+1?294 for(var m = 0; m < k; m++) curP[m] = Math.Exp(-beta * distances[m + 1]); 295 295 296 296 // Compute entropy of current row … … 298 298 for(var m = 0; m < k; m++) sumP += curP[m]; 299 299 var h = .0; 300 for(var m = 0; m < k; m++) h += beta * (distances[m + 1] * curP[m]); // TODO: distances m+1?300 for(var m = 0; m < k; m++) h += beta * (distances[m + 1] * curP[m]); 301 301 h = h / sumP + Math.Log(sumP); 302 302
Note: See TracChangeset
for help on using the changeset viewer.