agentdb 2.0.0-alpha.2 → 2.0.0-alpha.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (314) hide show
  1. package/dist/agentdb.min.js +4 -4
  2. package/dist/simulation/cli.js +0 -0
  3. package/dist/src/cli/agentdb-cli.d.ts.map +1 -1
  4. package/dist/src/cli/agentdb-cli.js +78 -0
  5. package/dist/src/cli/agentdb-cli.js.map +1 -1
  6. package/package.json +3 -3
  7. package/src/cli/agentdb-cli.ts +78 -0
  8. package/dist/agentdb-advanced.js +0 -2110
  9. package/dist/agentdb-advanced.min.js +0 -1
  10. package/dist/backends/GraphBackend.d.ts +0 -196
  11. package/dist/backends/GraphBackend.d.ts.map +0 -1
  12. package/dist/backends/GraphBackend.js +0 -33
  13. package/dist/backends/GraphBackend.js.map +0 -1
  14. package/dist/backends/LearningBackend.d.ts +0 -148
  15. package/dist/backends/LearningBackend.d.ts.map +0 -1
  16. package/dist/backends/LearningBackend.js +0 -27
  17. package/dist/backends/LearningBackend.js.map +0 -1
  18. package/dist/backends/VectorBackend.d.ts +0 -119
  19. package/dist/backends/VectorBackend.d.ts.map +0 -1
  20. package/dist/backends/VectorBackend.js +0 -14
  21. package/dist/backends/VectorBackend.js.map +0 -1
  22. package/dist/backends/detector.d.ts +0 -81
  23. package/dist/backends/detector.d.ts.map +0 -1
  24. package/dist/backends/detector.js +0 -192
  25. package/dist/backends/detector.js.map +0 -1
  26. package/dist/backends/factory.d.ts +0 -50
  27. package/dist/backends/factory.d.ts.map +0 -1
  28. package/dist/backends/factory.js +0 -161
  29. package/dist/backends/factory.js.map +0 -1
  30. package/dist/backends/graph/GraphDatabaseAdapter.d.ts +0 -139
  31. package/dist/backends/graph/GraphDatabaseAdapter.d.ts.map +0 -1
  32. package/dist/backends/graph/GraphDatabaseAdapter.js +0 -194
  33. package/dist/backends/graph/GraphDatabaseAdapter.js.map +0 -1
  34. package/dist/backends/hnswlib/HNSWLibBackend.d.ts +0 -92
  35. package/dist/backends/hnswlib/HNSWLibBackend.d.ts.map +0 -1
  36. package/dist/backends/hnswlib/HNSWLibBackend.js +0 -316
  37. package/dist/backends/hnswlib/HNSWLibBackend.js.map +0 -1
  38. package/dist/backends/hnswlib/index.d.ts +0 -7
  39. package/dist/backends/hnswlib/index.d.ts.map +0 -1
  40. package/dist/backends/hnswlib/index.js +0 -7
  41. package/dist/backends/hnswlib/index.js.map +0 -1
  42. package/dist/backends/index.d.ts +0 -14
  43. package/dist/backends/index.d.ts.map +0 -1
  44. package/dist/backends/index.js +0 -13
  45. package/dist/backends/index.js.map +0 -1
  46. package/dist/backends/ruvector/RuVectorBackend.d.ts +0 -75
  47. package/dist/backends/ruvector/RuVectorBackend.d.ts.map +0 -1
  48. package/dist/backends/ruvector/RuVectorBackend.js +0 -198
  49. package/dist/backends/ruvector/RuVectorBackend.js.map +0 -1
  50. package/dist/backends/ruvector/RuVectorLearning.d.ts +0 -104
  51. package/dist/backends/ruvector/RuVectorLearning.d.ts.map +0 -1
  52. package/dist/backends/ruvector/RuVectorLearning.js +0 -177
  53. package/dist/backends/ruvector/RuVectorLearning.js.map +0 -1
  54. package/dist/backends/ruvector/index.d.ts +0 -9
  55. package/dist/backends/ruvector/index.d.ts.map +0 -1
  56. package/dist/backends/ruvector/index.js +0 -8
  57. package/dist/backends/ruvector/index.js.map +0 -1
  58. package/dist/benchmarks/wasm-vector-benchmark.d.ts +0 -10
  59. package/dist/benchmarks/wasm-vector-benchmark.d.ts.map +0 -1
  60. package/dist/benchmarks/wasm-vector-benchmark.js +0 -196
  61. package/dist/benchmarks/wasm-vector-benchmark.js.map +0 -1
  62. package/dist/browser/AdvancedFeatures.d.ts +0 -144
  63. package/dist/browser/AdvancedFeatures.d.ts.map +0 -1
  64. package/dist/browser/AdvancedFeatures.js +0 -430
  65. package/dist/browser/AdvancedFeatures.js.map +0 -1
  66. package/dist/browser/HNSWIndex.d.ts +0 -117
  67. package/dist/browser/HNSWIndex.d.ts.map +0 -1
  68. package/dist/browser/HNSWIndex.js +0 -402
  69. package/dist/browser/HNSWIndex.js.map +0 -1
  70. package/dist/browser/ProductQuantization.d.ts +0 -107
  71. package/dist/browser/ProductQuantization.d.ts.map +0 -1
  72. package/dist/browser/ProductQuantization.js +0 -337
  73. package/dist/browser/ProductQuantization.js.map +0 -1
  74. package/dist/browser/browser/AdvancedFeatures.d.ts +0 -144
  75. package/dist/browser/browser/AdvancedFeatures.d.ts.map +0 -1
  76. package/dist/browser/browser/AdvancedFeatures.js +0 -427
  77. package/dist/browser/browser/HNSWIndex.d.ts +0 -117
  78. package/dist/browser/browser/HNSWIndex.d.ts.map +0 -1
  79. package/dist/browser/browser/HNSWIndex.js +0 -402
  80. package/dist/browser/browser/ProductQuantization.d.ts +0 -107
  81. package/dist/browser/browser/ProductQuantization.d.ts.map +0 -1
  82. package/dist/browser/browser/ProductQuantization.js +0 -348
  83. package/dist/browser/browser/index.d.ts +0 -223
  84. package/dist/browser/browser/index.d.ts.map +0 -1
  85. package/dist/browser/browser/index.js +0 -233
  86. package/dist/browser/index.d.ts +0 -223
  87. package/dist/browser/index.d.ts.map +0 -1
  88. package/dist/browser/index.js +0 -225
  89. package/dist/browser/index.js.map +0 -1
  90. package/dist/cli/agentdb-cli.d.ts +0 -154
  91. package/dist/cli/agentdb-cli.d.ts.map +0 -1
  92. package/dist/cli/agentdb-cli.js +0 -2273
  93. package/dist/cli/agentdb-cli.js.map +0 -1
  94. package/dist/cli/agentdb.db +0 -0
  95. package/dist/cli/commands/init.d.ts +0 -12
  96. package/dist/cli/commands/init.d.ts.map +0 -1
  97. package/dist/cli/commands/init.js +0 -115
  98. package/dist/cli/commands/init.js.map +0 -1
  99. package/dist/cli/commands/install-embeddings.d.ts +0 -10
  100. package/dist/cli/commands/install-embeddings.d.ts.map +0 -1
  101. package/dist/cli/commands/install-embeddings.js +0 -68
  102. package/dist/cli/commands/install-embeddings.js.map +0 -1
  103. package/dist/cli/commands/migrate.d.ts +0 -15
  104. package/dist/cli/commands/migrate.d.ts.map +0 -1
  105. package/dist/cli/commands/migrate.js +0 -425
  106. package/dist/cli/commands/migrate.js.map +0 -1
  107. package/dist/cli/commands/status.d.ts +0 -10
  108. package/dist/cli/commands/status.d.ts.map +0 -1
  109. package/dist/cli/commands/status.js +0 -129
  110. package/dist/cli/commands/status.js.map +0 -1
  111. package/dist/controllers/CausalMemoryGraph.d.ts +0 -126
  112. package/dist/controllers/CausalMemoryGraph.d.ts.map +0 -1
  113. package/dist/controllers/CausalMemoryGraph.js +0 -323
  114. package/dist/controllers/CausalMemoryGraph.js.map +0 -1
  115. package/dist/controllers/CausalRecall.d.ts +0 -139
  116. package/dist/controllers/CausalRecall.d.ts.map +0 -1
  117. package/dist/controllers/CausalRecall.js +0 -356
  118. package/dist/controllers/CausalRecall.js.map +0 -1
  119. package/dist/controllers/ContextSynthesizer.d.ts +0 -65
  120. package/dist/controllers/ContextSynthesizer.d.ts.map +0 -1
  121. package/dist/controllers/ContextSynthesizer.js +0 -208
  122. package/dist/controllers/ContextSynthesizer.js.map +0 -1
  123. package/dist/controllers/EmbeddingService.d.ts +0 -37
  124. package/dist/controllers/EmbeddingService.d.ts.map +0 -1
  125. package/dist/controllers/EmbeddingService.js +0 -136
  126. package/dist/controllers/EmbeddingService.js.map +0 -1
  127. package/dist/controllers/EnhancedEmbeddingService.d.ts +0 -50
  128. package/dist/controllers/EnhancedEmbeddingService.d.ts.map +0 -1
  129. package/dist/controllers/EnhancedEmbeddingService.js +0 -119
  130. package/dist/controllers/EnhancedEmbeddingService.js.map +0 -1
  131. package/dist/controllers/ExplainableRecall.d.ts +0 -163
  132. package/dist/controllers/ExplainableRecall.d.ts.map +0 -1
  133. package/dist/controllers/ExplainableRecall.js +0 -485
  134. package/dist/controllers/ExplainableRecall.js.map +0 -1
  135. package/dist/controllers/HNSWIndex.d.ts +0 -128
  136. package/dist/controllers/HNSWIndex.d.ts.map +0 -1
  137. package/dist/controllers/HNSWIndex.js +0 -361
  138. package/dist/controllers/HNSWIndex.js.map +0 -1
  139. package/dist/controllers/LearningSystem.d.ts +0 -195
  140. package/dist/controllers/LearningSystem.d.ts.map +0 -1
  141. package/dist/controllers/LearningSystem.js +0 -929
  142. package/dist/controllers/LearningSystem.js.map +0 -1
  143. package/dist/controllers/MMRDiversityRanker.d.ts +0 -50
  144. package/dist/controllers/MMRDiversityRanker.d.ts.map +0 -1
  145. package/dist/controllers/MMRDiversityRanker.js +0 -130
  146. package/dist/controllers/MMRDiversityRanker.js.map +0 -1
  147. package/dist/controllers/MetadataFilter.d.ts +0 -70
  148. package/dist/controllers/MetadataFilter.d.ts.map +0 -1
  149. package/dist/controllers/MetadataFilter.js +0 -243
  150. package/dist/controllers/MetadataFilter.js.map +0 -1
  151. package/dist/controllers/NightlyLearner.d.ts +0 -114
  152. package/dist/controllers/NightlyLearner.d.ts.map +0 -1
  153. package/dist/controllers/NightlyLearner.js +0 -394
  154. package/dist/controllers/NightlyLearner.js.map +0 -1
  155. package/dist/controllers/QUICClient.d.ts +0 -109
  156. package/dist/controllers/QUICClient.d.ts.map +0 -1
  157. package/dist/controllers/QUICClient.js +0 -299
  158. package/dist/controllers/QUICClient.js.map +0 -1
  159. package/dist/controllers/QUICServer.d.ts +0 -121
  160. package/dist/controllers/QUICServer.d.ts.map +0 -1
  161. package/dist/controllers/QUICServer.js +0 -383
  162. package/dist/controllers/QUICServer.js.map +0 -1
  163. package/dist/controllers/ReasoningBank.d.ts +0 -196
  164. package/dist/controllers/ReasoningBank.d.ts.map +0 -1
  165. package/dist/controllers/ReasoningBank.js +0 -494
  166. package/dist/controllers/ReasoningBank.js.map +0 -1
  167. package/dist/controllers/ReflexionMemory.d.ts +0 -125
  168. package/dist/controllers/ReflexionMemory.d.ts.map +0 -1
  169. package/dist/controllers/ReflexionMemory.js +0 -521
  170. package/dist/controllers/ReflexionMemory.js.map +0 -1
  171. package/dist/controllers/SkillLibrary.d.ts +0 -149
  172. package/dist/controllers/SkillLibrary.d.ts.map +0 -1
  173. package/dist/controllers/SkillLibrary.js +0 -547
  174. package/dist/controllers/SkillLibrary.js.map +0 -1
  175. package/dist/controllers/SyncCoordinator.d.ts +0 -120
  176. package/dist/controllers/SyncCoordinator.d.ts.map +0 -1
  177. package/dist/controllers/SyncCoordinator.js +0 -441
  178. package/dist/controllers/SyncCoordinator.js.map +0 -1
  179. package/dist/controllers/WASMVectorSearch.d.ts +0 -89
  180. package/dist/controllers/WASMVectorSearch.d.ts.map +0 -1
  181. package/dist/controllers/WASMVectorSearch.js +0 -234
  182. package/dist/controllers/WASMVectorSearch.js.map +0 -1
  183. package/dist/controllers/frontier-index.d.ts +0 -14
  184. package/dist/controllers/frontier-index.d.ts.map +0 -1
  185. package/dist/controllers/frontier-index.js +0 -10
  186. package/dist/controllers/frontier-index.js.map +0 -1
  187. package/dist/controllers/index.d.ts +0 -30
  188. package/dist/controllers/index.d.ts.map +0 -1
  189. package/dist/controllers/index.js +0 -18
  190. package/dist/controllers/index.js.map +0 -1
  191. package/dist/db-fallback.d.ts +0 -26
  192. package/dist/db-fallback.d.ts.map +0 -1
  193. package/dist/db-fallback.js +0 -264
  194. package/dist/db-fallback.js.map +0 -1
  195. package/dist/db-test.d.ts +0 -13
  196. package/dist/db-test.d.ts.map +0 -1
  197. package/dist/db-test.js +0 -55
  198. package/dist/db-test.js.map +0 -1
  199. package/dist/db-unified.d.ts +0 -76
  200. package/dist/db-unified.d.ts.map +0 -1
  201. package/dist/db-unified.js +0 -278
  202. package/dist/db-unified.js.map +0 -1
  203. package/dist/examples/quic-sync-example.d.ts +0 -9
  204. package/dist/examples/quic-sync-example.d.ts.map +0 -1
  205. package/dist/examples/quic-sync-example.js +0 -169
  206. package/dist/examples/quic-sync-example.js.map +0 -1
  207. package/dist/examples/wasm-vector-usage.d.ts +0 -12
  208. package/dist/examples/wasm-vector-usage.d.ts.map +0 -1
  209. package/dist/examples/wasm-vector-usage.js +0 -190
  210. package/dist/examples/wasm-vector-usage.js.map +0 -1
  211. package/dist/index.d.ts +0 -28
  212. package/dist/index.d.ts.map +0 -1
  213. package/dist/index.js +0 -35
  214. package/dist/index.js.map +0 -1
  215. package/dist/malp/core/ccc.d.ts +0 -99
  216. package/dist/malp/core/ccc.d.ts.map +0 -1
  217. package/dist/malp/core/ccc.js +0 -181
  218. package/dist/malp/core/ccc.js.map +0 -1
  219. package/dist/malp/core/index.d.ts +0 -9
  220. package/dist/malp/core/index.d.ts.map +0 -1
  221. package/dist/malp/core/index.js +0 -9
  222. package/dist/malp/core/index.js.map +0 -1
  223. package/dist/malp/core/linalg.d.ts +0 -101
  224. package/dist/malp/core/linalg.d.ts.map +0 -1
  225. package/dist/malp/core/linalg.js +0 -278
  226. package/dist/malp/core/linalg.js.map +0 -1
  227. package/dist/malp/core/optimizer.d.ts +0 -68
  228. package/dist/malp/core/optimizer.d.ts.map +0 -1
  229. package/dist/malp/core/optimizer.js +0 -160
  230. package/dist/malp/core/optimizer.js.map +0 -1
  231. package/dist/malp/index.d.ts +0 -33
  232. package/dist/malp/index.d.ts.map +0 -1
  233. package/dist/malp/index.js +0 -37
  234. package/dist/malp/index.js.map +0 -1
  235. package/dist/malp/metrics/agreement.d.ts +0 -106
  236. package/dist/malp/metrics/agreement.d.ts.map +0 -1
  237. package/dist/malp/metrics/agreement.js +0 -199
  238. package/dist/malp/metrics/agreement.js.map +0 -1
  239. package/dist/malp/metrics/comparison.d.ts +0 -93
  240. package/dist/malp/metrics/comparison.d.ts.map +0 -1
  241. package/dist/malp/metrics/comparison.js +0 -256
  242. package/dist/malp/metrics/comparison.js.map +0 -1
  243. package/dist/malp/metrics/index.d.ts +0 -8
  244. package/dist/malp/metrics/index.d.ts.map +0 -1
  245. package/dist/malp/metrics/index.js +0 -8
  246. package/dist/malp/metrics/index.js.map +0 -1
  247. package/dist/malp/metrics/performance.d.ts +0 -61
  248. package/dist/malp/metrics/performance.d.ts.map +0 -1
  249. package/dist/malp/metrics/performance.js +0 -190
  250. package/dist/malp/metrics/performance.js.map +0 -1
  251. package/dist/malp/models/index.d.ts +0 -7
  252. package/dist/malp/models/index.d.ts.map +0 -1
  253. package/dist/malp/models/index.js +0 -7
  254. package/dist/malp/models/index.js.map +0 -1
  255. package/dist/malp/models/malp.d.ts +0 -116
  256. package/dist/malp/models/malp.d.ts.map +0 -1
  257. package/dist/malp/models/malp.js +0 -206
  258. package/dist/malp/models/malp.js.map +0 -1
  259. package/dist/malp/models/regressor.d.ts +0 -80
  260. package/dist/malp/models/regressor.d.ts.map +0 -1
  261. package/dist/malp/models/regressor.js +0 -229
  262. package/dist/malp/models/regressor.js.map +0 -1
  263. package/dist/malp/reasoningbank_validator.d.ts +0 -187
  264. package/dist/malp/reasoningbank_validator.d.ts.map +0 -1
  265. package/dist/malp/reasoningbank_validator.js +0 -246
  266. package/dist/malp/reasoningbank_validator.js.map +0 -1
  267. package/dist/malp/wasm_bindings.d.ts +0 -344
  268. package/dist/malp/wasm_bindings.d.ts.map +0 -1
  269. package/dist/malp/wasm_bindings.js +0 -9
  270. package/dist/malp/wasm_bindings.js.map +0 -1
  271. package/dist/mcp/agentdb-mcp-server.d.ts +0 -8
  272. package/dist/mcp/agentdb-mcp-server.d.ts.map +0 -1
  273. package/dist/mcp/agentdb-mcp-server.js +0 -2116
  274. package/dist/mcp/agentdb-mcp-server.js.map +0 -1
  275. package/dist/mcp/learning-tools-handlers.d.ts +0 -16
  276. package/dist/mcp/learning-tools-handlers.d.ts.map +0 -1
  277. package/dist/mcp/learning-tools-handlers.js +0 -105
  278. package/dist/mcp/learning-tools-handlers.js.map +0 -1
  279. package/dist/optimizations/BatchOperations.d.ts +0 -109
  280. package/dist/optimizations/BatchOperations.d.ts.map +0 -1
  281. package/dist/optimizations/BatchOperations.js +0 -407
  282. package/dist/optimizations/BatchOperations.js.map +0 -1
  283. package/dist/optimizations/QueryOptimizer.d.ts +0 -83
  284. package/dist/optimizations/QueryOptimizer.d.ts.map +0 -1
  285. package/dist/optimizations/QueryOptimizer.js +0 -228
  286. package/dist/optimizations/QueryOptimizer.js.map +0 -1
  287. package/dist/optimizations/ToolCache.d.ts +0 -137
  288. package/dist/optimizations/ToolCache.d.ts.map +0 -1
  289. package/dist/optimizations/ToolCache.js +0 -281
  290. package/dist/optimizations/ToolCache.js.map +0 -1
  291. package/dist/optimizations/index.d.ts +0 -10
  292. package/dist/optimizations/index.d.ts.map +0 -1
  293. package/dist/optimizations/index.js +0 -8
  294. package/dist/optimizations/index.js.map +0 -1
  295. package/dist/security/input-validation.d.ts +0 -109
  296. package/dist/security/input-validation.d.ts.map +0 -1
  297. package/dist/security/input-validation.js +0 -398
  298. package/dist/security/input-validation.js.map +0 -1
  299. package/dist/security/limits.d.ts +0 -150
  300. package/dist/security/limits.d.ts.map +0 -1
  301. package/dist/security/limits.js +0 -288
  302. package/dist/security/limits.js.map +0 -1
  303. package/dist/security/path-security.d.ts +0 -100
  304. package/dist/security/path-security.d.ts.map +0 -1
  305. package/dist/security/path-security.js +0 -337
  306. package/dist/security/path-security.js.map +0 -1
  307. package/dist/security/validation.d.ts +0 -95
  308. package/dist/security/validation.d.ts.map +0 -1
  309. package/dist/security/validation.js +0 -315
  310. package/dist/security/validation.js.map +0 -1
  311. package/dist/types/quic.d.ts +0 -518
  312. package/dist/types/quic.d.ts.map +0 -1
  313. package/dist/types/quic.js +0 -272
  314. package/dist/types/quic.js.map +0 -1
@@ -1,101 +0,0 @@
1
- /**
2
- * Linear Algebra Utilities for MALP
3
- *
4
- * Provides core matrix operations, numerical stability utilities,
5
- * and linear algebra primitives optimized for MALP regression.
6
- */
7
- export interface Matrix {
8
- data: number[][];
9
- rows: number;
10
- cols: number;
11
- }
12
- export interface Vector {
13
- data: number[];
14
- length: number;
15
- }
16
- /**
17
- * Numerical stability epsilon for avoiding division by zero
18
- * and ensuring gradient computations are numerically stable
19
- */
20
- export declare const EPSILON = 1e-10;
21
- /**
22
- * Create a matrix from 2D array data
23
- */
24
- export declare function createMatrix(data: number[][]): Matrix;
25
- /**
26
- * Create a vector from array data
27
- */
28
- export declare function createVector(data: number[]): Vector;
29
- /**
30
- * Matrix-vector multiplication: y = Ax
31
- */
32
- export declare function matVecMultiply(A: Matrix, x: Vector): Vector;
33
- /**
34
- * Matrix transpose
35
- */
36
- export declare function transpose(A: Matrix): Matrix;
37
- /**
38
- * Matrix-matrix multiplication: C = AB
39
- */
40
- export declare function matMatMultiply(A: Matrix, B: Matrix): Matrix;
41
- /**
42
- * Compute mean of a vector
43
- */
44
- export declare function mean(x: Vector): number;
45
- /**
46
- * Compute variance of a vector
47
- */
48
- export declare function variance(x: Vector, meanVal?: number): number;
49
- /**
50
- * Compute standard deviation of a vector
51
- */
52
- export declare function std(x: Vector, meanVal?: number): number;
53
- /**
54
- * Compute covariance between two vectors
55
- */
56
- export declare function covariance(x: Vector, y: Vector): number;
57
- /**
58
- * Compute Pearson correlation coefficient
59
- */
60
- export declare function pearsonCorr(x: Vector, y: Vector): number;
61
- /**
62
- * Compute dot product of two vectors
63
- */
64
- export declare function dot(x: Vector, y: Vector): number;
65
- /**
66
- * Compute L2 norm (Euclidean norm) of a vector
67
- */
68
- export declare function norm(x: Vector): number;
69
- /**
70
- * Vector addition: z = x + y
71
- */
72
- export declare function vectorAdd(x: Vector, y: Vector): Vector;
73
- /**
74
- * Vector subtraction: z = x - y
75
- */
76
- export declare function vectorSubtract(x: Vector, y: Vector): Vector;
77
- /**
78
- * Scalar multiplication: y = ax
79
- */
80
- export declare function scalarMultiply(a: number, x: Vector): Vector;
81
- /**
82
- * Solve least squares problem: minimize ||Ax - b||^2
83
- * Uses normal equations: A^T A x = A^T b
84
- *
85
- * This is used for least squares initialization in MALP
86
- */
87
- export declare function leastSquares(A: Matrix, b: Vector): Vector;
88
- /**
89
- * Solve linear system Ax = b using Gaussian elimination with partial pivoting
90
- */
91
- export declare function solveLinearSystem(A: Matrix, b: Vector): Vector;
92
- /**
93
- * Add design matrix column for intercept (column of ones)
94
- */
95
- export declare function addIntercept(X: Matrix): Matrix;
96
- /**
97
- * Compute condition number of a matrix (estimate)
98
- * Used to check numerical stability
99
- */
100
- export declare function conditionNumber(A: Matrix): number;
101
- //# sourceMappingURL=linalg.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linalg.d.ts","sourceRoot":"","sources":["../../../src/malp/core/linalg.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO,QAAQ,CAAC;AAE7B;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,MAAM,CAiBrD;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,MAAM,CAKnD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgB3D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAU3C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAkB3D;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAGtC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAI5D;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAcvD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAWxD;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAWhD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAWtD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAW3D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAG3D;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAyD9D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAG9C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAYjD"}
@@ -1,278 +0,0 @@
1
- /**
2
- * Linear Algebra Utilities for MALP
3
- *
4
- * Provides core matrix operations, numerical stability utilities,
5
- * and linear algebra primitives optimized for MALP regression.
6
- */
7
- /**
8
- * Numerical stability epsilon for avoiding division by zero
9
- * and ensuring gradient computations are numerically stable
10
- */
11
- export const EPSILON = 1e-10;
12
- /**
13
- * Create a matrix from 2D array data
14
- */
15
- export function createMatrix(data) {
16
- if (data.length === 0 || data[0].length === 0) {
17
- throw new Error('Matrix must have non-zero dimensions');
18
- }
19
- const cols = data[0].length;
20
- for (let i = 1; i < data.length; i++) {
21
- if (data[i].length !== cols) {
22
- throw new Error('All matrix rows must have the same length');
23
- }
24
- }
25
- return {
26
- data,
27
- rows: data.length,
28
- cols
29
- };
30
- }
31
- /**
32
- * Create a vector from array data
33
- */
34
- export function createVector(data) {
35
- return {
36
- data,
37
- length: data.length
38
- };
39
- }
40
- /**
41
- * Matrix-vector multiplication: y = Ax
42
- */
43
- export function matVecMultiply(A, x) {
44
- if (A.cols !== x.length) {
45
- throw new Error(`Dimension mismatch: ${A.cols} !== ${x.length}`);
46
- }
47
- const result = new Array(A.rows).fill(0);
48
- for (let i = 0; i < A.rows; i++) {
49
- let sum = 0;
50
- for (let j = 0; j < A.cols; j++) {
51
- sum += A.data[i][j] * x.data[j];
52
- }
53
- result[i] = sum;
54
- }
55
- return createVector(result);
56
- }
57
- /**
58
- * Matrix transpose
59
- */
60
- export function transpose(A) {
61
- const data = Array(A.cols).fill(null).map(() => Array(A.rows));
62
- for (let i = 0; i < A.rows; i++) {
63
- for (let j = 0; j < A.cols; j++) {
64
- data[j][i] = A.data[i][j];
65
- }
66
- }
67
- return createMatrix(data);
68
- }
69
- /**
70
- * Matrix-matrix multiplication: C = AB
71
- */
72
- export function matMatMultiply(A, B) {
73
- if (A.cols !== B.rows) {
74
- throw new Error(`Dimension mismatch: ${A.cols} !== ${B.rows}`);
75
- }
76
- const data = Array(A.rows).fill(null).map(() => Array(B.cols).fill(0));
77
- for (let i = 0; i < A.rows; i++) {
78
- for (let j = 0; j < B.cols; j++) {
79
- let sum = 0;
80
- for (let k = 0; k < A.cols; k++) {
81
- sum += A.data[i][k] * B.data[k][j];
82
- }
83
- data[i][j] = sum;
84
- }
85
- }
86
- return createMatrix(data);
87
- }
88
- /**
89
- * Compute mean of a vector
90
- */
91
- export function mean(x) {
92
- const sum = x.data.reduce((acc, val) => acc + val, 0);
93
- return sum / x.length;
94
- }
95
- /**
96
- * Compute variance of a vector
97
- */
98
- export function variance(x, meanVal) {
99
- const m = meanVal ?? mean(x);
100
- const sumSq = x.data.reduce((acc, val) => acc + Math.pow(val - m, 2), 0);
101
- return sumSq / x.length;
102
- }
103
- /**
104
- * Compute standard deviation of a vector
105
- */
106
- export function std(x, meanVal) {
107
- return Math.sqrt(variance(x, meanVal));
108
- }
109
- /**
110
- * Compute covariance between two vectors
111
- */
112
- export function covariance(x, y) {
113
- if (x.length !== y.length) {
114
- throw new Error(`Vector length mismatch: ${x.length} !== ${y.length}`);
115
- }
116
- const mx = mean(x);
117
- const my = mean(y);
118
- let sum = 0;
119
- for (let i = 0; i < x.length; i++) {
120
- sum += (x.data[i] - mx) * (y.data[i] - my);
121
- }
122
- return sum / x.length;
123
- }
124
- /**
125
- * Compute Pearson correlation coefficient
126
- */
127
- export function pearsonCorr(x, y) {
128
- const cov = covariance(x, y);
129
- const stdX = std(x);
130
- const stdY = std(y);
131
- // Avoid division by zero
132
- if (stdX < EPSILON || stdY < EPSILON) {
133
- return 0;
134
- }
135
- return cov / (stdX * stdY);
136
- }
137
- /**
138
- * Compute dot product of two vectors
139
- */
140
- export function dot(x, y) {
141
- if (x.length !== y.length) {
142
- throw new Error(`Vector length mismatch: ${x.length} !== ${y.length}`);
143
- }
144
- let sum = 0;
145
- for (let i = 0; i < x.length; i++) {
146
- sum += x.data[i] * y.data[i];
147
- }
148
- return sum;
149
- }
150
- /**
151
- * Compute L2 norm (Euclidean norm) of a vector
152
- */
153
- export function norm(x) {
154
- return Math.sqrt(dot(x, x));
155
- }
156
- /**
157
- * Vector addition: z = x + y
158
- */
159
- export function vectorAdd(x, y) {
160
- if (x.length !== y.length) {
161
- throw new Error(`Vector length mismatch: ${x.length} !== ${y.length}`);
162
- }
163
- const result = new Array(x.length);
164
- for (let i = 0; i < x.length; i++) {
165
- result[i] = x.data[i] + y.data[i];
166
- }
167
- return createVector(result);
168
- }
169
- /**
170
- * Vector subtraction: z = x - y
171
- */
172
- export function vectorSubtract(x, y) {
173
- if (x.length !== y.length) {
174
- throw new Error(`Vector length mismatch: ${x.length} !== ${y.length}`);
175
- }
176
- const result = new Array(x.length);
177
- for (let i = 0; i < x.length; i++) {
178
- result[i] = x.data[i] - y.data[i];
179
- }
180
- return createVector(result);
181
- }
182
- /**
183
- * Scalar multiplication: y = ax
184
- */
185
- export function scalarMultiply(a, x) {
186
- const result = x.data.map(val => a * val);
187
- return createVector(result);
188
- }
189
- /**
190
- * Solve least squares problem: minimize ||Ax - b||^2
191
- * Uses normal equations: A^T A x = A^T b
192
- *
193
- * This is used for least squares initialization in MALP
194
- */
195
- export function leastSquares(A, b) {
196
- if (A.rows !== b.length) {
197
- throw new Error(`Dimension mismatch: ${A.rows} !== ${b.length}`);
198
- }
199
- // Compute A^T
200
- const AT = transpose(A);
201
- // Compute A^T A
202
- const ATA = matMatMultiply(AT, A);
203
- // Compute A^T b
204
- const ATb = matVecMultiply(AT, b);
205
- // Solve ATA x = ATb using Gaussian elimination with partial pivoting
206
- return solveLinearSystem(ATA, ATb);
207
- }
208
- /**
209
- * Solve linear system Ax = b using Gaussian elimination with partial pivoting
210
- */
211
- export function solveLinearSystem(A, b) {
212
- if (A.rows !== A.cols) {
213
- throw new Error('Matrix must be square');
214
- }
215
- if (A.rows !== b.length) {
216
- throw new Error(`Dimension mismatch: ${A.rows} !== ${b.length}`);
217
- }
218
- const n = A.rows;
219
- // Create augmented matrix [A | b]
220
- const augmented = A.data.map((row, i) => [...row, b.data[i]]);
221
- // Forward elimination with partial pivoting
222
- for (let k = 0; k < n; k++) {
223
- // Find pivot
224
- let maxRow = k;
225
- let maxVal = Math.abs(augmented[k][k]);
226
- for (let i = k + 1; i < n; i++) {
227
- const val = Math.abs(augmented[i][k]);
228
- if (val > maxVal) {
229
- maxVal = val;
230
- maxRow = i;
231
- }
232
- }
233
- // Check for singular matrix
234
- if (maxVal < EPSILON) {
235
- throw new Error('Matrix is singular or near-singular');
236
- }
237
- // Swap rows
238
- if (maxRow !== k) {
239
- [augmented[k], augmented[maxRow]] = [augmented[maxRow], augmented[k]];
240
- }
241
- // Eliminate column
242
- for (let i = k + 1; i < n; i++) {
243
- const factor = augmented[i][k] / augmented[k][k];
244
- for (let j = k; j <= n; j++) {
245
- augmented[i][j] -= factor * augmented[k][j];
246
- }
247
- }
248
- }
249
- // Back substitution
250
- const x = new Array(n).fill(0);
251
- for (let i = n - 1; i >= 0; i--) {
252
- let sum = augmented[i][n];
253
- for (let j = i + 1; j < n; j++) {
254
- sum -= augmented[i][j] * x[j];
255
- }
256
- x[i] = sum / augmented[i][i];
257
- }
258
- return createVector(x);
259
- }
260
- /**
261
- * Add design matrix column for intercept (column of ones)
262
- */
263
- export function addIntercept(X) {
264
- const data = X.data.map(row => [1, ...row]);
265
- return createMatrix(data);
266
- }
267
- /**
268
- * Compute condition number of a matrix (estimate)
269
- * Used to check numerical stability
270
- */
271
- export function conditionNumber(A) {
272
- // Simple estimate using Frobenius norm
273
- // For more accuracy, would need SVD
274
- const frobNorm = Math.sqrt(A.data.reduce((sum, row) => sum + row.reduce((rowSum, val) => rowSum + val * val, 0), 0));
275
- // Rough estimate - for exact condition number, compute ||A|| * ||A^-1||
276
- return frobNorm;
277
- }
278
- //# sourceMappingURL=linalg.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"linalg.js","sourceRoot":"","sources":["../../../src/malp/core/linalg.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH;;;GAGG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,KAAK,CAAC;AAE7B;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAgB;IAC3C,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAC;IAC1D,CAAC;IAED,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YAC5B,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,OAAO;QACL,IAAI;QACJ,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,IAAI;KACL,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,IAAc;IACzC,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,IAAI,CAAC,MAAM;KACpB,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClC,CAAC;QACD,MAAM,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;IAClB,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,MAAM,IAAI,GAAe,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAE3E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,IAAI,GAAe,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;IAEnF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAChC,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACrC,CAAC;YACD,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC;QACnB,CAAC;IACH,CAAC;IAED,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,CAAS;IAC5B,MAAM,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IACtD,OAAO,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAS,EAAE,OAAgB;IAClD,MAAM,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IAC7B,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACzE,OAAO,KAAK,GAAG,CAAC,CAAC,MAAM,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,OAAgB;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC;AACzC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,CAAS,EAAE,CAAS;IAC7C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IACnB,MAAM,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAEnB,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,OAAO,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,CAAS,EAAE,CAAS;IAC9C,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAC7B,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IACpB,MAAM,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;IAEpB,yBAAyB;IACzB,IAAI,IAAI,GAAG,OAAO,IAAI,IAAI,GAAG,OAAO,EAAE,CAAC;QACrC,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,CAAS,EAAE,CAAS;IACtC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,CAAS;IAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,CAAS,EAAE,CAAS;IAC5C,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACzE,CAAC;IAED,MAAM,MAAM,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAClC,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,CAAS,EAAE,CAAS;IACjD,MAAM,MAAM,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAC1C,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAC9B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS,EAAE,CAAS;IAC/C,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,cAAc;IACd,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;IAExB,gBAAgB;IAChB,MAAM,GAAG,GAAG,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAElC,gBAAgB;IAChB,MAAM,GAAG,GAAG,cAAc,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAElC,qEAAqE;IACrE,OAAO,iBAAiB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS;IACpD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;IAC3C,CAAC;IACD,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC;IAEjB,kCAAkC;IAClC,MAAM,SAAS,GAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE1E,4CAA4C;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3B,aAAa;QACb,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEvC,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACtC,IAAI,GAAG,GAAG,MAAM,EAAE,CAAC;gBACjB,MAAM,GAAG,GAAG,CAAC;gBACb,MAAM,GAAG,CAAC,CAAC;YACb,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,IAAI,MAAM,GAAG,OAAO,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QACzD,CAAC;QAED,YAAY;QACZ,IAAI,MAAM,KAAK,CAAC,EAAE,CAAC;YACjB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;QAED,mBAAmB;QACnB,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC5B,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IAED,oBAAoB;IACpB,MAAM,CAAC,GAAG,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAChC,IAAI,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1B,KAAK,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC/B,GAAG,IAAI,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,CAAC;QACD,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/B,CAAC;IAED,OAAO,YAAY,CAAC,CAAC,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,CAAS;IACpC,MAAM,IAAI,GAAe,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;IACxD,OAAO,YAAY,CAAC,IAAI,CAAC,CAAC;AAC5B,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,CAAS;IACvC,uCAAuC;IACvC,oCAAoC;IAEpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CACxB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACzB,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC,MAAM,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,CAC5D,CACF,CAAC;IAEF,wEAAwE;IACxE,OAAO,QAAQ,CAAC;AAClB,CAAC"}
@@ -1,68 +0,0 @@
1
- /**
2
- * Gradient Ascent Optimizer for MALP
3
- *
4
- * Maximizes concordance correlation coefficient through iterative optimization.
5
- * Uses adaptive learning rate and convergence detection.
6
- */
7
- export interface OptimizerConfig {
8
- learningRate: number;
9
- maxIterations: number;
10
- tolerance: number;
11
- momentum?: number;
12
- adaptive?: boolean;
13
- verbose?: boolean;
14
- }
15
- export interface OptimizationStep {
16
- iteration: number;
17
- ccc: number;
18
- gradientNorm: number;
19
- learningRate: number;
20
- }
21
- export interface OptimizerResult {
22
- weights: number[];
23
- finalCCC: number;
24
- iterations: number;
25
- converged: boolean;
26
- history: OptimizationStep[];
27
- }
28
- export interface OptimizationResult extends OptimizerResult {
29
- }
30
- export declare const DEFAULT_OPTIMIZER_CONFIG: Required<OptimizerConfig>;
31
- export declare class MALPOptimizer {
32
- private config;
33
- constructor(config?: Partial<OptimizerConfig>);
34
- /**
35
- * Optimize weights to maximize CCC between predictions and targets
36
- * @param X Feature matrix (n_samples × n_features)
37
- * @param y Target values (n_samples)
38
- * @param initialWeights Starting weights (optional)
39
- */
40
- optimize(X: number[][], y: number[], initialWeights?: number[]): OptimizerResult;
41
- /**
42
- * Compute gradient of CCC with respect to weights
43
- * Uses finite differences for numerical gradient
44
- */
45
- private computeGradient;
46
- /**
47
- * Compute predictions from features and weights
48
- */
49
- private predict;
50
- /**
51
- * Set new configuration
52
- */
53
- setConfig(config: Partial<OptimizerConfig>): void;
54
- }
55
- /**
56
- * Perform line search to find optimal learning rate
57
- */
58
- export declare function lineSearch(X: number[][], y: number[], weights: number[], gradient: number[], maxLR?: number, nSteps?: number): number;
59
- /**
60
- * Alias for MALPOptimizer for backward compatibility
61
- */
62
- export declare class GradientAscentOptimizer extends MALPOptimizer {
63
- }
64
- /**
65
- * Convenience function to optimize MALP weights
66
- */
67
- export declare function optimizeMALP(X: number[][], y: number[], config?: Partial<OptimizerConfig>): OptimizerResult;
68
- //# sourceMappingURL=optimizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"optimizer.d.ts","sourceRoot":"","sources":["../../../src/malp/core/optimizer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,WAAW,eAAe;IAC9B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,gBAAgB;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,gBAAgB,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,kBAAmB,SAAQ,eAAe;CAAG;AAE9D,eAAO,MAAM,wBAAwB,EAAE,QAAQ,CAAC,eAAe,CAO9D,CAAC;AAEF,qBAAa,aAAa;IACxB,OAAO,CAAC,MAAM,CAA4B;gBAE9B,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM;IAWjD;;;;;OAKG;IACH,QAAQ,CACN,CAAC,EAAE,MAAM,EAAE,EAAE,EACb,CAAC,EAAE,MAAM,EAAE,EACX,cAAc,CAAC,EAAE,MAAM,EAAE,GACxB,eAAe;IAqFlB;;;OAGG;IACH,OAAO,CAAC,eAAe;IAwBvB;;OAEG;IACH,OAAO,CAAC,OAAO;IAMf;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,IAAI;CAGlD;AAED;;GAEG;AACH,wBAAgB,UAAU,CACxB,CAAC,EAAE,MAAM,EAAE,EAAE,EACb,CAAC,EAAE,MAAM,EAAE,EACX,OAAO,EAAE,MAAM,EAAE,EACjB,QAAQ,EAAE,MAAM,EAAE,EAClB,KAAK,GAAE,MAAY,EACnB,MAAM,GAAE,MAAW,GAClB,MAAM,CAmBR;AAED;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,aAAa;CAAG;AAE7D;;GAEG;AACH,wBAAgB,YAAY,CAC1B,CAAC,EAAE,MAAM,EAAE,EAAE,EACb,CAAC,EAAE,MAAM,EAAE,EACX,MAAM,GAAE,OAAO,CAAC,eAAe,CAAM,GACpC,eAAe,CAGjB"}
@@ -1,160 +0,0 @@
1
- /**
2
- * Gradient Ascent Optimizer for MALP
3
- *
4
- * Maximizes concordance correlation coefficient through iterative optimization.
5
- * Uses adaptive learning rate and convergence detection.
6
- */
7
- import { calculateCCC } from './ccc';
8
- export const DEFAULT_OPTIMIZER_CONFIG = {
9
- learningRate: 0.01,
10
- maxIterations: 1000,
11
- tolerance: 1e-6,
12
- momentum: 0.9,
13
- adaptive: true,
14
- verbose: false
15
- };
16
- export class MALPOptimizer {
17
- config;
18
- constructor(config = {}) {
19
- this.config = {
20
- learningRate: config.learningRate ?? 0.01,
21
- maxIterations: config.maxIterations ?? 1000,
22
- tolerance: config.tolerance ?? 1e-6,
23
- momentum: config.momentum ?? 0.9,
24
- adaptive: config.adaptive ?? true,
25
- verbose: config.verbose ?? false
26
- };
27
- }
28
- /**
29
- * Optimize weights to maximize CCC between predictions and targets
30
- * @param X Feature matrix (n_samples × n_features)
31
- * @param y Target values (n_samples)
32
- * @param initialWeights Starting weights (optional)
33
- */
34
- optimize(X, y, initialWeights) {
35
- const nSamples = X.length;
36
- const nFeatures = X[0].length;
37
- // Initialize weights
38
- let weights = initialWeights ?? Array(nFeatures).fill(0).map(() => (Math.random() - 0.5) * 0.01);
39
- // Velocity for momentum
40
- let velocity = Array(nFeatures).fill(0);
41
- const history = [];
42
- let learningRate = this.config.learningRate;
43
- let prevCCC = -Infinity;
44
- for (let iter = 0; iter < this.config.maxIterations; iter++) {
45
- // Compute predictions
46
- const predictions = this.predict(X, weights);
47
- // Compute CCC and gradient
48
- const cccResult = calculateCCC(predictions, y);
49
- const gradient = this.computeGradient(X, y, predictions, cccResult);
50
- const gradientNorm = Math.sqrt(gradient.reduce((sum, g) => sum + g * g, 0));
51
- // Record history
52
- history.push({
53
- iteration: iter,
54
- ccc: cccResult.ccc,
55
- gradientNorm,
56
- learningRate
57
- });
58
- if (this.config.verbose && iter % 100 === 0) {
59
- console.log(`Iteration ${iter}: CCC = ${cccResult.ccc.toFixed(6)}, ` +
60
- `Gradient Norm = ${gradientNorm.toFixed(6)}`);
61
- }
62
- // Check convergence
63
- if (gradientNorm < this.config.tolerance) {
64
- return {
65
- weights,
66
- finalCCC: cccResult.ccc,
67
- iterations: iter + 1,
68
- converged: true,
69
- history
70
- };
71
- }
72
- // Adaptive learning rate
73
- if (this.config.adaptive) {
74
- if (cccResult.ccc < prevCCC) {
75
- learningRate *= 0.5; // Reduce if CCC decreased
76
- }
77
- else if (iter > 0 && cccResult.ccc > prevCCC) {
78
- learningRate *= 1.05; // Increase if improving
79
- }
80
- }
81
- // Update weights with momentum
82
- for (let j = 0; j < nFeatures; j++) {
83
- velocity[j] = this.config.momentum * velocity[j] +
84
- learningRate * gradient[j];
85
- weights[j] += velocity[j];
86
- }
87
- prevCCC = cccResult.ccc;
88
- }
89
- // Max iterations reached
90
- const finalPredictions = this.predict(X, weights);
91
- const finalCCC = calculateCCC(finalPredictions, y).ccc;
92
- return {
93
- weights,
94
- finalCCC,
95
- iterations: this.config.maxIterations,
96
- converged: false,
97
- history
98
- };
99
- }
100
- /**
101
- * Compute gradient of CCC with respect to weights
102
- * Uses finite differences for numerical gradient
103
- */
104
- computeGradient(X, y, predictions, cccResult) {
105
- const nFeatures = X[0].length;
106
- const gradient = Array(nFeatures).fill(0);
107
- const epsilon = 1e-5;
108
- // Numerical gradient via finite differences
109
- for (let j = 0; j < nFeatures; j++) {
110
- // Perturb feature contribution
111
- const perturbedPreds = predictions.map((pred, i) => pred + epsilon * X[i][j]);
112
- const perturbedCCC = calculateCCC(perturbedPreds, y).ccc;
113
- gradient[j] = (perturbedCCC - cccResult.ccc) / epsilon;
114
- }
115
- return gradient;
116
- }
117
- /**
118
- * Compute predictions from features and weights
119
- */
120
- predict(X, weights) {
121
- return X.map(row => row.reduce((sum, val, j) => sum + val * weights[j], 0));
122
- }
123
- /**
124
- * Set new configuration
125
- */
126
- setConfig(config) {
127
- this.config = { ...this.config, ...config };
128
- }
129
- }
130
- /**
131
- * Perform line search to find optimal learning rate
132
- */
133
- export function lineSearch(X, y, weights, gradient, maxLR = 1.0, nSteps = 10) {
134
- let bestLR = 0;
135
- let bestCCC = -Infinity;
136
- for (let i = 0; i <= nSteps; i++) {
137
- const lr = (i / nSteps) * maxLR;
138
- const testWeights = weights.map((w, j) => w + lr * gradient[j]);
139
- const predictions = X.map(row => row.reduce((sum, val, j) => sum + val * testWeights[j], 0));
140
- const ccc = calculateCCC(predictions, y).ccc;
141
- if (ccc > bestCCC) {
142
- bestCCC = ccc;
143
- bestLR = lr;
144
- }
145
- }
146
- return bestLR;
147
- }
148
- /**
149
- * Alias for MALPOptimizer for backward compatibility
150
- */
151
- export class GradientAscentOptimizer extends MALPOptimizer {
152
- }
153
- /**
154
- * Convenience function to optimize MALP weights
155
- */
156
- export function optimizeMALP(X, y, config = {}) {
157
- const optimizer = new MALPOptimizer(config);
158
- return optimizer.optimize(X, y);
159
- }
160
- //# sourceMappingURL=optimizer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"optimizer.js","sourceRoot":"","sources":["../../../src/malp/core/optimizer.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- /**
2
- * MALP - Maximum Agreement Linear Predictor
3
- *
4
- * A regression library that maximizes the Concordance Correlation Coefficient (CCC)
5
- * instead of minimizing squared error. Optimized for measurement validation,
6
- * method comparison, and scenarios requiring high agreement between predictions
7
- * and observations.
8
- *
9
- * @module malp
10
- *
11
- * @example
12
- * ```typescript
13
- * import { MALPRegressor, compareMALPvsOLS } from 'agentdb/malp';
14
- *
15
- * // Fit MALP model
16
- * const model = new MALPRegressor();
17
- * model.fit(X, y);
18
- * const predictions = model.predict(X);
19
- * const cccScore = model.score(X, y);
20
- *
21
- * // Compare with OLS
22
- * const comparison = compareMALPvsOLS(X_train, y_train, X_test, y_test);
23
- * console.log(comparison.summary);
24
- * ```
25
- */
26
- export { type Matrix, type Vector, createMatrix, createVector, matVecMultiply, matMatMultiply, transpose, leastSquares, mean, std, variance, covariance, pearsonCorr, dot, norm, vectorAdd, vectorSubtract, scalarMultiply, addIntercept, EPSILON } from './core/linalg';
27
- export { type CCCComponents, computeCCC, computeCCCGradient, computeCCCHessianDiagonal, cccLoss, interpretCCC, validateCCC } from './core/ccc';
28
- export { type OptimizerConfig, type OptimizationStep, type OptimizationResult, GradientAscentOptimizer, optimizeMALP, DEFAULT_OPTIMIZER_CONFIG } from './core/optimizer';
29
- export { type MALPConfig, type MALPRegressorConfig, type FitResult, MALPRegressor, fitMALP, crossValidateMALP, DEFAULT_MALP_CONFIG } from './models/regressor';
30
- export { type AgreementMetrics, type BlandAltmanAnalysis, computeAgreementMetrics, blandAltmanAnalysis, computePrecisionMetrics, computeBiasMetrics, isAgreementAcceptable, generateAgreementReport } from './metrics/agreement';
31
- export { type RegressionMetrics, type ComparisonResults, OLSRegressor, computeRegressionMetrics, compareMALPvsOLS, crossValidateComparison } from './metrics/comparison';
32
- export declare const MALP_VERSION = "1.0.0";
33
- //# sourceMappingURL=index.d.ts.map