aelius commited on
Commit
e8ee06b
·
1 Parent(s): 537de1e

- slider values in inputs arguments when calling change methods
- use of partial to call the main function

Files changed (1) hide show
  1. app.py +13 -10
app.py CHANGED
@@ -1,5 +1,7 @@
1
  import numpy as np
2
  import matplotlib.pyplot as plt
 
 
3
  from scipy import linalg
4
  from sklearn.datasets import make_sparse_spd_matrix
5
  from sklearn.covariance import GraphicalLassoCV, ledoit_wolf
@@ -125,15 +127,15 @@ title = "Sparse inverse covariance estimation"
125
  with gr.Blocks(title=title) as demo:
126
  gr.Markdown(f"## {title}")
127
  gr.Markdown("Estimating covariance and sparse precision from a small number of samples using GraphicalLasso and Ledoit-Wolf algorithms.")
128
- n_samples = gr.Slider(minimum=20, maximum=100, step=5,
129
  label = "Number of Samples")
130
- n_features = gr.Slider(minimum=10, maximum=100, step=5,
131
  label = "Number of features")
132
- alpha = gr.Slider(minimum=0, maximum=1, step=0.1,
133
  label = "sparsity coefficient (alpha)")
134
- smallest_coef = gr.Slider(minimum=0, maximum=1, step=0.1,
135
  label = "minimum correlation value")
136
- largest_coef = gr.Slider(minimum=0, maximum=1, step=0.1,
137
  label = "maximum correlation value")
138
 
139
  models = ['empirical', 'lasso', 'leidot-wolf']
@@ -142,11 +144,12 @@ with gr.Blocks(title=title) as demo:
142
 
143
  model = models[model_counter]
144
  plot = gr.Plot(label=model)
145
- n_samples.change(fn=compute_and_plot, inputs=[0.98, 0.4, 0.7, 20, 60, 'covariance', model], outputs=plot)
146
- n_features.change(fn=compute_and_plot, inputs=[0.98, 0.4, 0.7, 20, 60, 'covariance', model], outputs=plot)
147
- alpha.change(fn=compute_and_plot, inputs=[0.98, 0.4, 0.7, 20, 60, 'covariance', model], outputs=plot)
148
- smallest_coef.change(fn=compute_and_plot, inputs=[0.98, 0.4, 0.7, 20, 60, 'covariance', model], outputs=plot)
149
- largest_coef.change(fn=compute_and_plot, inputs=[0.98, 0.4, 0.7, 20, 60, 'covariance', model], outputs=plot)
 
150
 
151
 
152
  demo.launch()
 
1
  import numpy as np
2
  import matplotlib.pyplot as plt
3
+
4
+ from functools import partial
5
  from scipy import linalg
6
  from sklearn.datasets import make_sparse_spd_matrix
7
  from sklearn.covariance import GraphicalLassoCV, ledoit_wolf
 
127
  with gr.Blocks(title=title) as demo:
128
  gr.Markdown(f"## {title}")
129
  gr.Markdown("Estimating covariance and sparse precision from a small number of samples using GraphicalLasso and Ledoit-Wolf algorithms.")
130
+ n_samples = gr.Slider(minimum=20, maximum=100, step=5, value=60,
131
  label = "Number of Samples")
132
+ n_features = gr.Slider(minimum=10, maximum=100, step=5, value=20,
133
  label = "Number of features")
134
+ alpha = gr.Slider(minimum=0, maximum=1, step=0.1, value=0.98,
135
  label = "sparsity coefficient (alpha)")
136
+ smallest_coef = gr.Slider(minimum=0, maximum=1, step=0.1, value=0.4,
137
  label = "minimum correlation value")
138
+ largest_coef = gr.Slider(minimum=0, maximum=1, step=0.1, value=0.7,
139
  label = "maximum correlation value")
140
 
141
  models = ['empirical', 'lasso', 'leidot-wolf']
 
144
 
145
  model = models[model_counter]
146
  plot = gr.Plot(label=model)
147
+ fn = partial(compute_and_plot, model=input_model, measure='covariance')
148
+ n_samples.change(fn=fn, inputs=[alpha, smallest_coef, largest_coef, n_features, n_samples], outputs=plot)
149
+ n_features.change(fn=fn, inputs=[alpha, smallest_coef, largest_coef, n_features, n_samples], outputs=plot)
150
+ alpha.change(fn=fn, inputs=[alpha, smallest_coef, largest_coef, n_features, n_samples], outputs=plot)
151
+ smallest_coef.change(fn=fn, inputs=[alpha, smallest_coef, largest_coef, n_features, n_samples], outputs=plot)
152
+ largest_coef.change(fn=fn, inputs=[alpha, smallest_coef, largest_coef, n_features, n_samples], outputs=plot)
153
 
154
 
155
  demo.launch()