pyerualjetwork 4.3.8.dev7__py3-none-any.whl → 4.3.8.dev9__py3-none-any.whl
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.
- pyerualjetwork/__init__.py +1 -1
- {pyerualjetwork-4.3.8.dev7.dist-info → pyerualjetwork-4.3.8.dev9.dist-info}/METADATA +1 -1
- {pyerualjetwork-4.3.8.dev7.dist-info → pyerualjetwork-4.3.8.dev9.dist-info}/RECORD +7 -7
- pyerualjetwork_afterburner/__init__.py +1 -1
- pyerualjetwork_afterburner/planeat_cuda.py +78 -60
- {pyerualjetwork-4.3.8.dev7.dist-info → pyerualjetwork-4.3.8.dev9.dist-info}/WHEEL +0 -0
- {pyerualjetwork-4.3.8.dev7.dist-info → pyerualjetwork-4.3.8.dev9.dist-info}/top_level.txt +0 -0
pyerualjetwork/__init__.py
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
__version__ = "4.3.
|
1
|
+
__version__ = "4.3.8dev9"
|
2
2
|
__update__ = "* Changes: https://github.com/HCB06/PyerualJetwork/blob/main/CHANGES\n* PyerualJetwork Homepage: https://github.com/HCB06/PyerualJetwork/tree/main\n* PyerualJetwork document: https://github.com/HCB06/PyerualJetwork/blob/main/Welcome_to_PyerualJetwork/PYERUALJETWORK_USER_MANUEL_AND_LEGAL_INFORMATION(EN).pdf\n* YouTube tutorials: https://www.youtube.com/@HasanCanBeydili"
|
3
3
|
|
4
4
|
def print_version(__version__):
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pyerualjetwork
|
3
|
-
Version: 4.3.8.
|
3
|
+
Version: 4.3.8.dev9
|
4
4
|
Summary: PyerualJetwork is a machine learning library supported with GPU(CUDA) acceleration written in Python for professionals and researchers including with PLAN algorithm, PLANEAT algorithm (genetic optimization). Also includes data pre-process and memory manegament
|
5
5
|
Author: Hasan Can Beydili
|
6
6
|
Author-email: tchasancan@gmail.com
|
@@ -1,4 +1,4 @@
|
|
1
|
-
pyerualjetwork/__init__.py,sha256=
|
1
|
+
pyerualjetwork/__init__.py,sha256=G8OqEzKVAHRAxqoWm8c1I1TiiZyk0qaKDDFYDPSG4rY,643
|
2
2
|
pyerualjetwork/activation_functions.py,sha256=AR91fQV2W2rc-Qb4Yp7b8ucYpGjwyQUewO-M-lyEMs8,7729
|
3
3
|
pyerualjetwork/activation_functions_cuda.py,sha256=ztIw6rMR4t1289_TPIGYwE6qarl_YbSOGj5Ep3rUMqs,11803
|
4
4
|
pyerualjetwork/data_operations.py,sha256=Flteouu6rfSo2uHMqBHuzO02dXmbNa-I5qWmUpGTZ5Y,14760
|
@@ -18,7 +18,7 @@ pyerualjetwork/planeat_cuda.py,sha256=QNHCQLkR0MNFqyN2iHAtC7cbf8qZiD3p_54YH3lnMF
|
|
18
18
|
pyerualjetwork/ui.py,sha256=wu2BhU1k-w3Kcho5Jtq4SEKe68ftaUeRGneUOSCVDjU,575
|
19
19
|
pyerualjetwork/visualizations.py,sha256=VL00sX2DZz83F__PyEJH9s1LizuXpOBzWjnoSjMJIJ0,28770
|
20
20
|
pyerualjetwork/visualizations_cuda.py,sha256=KbMhfsLlxujy_i3QrwCf734Q-k6d7Zn_7CEbm3gzK9w,29186
|
21
|
-
pyerualjetwork_afterburner/__init__.py,sha256=
|
21
|
+
pyerualjetwork_afterburner/__init__.py,sha256=IyLYEXnGrr286xZo-Hz2NbmHWHCAnN2dXJ3BxelSJMI,655
|
22
22
|
pyerualjetwork_afterburner/activation_functions.py,sha256=bKf00lsuuLJNO-4vVp4OqBi4zJ-qZ8L3v-vl52notkY,7721
|
23
23
|
pyerualjetwork_afterburner/activation_functions_cuda.py,sha256=5y1Ti3GDfDteQDCUmODwe7tAyDAUlDTKmIikChQ8d6g,7772
|
24
24
|
pyerualjetwork_afterburner/data_operations.py,sha256=Flteouu6rfSo2uHMqBHuzO02dXmbNa-I5qWmUpGTZ5Y,14760
|
@@ -34,11 +34,11 @@ pyerualjetwork_afterburner/model_operations_cuda.py,sha256=NT01BK5nrDYE7H1x3KnSI
|
|
34
34
|
pyerualjetwork_afterburner/plan.py,sha256=EOXngujG7DQRf3cooFigKB7heQsEoK96JtrcKivT_pE,22449
|
35
35
|
pyerualjetwork_afterburner/plan_cuda.py,sha256=fg5YunEuBE7sK6q9paP_yAGONr9x0e19oF0J0DucejM,23380
|
36
36
|
pyerualjetwork_afterburner/planeat.py,sha256=Lq5R0aMS4UIdZdbUKsKDv5g0WLwYryomR3IQYb8vAa4,37573
|
37
|
-
pyerualjetwork_afterburner/planeat_cuda.py,sha256=
|
37
|
+
pyerualjetwork_afterburner/planeat_cuda.py,sha256=DhRUz8-6BRKEHEtBzEj4Pb1N0YM66C7wCnj49KoYqQk,39578
|
38
38
|
pyerualjetwork_afterburner/ui.py,sha256=wu2BhU1k-w3Kcho5Jtq4SEKe68ftaUeRGneUOSCVDjU,575
|
39
39
|
pyerualjetwork_afterburner/visualizations.py,sha256=1SKMZaJ80OD2qHUyMxW1IOv8zwmxzMPxclfbeq1Xr4g,28772
|
40
40
|
pyerualjetwork_afterburner/visualizations_cuda.py,sha256=KbMhfsLlxujy_i3QrwCf734Q-k6d7Zn_7CEbm3gzK9w,29186
|
41
|
-
pyerualjetwork-4.3.8.
|
42
|
-
pyerualjetwork-4.3.8.
|
43
|
-
pyerualjetwork-4.3.8.
|
44
|
-
pyerualjetwork-4.3.8.
|
41
|
+
pyerualjetwork-4.3.8.dev9.dist-info/METADATA,sha256=l02g36Sjd1Pd5L-w62nwEEJzg8MCoheuuBdi9C0pisQ,8384
|
42
|
+
pyerualjetwork-4.3.8.dev9.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
|
43
|
+
pyerualjetwork-4.3.8.dev9.dist-info/top_level.txt,sha256=uK64ge08QQoPuXM3aiRVPgiQQtl8Fxm2-HieIut5Lwo,42
|
44
|
+
pyerualjetwork-4.3.8.dev9.dist-info/RECORD,,
|
@@ -1,4 +1,4 @@
|
|
1
|
-
__version__ = "4.3.
|
1
|
+
__version__ = "4.3.8dev9-afterburner"
|
2
2
|
__update__ = "* Changes: https://github.com/HCB06/PyerualJetwork/blob/main/CHANGES\n* PyerualJetwork Homepage: https://github.com/HCB06/PyerualJetwork/tree/main\n* PyerualJetwork document: https://github.com/HCB06/PyerualJetwork/blob/main/Welcome_to_PyerualJetwork/PYERUALJETWORK_USER_MANUEL_AND_LEGAL_INFORMATION(EN).pdf\n* YouTube tutorials: https://www.youtube.com/@HasanCanBeydili"
|
3
3
|
|
4
4
|
def print_version(__version__):
|
@@ -299,30 +299,36 @@ def evolver(weights,
|
|
299
299
|
mutated_act = bad_activations.copy()
|
300
300
|
|
301
301
|
if __name__ == '__main__':
|
302
|
+
process_func = partial(process_single, policy=policy, best_weight=best_weight,
|
303
|
+
best_activations=best_activations, good_weights=good_weights,
|
304
|
+
good_activations=good_activations, bad_weights=bad_weights,
|
305
|
+
bad_activations=bad_activations, best_fitness=best_fitness,
|
306
|
+
normalized_fitness=normalized_fitness, child_W=child_W,
|
307
|
+
child_act=child_act, mutated_W=mutated_W, mutated_act=mutated_act,
|
308
|
+
cross_over_mode=cross_over_mode,
|
309
|
+
activation_selection_add_prob=activation_selection_add_prob,
|
310
|
+
activation_selection_change_prob=activation_selection_change_prob,
|
311
|
+
activation_selection_threshold=activation_selection_threshold,
|
312
|
+
bad_genomes_selection_prob=bad_genomes_selection_prob,
|
313
|
+
fitness_bias=fitness_bias,
|
314
|
+
epsilon=epsilon,
|
315
|
+
bad_genomes_mutation_prob=bad_genomes_mutation_prob,
|
316
|
+
activation_mutate_prob=activation_mutate_prob,
|
317
|
+
activation_mutate_add_prob=activation_mutate_add_prob,
|
318
|
+
activation_mutate_delete_prob=activation_mutate_delete_prob,
|
319
|
+
activation_mutate_change_prob=activation_mutate_change_prob,
|
320
|
+
weight_mutate_prob=weight_mutate_prob,
|
321
|
+
weight_mutate_threshold=weight_mutate_threshold,
|
322
|
+
activation_mutate_threshold=activation_mutate_threshold)
|
323
|
+
|
302
324
|
with mp.Pool() as pool:
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
activation_selection_add_prob=activation_selection_add_prob,
|
311
|
-
activation_selection_change_prob=activation_selection_change_prob,
|
312
|
-
activation_selection_threshold=activation_selection_threshold,
|
313
|
-
bad_genomes_selection_prob=bad_genomes_selection_prob,
|
314
|
-
fitness_bias=fitness_bias,
|
315
|
-
epsilon=epsilon,
|
316
|
-
bad_genomes_mutation_prob=bad_genomes_mutation_prob,
|
317
|
-
activation_mutate_prob=activation_mutate_prob,
|
318
|
-
activation_mutate_add_prob=activation_mutate_add_prob,
|
319
|
-
activation_mutate_delete_prob=activation_mutate_delete_prob,
|
320
|
-
activation_mutate_change_prob=activation_mutate_change_prob,
|
321
|
-
weight_mutate_prob=weight_mutate_prob,
|
322
|
-
weight_mutate_threshold=weight_mutate_threshold,
|
323
|
-
activation_mutate_threshold=activation_mutate_threshold)
|
324
|
-
|
325
|
-
pool.map(process_func, range(len(bad_weights)))
|
325
|
+
results = pool.map(process_func, range(len(bad_weights)))
|
326
|
+
|
327
|
+
for i, new_child_W, new_child_act, new_mutated_W, new_mutated_act in results:
|
328
|
+
child_W[i] = new_child_W
|
329
|
+
child_act[i] = new_child_act
|
330
|
+
mutated_W[i] = new_mutated_W
|
331
|
+
mutated_act[i] = new_mutated_act
|
326
332
|
|
327
333
|
child_W[0] = best_weight
|
328
334
|
child_act[0] = best_activations
|
@@ -367,39 +373,47 @@ def evolver(weights,
|
|
367
373
|
return weights, activation_potentiations
|
368
374
|
|
369
375
|
|
370
|
-
def process_single(i, policy, best_weight, best_activations,
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
376
|
+
def process_single(i, policy, best_weight, best_activations,
|
377
|
+
good_weights, good_activations,
|
378
|
+
bad_weights, bad_activations,
|
379
|
+
best_fitness, normalized_fitness,
|
380
|
+
cross_over_mode,
|
381
|
+
activation_selection_add_prob, activation_selection_change_prob,
|
382
|
+
activation_selection_threshold,
|
383
|
+
bad_genomes_selection_prob, fitness_bias,
|
384
|
+
epsilon, bad_genomes_mutation_prob,
|
385
|
+
activation_mutate_prob, activation_mutate_add_prob,
|
386
|
+
activation_mutate_delete_prob, activation_mutate_change_prob,
|
387
|
+
weight_mutate_prob, weight_mutate_threshold,
|
388
|
+
activation_mutate_threshold):
|
389
|
+
|
379
390
|
if policy == 'aggressive':
|
380
391
|
first_parent_W = best_weight
|
381
392
|
first_parent_act = best_activations
|
382
393
|
elif policy == 'explorer':
|
383
394
|
first_parent_W = good_weights[i]
|
384
395
|
first_parent_act = good_activations[i]
|
385
|
-
else:
|
396
|
+
else:
|
386
397
|
raise ValueError("policy parameter must be: 'aggressive' or 'explorer'")
|
387
398
|
|
388
|
-
second_parent_W, second_parent_act, s_i = second_parent_selection(
|
389
|
-
|
390
|
-
|
391
|
-
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
399
|
+
second_parent_W, second_parent_act, s_i = second_parent_selection(
|
400
|
+
good_weights, bad_weights, good_activations, bad_activations, bad_genomes_selection_prob)
|
401
|
+
|
402
|
+
new_child_W, new_child_act = cross_over(
|
403
|
+
first_parent_W,
|
404
|
+
second_parent_W,
|
405
|
+
first_parent_act,
|
406
|
+
second_parent_act,
|
407
|
+
cross_over_mode=cross_over_mode,
|
408
|
+
activation_selection_add_prob=activation_selection_add_prob,
|
409
|
+
activation_selection_change_prob=activation_selection_change_prob,
|
410
|
+
activation_selection_threshold=activation_selection_threshold,
|
411
|
+
bad_genomes_selection_prob=bad_genomes_selection_prob,
|
412
|
+
first_parent_fitness=best_fitness,
|
413
|
+
fitness_bias=fitness_bias,
|
414
|
+
second_parent_fitness=normalized_fitness[s_i],
|
415
|
+
epsilon=epsilon
|
416
|
+
)
|
403
417
|
|
404
418
|
mutation_prob = random.uniform(0, 1)
|
405
419
|
if mutation_prob > bad_genomes_mutation_prob:
|
@@ -411,18 +425,22 @@ def process_single(i, policy, best_weight, best_activations, good_weights, good_
|
|
411
425
|
genome_act = bad_activations[i]
|
412
426
|
fitness_index = i
|
413
427
|
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
428
|
+
new_mutated_W, new_mutated_act = mutation(
|
429
|
+
genome_W,
|
430
|
+
genome_act,
|
431
|
+
activation_mutate_prob=activation_mutate_prob,
|
432
|
+
activation_add_prob=activation_mutate_add_prob,
|
433
|
+
activation_delete_prob=activation_mutate_delete_prob,
|
434
|
+
activation_change_prob=activation_mutate_change_prob,
|
435
|
+
weight_mutate_prob=weight_mutate_prob,
|
436
|
+
weight_mutate_threshold=weight_mutate_threshold,
|
437
|
+
genome_fitness=normalized_fitness[fitness_index],
|
438
|
+
activation_mutate_threshold=activation_mutate_threshold,
|
439
|
+
epsilon=epsilon
|
440
|
+
)
|
441
|
+
|
442
|
+
return (i, new_child_W, new_child_act, new_mutated_W, new_mutated_act)
|
443
|
+
|
426
444
|
|
427
445
|
def evaluate(x_population, weights, activation_potentiations):
|
428
446
|
"""
|
File without changes
|
File without changes
|