particle_swarm_optimization   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 37
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 24
dl 0
loc 37
rs 10
c 0
b 0
f 0
wmc 1

1 Function

Rating   Name   Duplication   Size   Complexity  
A model() 0 6 1
1
from sklearn.datasets import load_iris
2
from sklearn.neighbors import KNeighborsClassifier
3
from sklearn.model_selection import cross_val_score
4
5
from hyperactive import Hyperactive
6
from hyperactive.optimizers import ParticleSwarmOptimizer
7
8
9
data = load_iris()
10
X, y = data.data, data.target
11
12
13
def model(opt):
14
    knr = KNeighborsClassifier(n_neighbors=opt["n_neighbors"])
15
    scores = cross_val_score(knr, X, y, cv=5)
16
    score = scores.mean()
17
18
    return score
19
20
21
search_space = {
22
    "n_neighbors": list(range(1, 100)),
23
}
24
25
26
optimizer = ParticleSwarmOptimizer(
27
    inertia=0.4,
28
    cognitive_weight=0.7,
29
    social_weight=0.7,
30
    temp_weight=0.3,
31
    rand_rest_p=0.05,
32
)
33
34
hyper = Hyperactive()
35
hyper.add_search(model, search_space, optimizer=optimizer, n_iter=100)
36
hyper.run()
37