aek-auto-mlbuilder 0.1.0__py3-none-any.whl → 0.2.0__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.
@@ -1,3 +1,4 @@
1
1
  from .base import BaseModel
2
2
  from .utils import split_data
3
- from .linear_regression import LinearRegressor
3
+ from .linear_regression import LinearRegressor
4
+ from .logistic_regression import LogisticClassifier
@@ -0,0 +1,48 @@
1
+ from sklearn.linear_model import LogisticRegression
2
+ from sklearn.preprocessing import StandardScaler
3
+ from sklearn.pipeline import make_pipeline
4
+ from .base import BaseModel
5
+
6
+
7
+
8
+ class LogisticClassifier(BaseModel):
9
+ """
10
+ Basic Logistic Regression class for binary/multi-class classification.
11
+ Brute-force parameter search included.
12
+ """
13
+
14
+ def __init__(self, param_grid=None):
15
+ super().__init__()
16
+ self.param_grid = param_grid or {
17
+ "C": [0.01, 0.1, 1, 10],
18
+ "penalty": ["l2"],
19
+ "solver": ["lbfgs"],
20
+ "fit_intercept": [True, False]
21
+ }
22
+ def train(self, X, y):
23
+ best_score = -float("inf")
24
+ best_model = None
25
+
26
+ for C in self.param_grid["C"]:
27
+ for penalty in self.param_grid["penalty"]:
28
+ for solver in self.param_grid["solver"]:
29
+ for fit_intercept in self.param_grid["fit_intercept"]:
30
+ model = make_pipeline(
31
+ StandardScaler(),
32
+ LogisticRegression(
33
+ C=C,
34
+ penalty=penalty,
35
+ solver=solver,
36
+ fit_intercept=fit_intercept,
37
+ max_iter=1000
38
+ )
39
+ )
40
+ model.fit(X, y)
41
+ score = model.score(X, y)
42
+ if score > best_score:
43
+ best_score = score
44
+ best_model = model
45
+
46
+ self.best_model = best_model
47
+ self.best_score = best_score
48
+ return self.best_model
@@ -0,0 +1,60 @@
1
+ Metadata-Version: 2.4
2
+ Name: aek-auto-mlbuilder
3
+ Version: 0.2.0
4
+ Summary: Automatic ML model builder in Python
5
+ Home-page: https://github.com/alpemre8/aek-auto-mlbuilder
6
+ Author: Alp Emre Karaahmet
7
+ Author-email: alpemrekaraahmet@gmail.com
8
+ License: MIT
9
+ Requires-Python: >=3.8
10
+ Description-Content-Type: text/markdown
11
+ License-File: LICENSE
12
+ Requires-Dist: scikit-learn>=1.0
13
+ Requires-Dist: numpy>=1.23
14
+ Requires-Dist: pandas>=1.5
15
+ Dynamic: author
16
+ Dynamic: author-email
17
+ Dynamic: description
18
+ Dynamic: description-content-type
19
+ Dynamic: home-page
20
+ Dynamic: license
21
+ Dynamic: license-file
22
+ Dynamic: requires-dist
23
+ Dynamic: requires-python
24
+ Dynamic: summary
25
+
26
+ <div align="center">
27
+ <img src="https://raw.githubusercontent.com/alpemre8/aek-img-trainer/main/logo.png" alt="AEK Auto ML Builder Logo" width="400"/>
28
+
29
+ # AEK Auto ML Builder
30
+
31
+ Auto ML Builder Library
32
+ </div>
33
+
34
+ # Installation
35
+
36
+
37
+ ```bash
38
+ pip install aek-auto-mlbuilder
39
+ ```
40
+ For future updates:
41
+ ```bash
42
+ pip install --upgrade aek-auto-mlbuilder
43
+ ```
44
+
45
+ # Usage
46
+
47
+
48
+ ## Create LinearRegression model
49
+
50
+ For your linear regression problems, you can use LinearRegressor class via:(for now we use syntetic data):
51
+ ```python
52
+ from aek_auto_mlbuilder import LinearRegressor
53
+ from sklearn.datasets import make_regression
54
+
55
+ X, y = make_regression(n_samples=100, n_features=5, noise=0.1, random_state=42)
56
+
57
+ lr = LinearRegressor()
58
+ lr.train(X, y)
59
+ print("Best Score:", lr.best_score)
60
+ ```
@@ -0,0 +1,10 @@
1
+ aek_auto_mlbuilder/__init__.py,sha256=SXkgDc9Wk7algCZBmE_855M6Kmqh0OauWZ_ZCDPI_-w,156
2
+ aek_auto_mlbuilder/base.py,sha256=GgMdAoceRjwz3i9rVQ0RAjvn5ZdRS-sAkLWjymbE8s0,385
3
+ aek_auto_mlbuilder/linear_regression.py,sha256=MtOSRiXDIJPd3abnz4yNT4DBtrkmvEy00Kbx4AFk4Kg,1259
4
+ aek_auto_mlbuilder/logistic_regression.py,sha256=lp9-e9p9QrqL20DmhIJaSnra1SwyMiOdTfOMlgYsNQA,1707
5
+ aek_auto_mlbuilder/utils.py,sha256=NcoM3b4Ng1Ogk3iKuz9DcMVwppGRqOLRp5g9jBCkWxY,190
6
+ aek_auto_mlbuilder-0.2.0.dist-info/licenses/LICENSE,sha256=eSVo2jJj9FB1xvr0zZ9U1fXkyjjnT6-WM3O4HSFKJOc,133
7
+ aek_auto_mlbuilder-0.2.0.dist-info/METADATA,sha256=jM2zfl1x7SNJUcduNuO4sDEEj84MZCW-2kg3XMMqmps,1400
8
+ aek_auto_mlbuilder-0.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
9
+ aek_auto_mlbuilder-0.2.0.dist-info/top_level.txt,sha256=2ZY5rMRnVvrAH2GRGUbd6n9ey8cg_uk5iJwke0hQzFE,19
10
+ aek_auto_mlbuilder-0.2.0.dist-info/RECORD,,
@@ -1,19 +0,0 @@
1
- Metadata-Version: 2.4
2
- Name: aek-auto-mlbuilder
3
- Version: 0.1.0
4
- Summary: Automatic ML model builder in Python
5
- Home-page: https://github.com/alpemre8/aek-auto-mlbuilder
6
- Author: Alp Emre Karaahmet
7
- Author-email: alpemrekaraahmet@gmail.com
8
- License: MIT
9
- Requires-Python: >=3.8
10
- Description-Content-Type: text/markdown
11
- License-File: LICENSE
12
- Dynamic: author
13
- Dynamic: author-email
14
- Dynamic: description-content-type
15
- Dynamic: home-page
16
- Dynamic: license
17
- Dynamic: license-file
18
- Dynamic: requires-python
19
- Dynamic: summary
@@ -1,9 +0,0 @@
1
- aek_auto_mlbuilder/__init__.py,sha256=h1Y0NFNG_7TJ37NbYaoKWvO-2FrqdjGlP2Zui6677hM,104
2
- aek_auto_mlbuilder/base.py,sha256=GgMdAoceRjwz3i9rVQ0RAjvn5ZdRS-sAkLWjymbE8s0,385
3
- aek_auto_mlbuilder/linear_regression.py,sha256=MtOSRiXDIJPd3abnz4yNT4DBtrkmvEy00Kbx4AFk4Kg,1259
4
- aek_auto_mlbuilder/utils.py,sha256=NcoM3b4Ng1Ogk3iKuz9DcMVwppGRqOLRp5g9jBCkWxY,190
5
- aek_auto_mlbuilder-0.1.0.dist-info/licenses/LICENSE,sha256=eSVo2jJj9FB1xvr0zZ9U1fXkyjjnT6-WM3O4HSFKJOc,133
6
- aek_auto_mlbuilder-0.1.0.dist-info/METADATA,sha256=2dRUDj917EQGVM_fZorH1vs0Pg0reDN1KKGCKk3EPlE,504
7
- aek_auto_mlbuilder-0.1.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
8
- aek_auto_mlbuilder-0.1.0.dist-info/top_level.txt,sha256=2ZY5rMRnVvrAH2GRGUbd6n9ey8cg_uk5iJwke0hQzFE,19
9
- aek_auto_mlbuilder-0.1.0.dist-info/RECORD,,