pyerualjetwork 5.21b3__py3-none-any.whl → 5.22__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/activation_functions_cuda.py +12 -5
- pyerualjetwork/neu_cpu.py +5 -5
- pyerualjetwork/neu_cuda.py +4 -4
- {pyerualjetwork-5.21b3.dist-info → pyerualjetwork-5.22.dist-info}/METADATA +1 -1
- {pyerualjetwork-5.21b3.dist-info → pyerualjetwork-5.22.dist-info}/RECORD +8 -8
- {pyerualjetwork-5.21b3.dist-info → pyerualjetwork-5.22.dist-info}/WHEEL +0 -0
- {pyerualjetwork-5.21b3.dist-info → pyerualjetwork-5.22.dist-info}/top_level.txt +0 -0
pyerualjetwork/__init__.py
CHANGED
@@ -42,7 +42,7 @@ PyerualJetwork document: https://github.com/HCB06/PyerualJetwork/blob/main/Welco
|
|
42
42
|
- Contact: tchasancan@gmail.com
|
43
43
|
"""
|
44
44
|
|
45
|
-
__version__ = "5.
|
45
|
+
__version__ = "5.22"
|
46
46
|
__update__ = """* Changes: https://github.com/HCB06/PyerualJetwork/blob/main/CHANGES
|
47
47
|
* PyerualJetwork Homepage: https://github.com/HCB06/PyerualJetwork/tree/main
|
48
48
|
* PyerualJetwork document: https://github.com/HCB06/PyerualJetwork/blob/main/Welcome_to_PyerualJetwork/PYERUALJETWORK_USER_MANUEL_AND_LEGAL_INFORMATION(EN).pdf
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import cupy as cp
|
2
|
+
import numpy as np
|
2
3
|
from scipy.special import expit, softmax
|
3
4
|
import warnings
|
4
5
|
|
@@ -198,10 +199,16 @@ def apply_activation(Input, activation_list):
|
|
198
199
|
'spiral': spiral_activation,
|
199
200
|
'circular': circular_activation
|
200
201
|
}
|
202
|
+
|
203
|
+
try:
|
204
|
+
|
205
|
+
valid_mask = cp.array([act in activation_functions for act in activation_list])
|
206
|
+
valid_activations = np.array(activation_list)[valid_mask.get()]
|
201
207
|
|
202
|
-
|
203
|
-
valid_activations = cp.array(activation_list)[valid_mask]
|
204
|
-
|
205
|
-
activation_outputs = cp.array([activation_functions[act](origin_input) for act in valid_activations])
|
208
|
+
activation_outputs = cp.array([activation_functions[act](origin_input) for act in valid_activations])
|
206
209
|
|
207
|
-
|
210
|
+
return cp.sum(activation_outputs, axis=0)
|
211
|
+
|
212
|
+
except Exception as e:
|
213
|
+
warnings.warn(f"Error in activation processing: {str(e)}", RuntimeWarning)
|
214
|
+
return Input
|
pyerualjetwork/neu_cpu.py
CHANGED
@@ -340,17 +340,17 @@ def learn(x_train, y_train, optimizer, gen, pop_size, fit_start=True, batch_size
|
|
340
340
|
|
341
341
|
if fitness >= best_fitness:
|
342
342
|
|
343
|
-
best_fitness = fitness
|
344
|
-
best_acc = acc
|
345
|
-
best_loss = train_loss
|
343
|
+
best_fitness = copy.copy(fitness)
|
344
|
+
best_acc = copy.copy(acc)
|
345
|
+
best_loss = copy.copy(train_loss)
|
346
346
|
best_weight = np.copy(weight_pop[j]) if model_type == 'PLAN' else copy.deepcopy(weight_pop[j])
|
347
|
-
best_model = model
|
347
|
+
best_model = copy.deepcopy(model)
|
348
348
|
|
349
349
|
final_activations = act_pop[j].copy() if isinstance(act_pop[j], list) else act_pop[j]
|
350
350
|
if model_type == 'PLAN': final_activations = [final_activations[0]] if len(set(final_activations)) == 1 else final_activations # removing if all same
|
351
351
|
|
352
352
|
if batch_size == 1:
|
353
|
-
postfix_dict[f"{data} Accuracy"] = np.round(best_acc
|
353
|
+
postfix_dict[f"{data} Accuracy"] = np.round(best_acc)
|
354
354
|
postfix_dict[f"{data} Loss"] = np.round(train_loss, 4)
|
355
355
|
progress.set_postfix(postfix_dict)
|
356
356
|
|
pyerualjetwork/neu_cuda.py
CHANGED
@@ -351,11 +351,11 @@ def learn(x_train, y_train, optimizer, gen, pop_size, fit_start=True, batch_size
|
|
351
351
|
|
352
352
|
if fitness >= best_fitness:
|
353
353
|
|
354
|
-
best_fitness = fitness
|
355
|
-
best_acc = acc
|
356
|
-
best_loss = train_loss
|
354
|
+
best_fitness = copy.copy(fitness)
|
355
|
+
best_acc = copy.copy(acc)
|
356
|
+
best_loss = copy.copy(train_loss)
|
357
357
|
best_weight = cp.copy(weight_pop[j]) if model_type == 'PLAN' else copy.deepcopy(weight_pop[j])
|
358
|
-
best_model = model
|
358
|
+
best_model = copy.deepcopy(model)
|
359
359
|
|
360
360
|
final_activations = act_pop[j].copy() if isinstance(act_pop[j], list) else act_pop[j]
|
361
361
|
if model_type == 'PLAN': final_activations = [final_activations[0]] if len(set(final_activations)) == 1 else final_activations # removing if all same
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: pyerualjetwork
|
3
|
-
Version: 5.
|
3
|
+
Version: 5.22
|
4
4
|
Summary: PyereualJetwork is a GPU-accelerated machine learning library in Python for professionals and researchers. It features PLAN, MLP, Deep Learning training, and ENE (Eugenic NeuroEvolution) for genetic optimization, applicable to genetic algorithms or Reinforcement Learning (RL). The library includes data pre-processing, visualizations, model saving/loading, prediction, evaluation, training, and detailed or simplified memory management.
|
5
5
|
Author: Hasan Can Beydili
|
6
6
|
Author-email: tchasancan@gmail.com
|
@@ -1,6 +1,6 @@
|
|
1
|
-
pyerualjetwork/__init__.py,sha256=
|
1
|
+
pyerualjetwork/__init__.py,sha256=60chdPHau08HC8CJnG_RStblGHTncKMntWNKDbfKitw,2733
|
2
2
|
pyerualjetwork/activation_functions_cpu.py,sha256=qP_Ipi2-c5tyJ7Jb9gWJZCj2AgeOIzLBdoEqQOUXD-s,5885
|
3
|
-
pyerualjetwork/activation_functions_cuda.py,sha256=
|
3
|
+
pyerualjetwork/activation_functions_cuda.py,sha256=7ZN54w4VP0MtFh0LjAUHsuPNgVOxrKeqEwa_zNbRp4g,5699
|
4
4
|
pyerualjetwork/data_operations_cpu.py,sha256=HemqiYfSdlQKTTYNzpCh_9lTtS3AimMI4DvqJBAGjGw,16186
|
5
5
|
pyerualjetwork/data_operations_cuda.py,sha256=5zgyJGPjQuHyx6IHNkRwMguYhm-GcI6Hal49WNvw-bM,18536
|
6
6
|
pyerualjetwork/ene_cpu.py,sha256=2y5__d-vx7t5Ajs4IPuNnQe8ULR39Km_KQFNIUnalGA,45167
|
@@ -15,12 +15,12 @@ pyerualjetwork/metrics_cpu.py,sha256=vbfMwS0ay2heMSa0GNo-ydLjQ8cfexbLwaREp4FKAtY
|
|
15
15
|
pyerualjetwork/metrics_cuda.py,sha256=PWyJyexeqlPKb09LAcF55JvhZVeXLCu3P_siYq5m2gg,5065
|
16
16
|
pyerualjetwork/model_operations_cpu.py,sha256=Y0uPkLVbdodP7lC-fOPdja3RWi2J9z2rwWIS2pxzotU,20523
|
17
17
|
pyerualjetwork/model_operations_cuda.py,sha256=B6vNYmqvrEJ3ZMGE1RWeJYn3V-JCsXhCHvS-aX4bWuU,21254
|
18
|
-
pyerualjetwork/neu_cpu.py,sha256=
|
19
|
-
pyerualjetwork/neu_cuda.py,sha256=
|
18
|
+
pyerualjetwork/neu_cpu.py,sha256=X-AyTRSqBi29c3zxXO0nI2QRVZy8_UGR_nLkW06RCzE,31242
|
19
|
+
pyerualjetwork/neu_cuda.py,sha256=wrgFSCaQeF6b3Bu7teLjCaYVNT9rdU4mVk3tYSKuG54,32402
|
20
20
|
pyerualjetwork/ui.py,sha256=JBTFYz5R24XwNKhA3GSW-oYAoiIBxAE3kFGXkvm5gqw,656
|
21
21
|
pyerualjetwork/visualizations_cpu.py,sha256=StyD1Hl1Gt55EMqR6tO3yVJZdPyGkOgCnQ75Zn8K6J8,28252
|
22
22
|
pyerualjetwork/visualizations_cuda.py,sha256=7lYrkOdrjwQGB3T4k_vI8UDxsm_TRjzaSSg9GhlNczs,28667
|
23
|
-
pyerualjetwork-5.
|
24
|
-
pyerualjetwork-5.
|
25
|
-
pyerualjetwork-5.
|
26
|
-
pyerualjetwork-5.
|
23
|
+
pyerualjetwork-5.22.dist-info/METADATA,sha256=CHTMRdePRk7I3WKA44ihOPV24mcf-Qn_774FN7DIGP4,8133
|
24
|
+
pyerualjetwork-5.22.dist-info/WHEEL,sha256=2wepM1nk4DS4eFpYrW1TTqPcoGNfHhhO_i5m4cOimbo,92
|
25
|
+
pyerualjetwork-5.22.dist-info/top_level.txt,sha256=BRyt62U_r3ZmJpj-wXNOoA345Bzamrj6RbaWsyW4tRg,15
|
26
|
+
pyerualjetwork-5.22.dist-info/RECORD,,
|
File without changes
|
File without changes
|