284
284
</ div >
285
285
</ div >
286
286
< div class ="form-group form-row mb-1 ">
287
- < label for ="decision_function_shape " class ="col-form-label col-md-4 "> Decision Shape</ label >
287
+ < label for ="decision_function_shape " class ="col-form-label col-md-4 my-1 "> Decision Shape</ label >
288
288
< div class ="col-md-8 ">
289
289
< select class ="custom-select my-1 mr-sm-2 " name ="decision_function_shape " id ="decision_function_shape ">
290
290
< option value ="ovr " selected > One v. Rest</ option >
297
297
</ form >
298
298
</ div >
299
299
< div class ="tab-pane fade " id ="logit " role ="tabpanel ">
300
- < p > Logistic Regression</ p >
301
300
< form class ="form ">
302
301
< input type ="hidden " name ="model " value ="logit " />
302
+ < div class ="row ">
303
+ < div class ="col-md-3 ">
304
+ < div class ="form-group form-row mb-1 ">
305
+ < label for ="solver " class ="col-form-label col-md-4 "> Solver</ label >
306
+ < div class ="col-md-8 ">
307
+ < select class ="custom-select my-1 mr-sm-2 " name ="solver " id ="solver ">
308
+ < option value ="newton-cg "> Newton-CG</ option >
309
+ < option value ="lbfgs "> LBFGS</ option >
310
+ < option value ="liblinear " selected > LibLinear</ option >
311
+ < option value ="sag "> SAG</ option >
312
+ < option value ="saga "> SAGA</ option >
313
+ </ select >
314
+ </ div >
315
+ </ div >
316
+ < div class ="form-row ">
317
+ < label for ="penalty " class ="col-form-label col-md-4 "> Penalty</ label >
318
+ < div class ="col-md-8 ">
319
+ < div class ="form-check ">
320
+ < input class ="form-check-input " type ="radio " name ="penalty " id ="penalty1 " value ="l1 ">
321
+ < label class ="form-check-label " for ="penalty1 ">
322
+ L1
323
+ </ label >
324
+ </ div >
325
+ < div class ="form-check ">
326
+ < input class ="form-check-input " type ="radio " name ="penalty " id ="penalty2 " value ="l2 " checked >
327
+ < label class ="form-check-label " for ="penalty2 ">
328
+ L2
329
+ </ label >
330
+ </ div >
331
+ < div class ="form-check ">
332
+ < input class ="form-check-input " type ="radio " name ="penalty " id ="penalty3 " value ="elasticnet " disabled >
333
+ < label class ="form-check-label " for ="penalty3 ">
334
+ ElasticNet
335
+ </ label >
336
+ </ div >
337
+ < div class ="form-check ">
338
+ < input class ="form-check-input " type ="radio " name ="penalty " id ="penalty4 " value ="none " disabled >
339
+ < label class ="form-check-label " for ="penalty4 ">
340
+ None
341
+ </ label >
342
+ </ div >
343
+ </ div >
344
+ </ div >
345
+ </ div >
346
+ < div class ="col-md-3 ">
347
+ < div class ="form-group form-row mb-1 ">
348
+ < label for ="C " class ="col-form-label col-md-5 "> C</ label >
349
+ < div class ="col-md-7 ">
350
+ < input class ="form-control " type ="text " name ="C " id ="C " value ="1.0 " />
351
+ </ div >
352
+ </ div >
353
+ < div class ="form-group form-row mb-1 ">
354
+ < label for ="intercept_scaling " class ="col-form-label col-md-5 "> Scale Intercept</ label >
355
+ < div class ="col-md-7 ">
356
+ < input class ="form-control " type ="text " name ="intercept_scaling " id ="intercept_scaling " value ="1.0 " />
357
+ </ div >
358
+ </ div >
359
+ < div class ="form-group form-row mb-1 ">
360
+ < label for ="l1_ratio " class ="col-form-label col-md-5 "> L1 Ratio</ label >
361
+ < div class ="col-md-7 ">
362
+ < input class ="form-control " type ="text " name ="l1_ratio " id ="l1_ratio " value ="0.5 " disabled />
363
+ </ div >
364
+ </ div >
365
+ </ div >
366
+ < div class ="col-md-3 ">
367
+ < div class ="row ">
368
+ < div class ="col-md-4 "> </ div >
369
+ < div class ="col-md-8 ">
370
+ < div class ="form-check ">
371
+ < input class ="form-check-input " type ="checkbox " name ="fit_intercept " id ="fit_intercept " checked >
372
+ < label class ="form-check-label " for ="fit_intercept "> Fit Intercept</ label >
373
+ </ div >
374
+ < div class ="form-check ">
375
+ < input class ="form-check-input " type ="checkbox " name ="dual " id ="dual ">
376
+ < label class ="form-check-label " for ="dual "> Dual</ label >
377
+ </ div >
378
+ </ div >
379
+ </ div >
380
+ < div class ="form-group form-row mb-1 ">
381
+ < label for ="multi_class " class ="col-form-label col-md-4 my-1 "> Multi-Class</ label >
382
+ < div class ="col-md-8 ">
383
+ < select class ="custom-select my-1 mr-sm-2 " name ="multi_class " id ="multi_class ">
384
+ < option value ="auto " selected > Auto</ option >
385
+ < option value ="ovr "> One v. Rest</ option >
386
+ < option value ="multinomial "> Multinomial</ option >
387
+ </ select >
388
+ </ div >
389
+ </ div >
390
+ </ div >
391
+ < div class ="col-md-3 ">
392
+ < div class ="form-group form-row mb-1 ">
393
+ < label for ="class_weight " class ="col-form-label col-md-5 "> Class Weight</ label >
394
+ < div class ="col-md-7 ">
395
+ < input class ="form-control " type ="text " name ="class_weight " id ="class_weight " value ="null " />
396
+ </ div >
397
+ </ div >
398
+ < div class ="form-group form-row mb-1 ">
399
+ < label for ="tol " class ="col-form-label col-md-5 "> Tol</ label >
400
+ < div class ="col-md-7 ">
401
+ < input class ="form-control " type ="text " name ="tol " id ="tol " value ="0.0001 " />
402
+ </ div >
403
+ </ div >
404
+ < div class ="form-group form-row mb-1 ">
405
+ < label for ="max_iter " class ="col-form-label col-md-5 "> Max Iter</ label >
406
+ < div class ="col-md-7 ">
407
+ < input class ="form-control " type ="number " name ="max_iter " id ="max_iter " value ="100 " step ="10 " min ="10 " max ="10000 " />
408
+ </ div >
409
+ </ div >
410
+ </ div >
411
+ </ div >
303
412
</ form >
304
413
</ div >
305
414
</ div > <!-- model tabs ends -->
@@ -441,35 +550,35 @@ <h5 class="modal-title" id="svmInfoModalLabel">Support Vector Machines</h5>
441
550
</ p >
442
551
< h6 > Hyperparameters</ h6 >
443
552
< dl >
444
- < dt > C < code > float</ code > </ dt >
553
+ < dt > C · < code > float</ code > </ dt >
445
554
< dd > Penalty parameter C of the error term.</ dd >
446
- < dt > kernel < code > string </ code > </ dt >
555
+ < dt > kernel · < code > {'linear', 'poly', 'rbf', 'sigmoid', 'precomputed', None} </ code > </ dt >
447
556
< dd >
448
- Specifies the kernel type to be used in the algorithm. It must be one of ‘linear’, ‘poly’,
449
- ‘rbf’, ‘sigmoid’, ‘precomputed’ or a callable. If none is given, ‘rbf’ will be used. If a
450
- callable is given it is used to pre-compute the kernel matrix from data matrices; that
557
+ Specifies the kernel type to be used in the algorithm. It must be one of the string
558
+ choices or a callable. If None is given, ‘rbf’ will be used. If a callable is given
559
+ it is used to pre-compute the kernel matrix from data matrices; that
451
560
matrix should be an array of shape < code > (n_samples, n_samples)</ code > .
452
561
</ dd >
453
- < dt > degree < code > int</ code > </ dt >
562
+ < dt > degree · < code > int</ code > </ dt >
454
563
< dd > Degree of the polynomial kernel function (‘poly’). Ignored by all other kernels.</ dd >
455
- < dt > gamma < code > float</ code > </ dt >
564
+ < dt > gamma · < code > float</ code > </ dt >
456
565
< dd > Kernel coefficient for ‘rbf’, ‘poly’ and ‘sigmoid’.</ dd >
457
- < dt > coef0 < code > float</ code > </ dt >
566
+ < dt > coef0 · < code > float</ code > </ dt >
458
567
< dd > Independent term in kernel function. It is only significant in ‘poly’ and ‘sigmoid’.</ dd >
459
- < dt > shrinking < code > boolean</ code > </ dt >
568
+ < dt > shrinking · < code > boolean</ code > </ dt >
460
569
< dd > Whether to use the shrinking heuristic.</ dd >
461
- < dt > tol < code > float</ code > </ dt >
570
+ < dt > tol · < code > float</ code > </ dt >
462
571
< dd > Tolerance for stopping criterion.</ dd >
463
- < dt > class_weight < code > {dict, 'balanced'}</ code > </ dt >
572
+ < dt > class_weight · < code > {dict, 'balanced'}</ code > </ dt >
464
573
< dd >
465
574
Set the parameter C of class i to class_weight[i]*C for SVC. If not given, all classes are
466
575
supposed to have weight one. The “balanced” mode uses the values of y to automatically adjust
467
576
weights inversely proportional to class frequencies in the input data as
468
577
< code > n_samples / (n_classes * np.bincount(y))</ code >
469
578
</ dd >
470
- < dt > max_iter < code > int</ code > </ dt >
579
+ < dt > max_iter · < code > int</ code > </ dt >
471
580
< dd > Hard limit on iterations within solver, or -1 for no limit.</ dd >
472
- < dt > decision_function_shape < code > {‘ovo’, ‘ovr’}</ code > </ dt >
581
+ < dt > decision_function_shape · < code > {‘ovo’, ‘ovr’}</ code > </ dt >
473
582
< dd >
474
583
Whether to return a one-vs-rest (‘ovr’) decision function of shape < code > (n_samples, n_classes)</ code >
475
584
as all other classifiers, or the original one-vs-one (‘ovo’) decision function of libsvm which has shape
@@ -496,12 +605,65 @@ <h5 class="modal-title" id="logitInfoModalLabel">Logistic Regression</h5>
496
605
</ button >
497
606
</ div >
498
607
< div class ="modal-body ">
499
- < p > TODO</ p >
608
+ < p >
609
+ < a href ="https://scikit-learn.org/stable/modules/linear_model.html#logistic-regression " target ="_blank ">
610
+ Logistic Regression</ a > is a supervised classification algorithm that models the probabilities
611
+ describing the possible outcome (class) of a single trial using a logistic function. This method
612
+ is also known as a logit regression, maximum-entropy classifier, or log-linear classifier.
613
+ </ p >
500
614
501
615
< h6 > Hyperparameters</ h6 >
502
616
< dl >
503
- < dt > param < code > type</ code > </ dt >
504
- < dd > description</ dd >
617
+ < dt > penalty · < code > {'l1', 'l2', 'elasticnet', 'none'}</ code > </ dt >
618
+ < dd >
619
+ Used to specify the norm used in the penalization. The ‘newton-cg’, ‘sag’ and ‘lbfgs’ solvers
620
+ support only l2 penalties. ‘elasticnet’ is only supported by the ‘saga’ solver. If ‘none’ (not
621
+ supported by the liblinear solver), no regularization is applied.
622
+ </ dd >
623
+ < dt > dual · < code > bool</ code > </ dt >
624
+ < dd >
625
+ Dual or primal formulation. Dual formulation is only implemented for l2 penalty with liblinear
626
+ solver. Prefer < code > dual=False</ code > when < code > n_samples > n_features</ code > .
627
+ </ dd >
628
+ < dt > tol · < code > float</ code > </ dt >
629
+ < dd > Tolerance for stopping criteria.</ dd >
630
+ < dt > C · < code > float</ code > </ dt >
631
+ < dd >
632
+ Inverse of regularization strength; must be a positive float. Like in support vector machines,
633
+ smaller values specify stronger regularization.
634
+ </ dd >
635
+ < dt > fit_intercept · < code > bool</ code > </ dt >
636
+ < dd > Specifies if a constant (a.k.a. bias or intercept) should be added to the decision function.</ dd >
637
+ < dt > intercept_scaling · < code > float</ code > </ dt >
638
+ < dd >
639
+ Useful only when the solver ‘liblinear’ is used and self.fit_intercept is set to True. In this case,
640
+ x becomes < code > [x, self.intercept_scaling]</ code > , i.e. a “synthetic” feature with constant value
641
+ equal to intercept_scaling is appended to the instance vector.
642
+ </ dd >
643
+ < dt > class_weight · < code > {dict, 'balanced'}</ code > </ dt >
644
+ < dd >
645
+ Weights associated with classes in the form {class_label: weight}. If not given, all classes are
646
+ supposed to have weight one. The “balanced” mode uses the values of y to automatically adjust weights
647
+ inversely proportional to class frequencies in the input data as
648
+ < code > n_samples / (n_classes * np.bincount(y)).</ code >
649
+ </ dd >
650
+ < dt > solver · < code > {'newton-cg', 'lbfgs', 'liblinear', 'sag', 'saga'}</ code > </ dt >
651
+ < dd > Algorithm to use in the optimization problem.</ dd >
652
+ < dt > max_iter · < code > int</ code > </ dt >
653
+ < dd > Maximum number of iterations taken for the solvers to converge.</ dd >
654
+ < dt > multi_class · < code > {'ovr', 'multinomial', 'auto'}</ code > </ dt >
655
+ < dd >
656
+ If the option chosen is ‘ovr’, then a binary problem is fit for each label. For ‘multinomial’ the
657
+ loss minimised is the multinomial loss fit across the entire probability distribution, even when the
658
+ data is binary. ‘multinomial’ is unavailable when solver=’liblinear’. ‘auto’ selects ‘ovr’ if the
659
+ data is binary, or if solver=’liblinear’, and otherwise selects ‘multinomial’.
660
+ </ dd >
661
+ < dt > l1_ratio · < code > float</ code > </ dt >
662
+ < dd >
663
+ The Elastic-Net mixing parameter, with < code > 0 < = l1_ratio < =1</ code > . Only used if < code > penalty='elasticnet'</ code > .
664
+ Setting < code > l1_ratio=0</ code > is equivalent to using < code > penalty='l2'</ code > , while setting < code > l1_ratio=1</ code >
665
+ is equivalent to using < code > penalty='l1'</ code > . For < code > 0 < l1 _ratio < 1 </ code > , the penalty is a combination of L1 and L2.
666
+ </ dd >
505
667
</ dl >
506
668
</ div >
507
669
< div class ="modal-footer ">
0 commit comments