equitable-capital-optimization-ai 0.2.0__tar.gz
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.
- equitable_capital_optimization_ai-0.2.0/LICENSE +21 -0
- equitable_capital_optimization_ai-0.2.0/PKG-INFO +267 -0
- equitable_capital_optimization_ai-0.2.0/README.md +230 -0
- equitable_capital_optimization_ai-0.2.0/pyproject.toml +77 -0
- equitable_capital_optimization_ai-0.2.0/setup.cfg +4 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/__init__.py +25 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/allocation.py +96 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/config.py +23 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/data.py +81 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/explainability.py +38 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/fairness.py +68 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital/modeling.py +122 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital_optimization_ai.egg-info/PKG-INFO +267 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital_optimization_ai.egg-info/SOURCES.txt +19 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital_optimization_ai.egg-info/dependency_links.txt +1 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital_optimization_ai.egg-info/requires.txt +11 -0
- equitable_capital_optimization_ai-0.2.0/src/equitable_capital_optimization_ai.egg-info/top_level.txt +1 -0
- equitable_capital_optimization_ai-0.2.0/tests/test_allocation.py +35 -0
- equitable_capital_optimization_ai-0.2.0/tests/test_data.py +20 -0
- equitable_capital_optimization_ai-0.2.0/tests/test_fairness.py +19 -0
- equitable_capital_optimization_ai-0.2.0/tests/test_modeling.py +23 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Sakera Begum
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,267 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: equitable-capital-optimization-ai
|
|
3
|
+
Version: 0.2.0
|
|
4
|
+
Summary: Research package for predictive capital-readiness analysis, fairness auditing, explainable AI, and equity-aware capital allocation.
|
|
5
|
+
Author: Sakera Begum
|
|
6
|
+
License: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/sakera023/equitable-capital-optimization-ai
|
|
8
|
+
Project-URL: Repository, https://github.com/sakera023/equitable-capital-optimization-ai
|
|
9
|
+
Project-URL: Issues, https://github.com/sakera023/equitable-capital-optimization-ai/issues
|
|
10
|
+
Project-URL: Documentation, https://github.com/sakera023/equitable-capital-optimization-ai/tree/main/docs
|
|
11
|
+
Project-URL: Publication, https://www.researchgate.net/publication/410866072_An_AI-Powered_Framework_for_Equitable_Capital_Optimization_Leveraging_Predictive_Intelligence_to_Empower_Underserved_Entrepreneurial_Ecosystems_in_the_US
|
|
12
|
+
Keywords: artificial-intelligence,machine-learning,predictive-analytics,entrepreneurship,small-business,capital-allocation,fairness,responsible-ai,explainable-ai,streamlit
|
|
13
|
+
Classifier: Development Status :: 3 - Alpha
|
|
14
|
+
Classifier: Intended Audience :: Developers
|
|
15
|
+
Classifier: Intended Audience :: Science/Research
|
|
16
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
17
|
+
Classifier: Operating System :: OS Independent
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
21
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
22
|
+
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
23
|
+
Requires-Python: >=3.11
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
License-File: LICENSE
|
|
26
|
+
Requires-Dist: numpy<3,>=1.26
|
|
27
|
+
Requires-Dist: pandas<4,>=2.1
|
|
28
|
+
Requires-Dist: plotly<8,>=5.20
|
|
29
|
+
Requires-Dist: scikit-learn<2,>=1.4
|
|
30
|
+
Requires-Dist: streamlit<2,>=1.40
|
|
31
|
+
Provides-Extra: dev
|
|
32
|
+
Requires-Dist: build<2,>=1.2; extra == "dev"
|
|
33
|
+
Requires-Dist: pytest<10,>=8; extra == "dev"
|
|
34
|
+
Requires-Dist: ruff<1,>=0.8; extra == "dev"
|
|
35
|
+
Requires-Dist: twine<7,>=5; extra == "dev"
|
|
36
|
+
Dynamic: license-file
|
|
37
|
+
|
|
38
|
+
# Equitable Capital Optimization AI
|
|
39
|
+
|
|
40
|
+
[](https://github.com/sakera023/equitable-capital-optimization-ai/actions/workflows/ci.yml)
|
|
41
|
+

|
|
42
|
+

|
|
43
|
+

|
|
44
|
+
|
|
45
|
+
A reproducible research prototype for **predictive capital-readiness analysis, model
|
|
46
|
+
explainability, fairness auditing, and equity-aware capital-allocation simulation** for
|
|
47
|
+
underserved U.S. entrepreneurial ecosystems.
|
|
48
|
+
|
|
49
|
+
The project is inspired by:
|
|
50
|
+
|
|
51
|
+
> **An AI-Powered Framework for Equitable Capital Optimization: Leveraging Predictive
|
|
52
|
+
> Intelligence to Empower Underserved Entrepreneurial Ecosystems in the U.S.**
|
|
53
|
+
|
|
54
|
+
Related publication:
|
|
55
|
+
[ResearchGate](https://www.researchgate.net/publication/410866072_An_AI-Powered_Framework_for_Equitable_Capital_Optimization_Leveraging_Predictive_Intelligence_to_Empower_Underserved_Entrepreneurial_Ecosystems_in_the_US)
|
|
56
|
+
|
|
57
|
+
## Why this project exists
|
|
58
|
+
|
|
59
|
+
Access to capital is not only a prediction problem. It is also an allocation,
|
|
60
|
+
transparency, and measurement problem. This repository separates those concerns into
|
|
61
|
+
four independently testable components:
|
|
62
|
+
|
|
63
|
+
| Component | Purpose |
|
|
64
|
+
| --- | --- |
|
|
65
|
+
| Predictive modeling | Estimate funding-success probability from business and market features |
|
|
66
|
+
| Explainability | Show how applicant-level features influence the model locally |
|
|
67
|
+
| Fairness auditing | Compare outcomes across structural-access contexts |
|
|
68
|
+
| Capital allocation | Compare efficiency-only and equity-aware funding scenarios |
|
|
69
|
+
|
|
70
|
+
## Responsible-use boundary
|
|
71
|
+
|
|
72
|
+
> **Research and educational use only.**
|
|
73
|
+
>
|
|
74
|
+
> This project must not be used to make real lending, credit, investment, employment,
|
|
75
|
+
> housing, insurance, benefits, or eligibility decisions.
|
|
76
|
+
|
|
77
|
+
The predictive model intentionally excludes protected personal characteristics.
|
|
78
|
+
Structural context indicators are used for research auditing and allocation simulation,
|
|
79
|
+
not as protected-trait proxies for real-world underwriting.
|
|
80
|
+
|
|
81
|
+
## Architecture
|
|
82
|
+
|
|
83
|
+
```mermaid
|
|
84
|
+
flowchart LR
|
|
85
|
+
A[Synthetic Business Data] --> B[Feature Pipeline]
|
|
86
|
+
B --> C[Random Forest Model]
|
|
87
|
+
C --> D[Capital Readiness Score]
|
|
88
|
+
C --> E[Local Explanation]
|
|
89
|
+
D --> F[Fairness Audit]
|
|
90
|
+
D --> G[Allocation Simulator]
|
|
91
|
+
F --> H[Research Dashboard]
|
|
92
|
+
G --> H
|
|
93
|
+
E --> H
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
See [Architecture](docs/ARCHITECTURE.md) and [Methodology](docs/METHODOLOGY.md).
|
|
97
|
+
|
|
98
|
+
## Key capabilities
|
|
99
|
+
|
|
100
|
+
- Reproducible synthetic U.S. small-business/startup data generation
|
|
101
|
+
- Scikit-learn preprocessing and Random Forest classification pipeline
|
|
102
|
+
- Holdout evaluation with ROC-AUC, accuracy, precision, recall, F1, and Brier score
|
|
103
|
+
- Capital Readiness Score derived from predicted funding-success probability
|
|
104
|
+
- Global feature-importance reporting
|
|
105
|
+
- Applicant-level local sensitivity explanations
|
|
106
|
+
- Structural-context fairness audit and selection-rate comparison
|
|
107
|
+
- Efficiency-only and equity-aware capital-allocation simulation
|
|
108
|
+
- Interactive Streamlit research dashboard
|
|
109
|
+
- Automated tests and linting in GitHub Actions
|
|
110
|
+
- Model card, citation metadata, contribution guide, and security policy
|
|
111
|
+
|
|
112
|
+
## Python package
|
|
113
|
+
|
|
114
|
+
The reusable research code lives in the `equitable_capital` Python package.
|
|
115
|
+
|
|
116
|
+
After a release is published to PyPI, install it with:
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
pip install equitable-capital-optimization-ai
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
Example:
|
|
123
|
+
|
|
124
|
+
```python
|
|
125
|
+
from equitable_capital import (
|
|
126
|
+
allocate_capital,
|
|
127
|
+
fairness_audit,
|
|
128
|
+
generate_synthetic_startups,
|
|
129
|
+
train_model,
|
|
130
|
+
)
|
|
131
|
+
|
|
132
|
+
data = generate_synthetic_startups()
|
|
133
|
+
result = train_model(data)
|
|
134
|
+
audit = fairness_audit(result.scored_data)
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
For local development, install the repository in editable mode:
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
pip install -e ".[dev]"
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Quick start
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
git clone https://github.com/sakera023/equitable-capital-optimization-ai.git
|
|
147
|
+
cd equitable-capital-optimization-ai
|
|
148
|
+
python -m venv .venv
|
|
149
|
+
```
|
|
150
|
+
|
|
151
|
+
Activate the environment.
|
|
152
|
+
|
|
153
|
+
**Windows**
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
.venv\Scripts\activate
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
**macOS/Linux**
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
source .venv/bin/activate
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
Install and run:
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
pip install -r requirements.txt
|
|
169
|
+
streamlit run app.py
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Development checks:
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
pip install -r requirements-dev.txt
|
|
176
|
+
ruff check src tests app.py
|
|
177
|
+
python -m pytest -q
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
## Repository structure
|
|
181
|
+
|
|
182
|
+
```text
|
|
183
|
+
.
|
|
184
|
+
├── app.py
|
|
185
|
+
├── pyproject.toml
|
|
186
|
+
├── requirements.txt
|
|
187
|
+
├── requirements-dev.txt
|
|
188
|
+
├── Makefile
|
|
189
|
+
├── src/
|
|
190
|
+
│ └── equitable_capital/
|
|
191
|
+
│ ├── __init__.py
|
|
192
|
+
│ ├── allocation.py
|
|
193
|
+
│ ├── config.py
|
|
194
|
+
│ ├── data.py
|
|
195
|
+
│ ├── explainability.py
|
|
196
|
+
│ ├── fairness.py
|
|
197
|
+
│ └── modeling.py
|
|
198
|
+
├── tests/
|
|
199
|
+
├── docs/
|
|
200
|
+
├── .github/
|
|
201
|
+
├── CITATION.cff
|
|
202
|
+
├── CONTRIBUTING.md
|
|
203
|
+
├── SECURITY.md
|
|
204
|
+
├── CHANGELOG.md
|
|
205
|
+
└── LICENSE
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Data design
|
|
209
|
+
|
|
210
|
+
The repository uses **synthetic data by default**. This avoids exposing private
|
|
211
|
+
financial records, makes the project reproducible, and prevents the demonstration from
|
|
212
|
+
implying real-world predictive validity.
|
|
213
|
+
|
|
214
|
+
Predictive features include revenue, growth, cash runway, employees, operating history,
|
|
215
|
+
debt-service coverage, digital adoption, market demand, management capacity, requested
|
|
216
|
+
capital, industry, and state.
|
|
217
|
+
|
|
218
|
+
## Model evaluation
|
|
219
|
+
|
|
220
|
+
The application reports ROC-AUC, accuracy, precision, recall, F1 score, and Brier score.
|
|
221
|
+
These metrics evaluate the synthetic demonstration only.
|
|
222
|
+
|
|
223
|
+
## Fairness and equity analysis
|
|
224
|
+
|
|
225
|
+
A **structural barrier index** is built from contextual variables such as low-income
|
|
226
|
+
area, rural area, limited finance access, and digital adoption.
|
|
227
|
+
|
|
228
|
+
The index is reserved for post-model fairness diagnostics and research simulation of
|
|
229
|
+
equity-aware allocation policies. It is not included in the predictive training
|
|
230
|
+
features.
|
|
231
|
+
|
|
232
|
+
## Reproducibility
|
|
233
|
+
|
|
234
|
+
The synthetic data generator and model pipeline use explicit random seeds. Tests verify
|
|
235
|
+
data ranges, prediction bounds, allocation-budget constraints, and fairness-audit
|
|
236
|
+
outputs. CI runs on every push and pull request.
|
|
237
|
+
|
|
238
|
+
## Research roadmap
|
|
239
|
+
|
|
240
|
+
Planned extensions include gradient-boosted model benchmarks, probability calibration,
|
|
241
|
+
SHAP, temporal/geographic validation, county-level opportunity maps, Census/SBA/CDFI
|
|
242
|
+
public-data integrations, constrained optimization, and uncertainty analysis.
|
|
243
|
+
|
|
244
|
+
See [Research Roadmap](docs/RESEARCH_ROADMAP.md).
|
|
245
|
+
|
|
246
|
+
## Citation
|
|
247
|
+
|
|
248
|
+
If you use the software, cite the repository metadata in [CITATION.cff](CITATION.cff).
|
|
249
|
+
If you use the associated research concept, cite the publication separately and clearly
|
|
250
|
+
distinguish research findings from this software prototype.
|
|
251
|
+
|
|
252
|
+
## Contributing
|
|
253
|
+
|
|
254
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
255
|
+
|
|
256
|
+
## Security
|
|
257
|
+
|
|
258
|
+
Do not publish secrets, private financial information, or real applicant records in
|
|
259
|
+
issues or pull requests. See [SECURITY.md](SECURITY.md).
|
|
260
|
+
|
|
261
|
+
## License
|
|
262
|
+
|
|
263
|
+
MIT License. See [LICENSE](LICENSE).
|
|
264
|
+
|
|
265
|
+
## Maintainer
|
|
266
|
+
|
|
267
|
+
**Sakera Begum**
|
|
@@ -0,0 +1,230 @@
|
|
|
1
|
+
# Equitable Capital Optimization AI
|
|
2
|
+
|
|
3
|
+
[](https://github.com/sakera023/equitable-capital-optimization-ai/actions/workflows/ci.yml)
|
|
4
|
+

|
|
5
|
+

|
|
6
|
+

|
|
7
|
+
|
|
8
|
+
A reproducible research prototype for **predictive capital-readiness analysis, model
|
|
9
|
+
explainability, fairness auditing, and equity-aware capital-allocation simulation** for
|
|
10
|
+
underserved U.S. entrepreneurial ecosystems.
|
|
11
|
+
|
|
12
|
+
The project is inspired by:
|
|
13
|
+
|
|
14
|
+
> **An AI-Powered Framework for Equitable Capital Optimization: Leveraging Predictive
|
|
15
|
+
> Intelligence to Empower Underserved Entrepreneurial Ecosystems in the U.S.**
|
|
16
|
+
|
|
17
|
+
Related publication:
|
|
18
|
+
[ResearchGate](https://www.researchgate.net/publication/410866072_An_AI-Powered_Framework_for_Equitable_Capital_Optimization_Leveraging_Predictive_Intelligence_to_Empower_Underserved_Entrepreneurial_Ecosystems_in_the_US)
|
|
19
|
+
|
|
20
|
+
## Why this project exists
|
|
21
|
+
|
|
22
|
+
Access to capital is not only a prediction problem. It is also an allocation,
|
|
23
|
+
transparency, and measurement problem. This repository separates those concerns into
|
|
24
|
+
four independently testable components:
|
|
25
|
+
|
|
26
|
+
| Component | Purpose |
|
|
27
|
+
| --- | --- |
|
|
28
|
+
| Predictive modeling | Estimate funding-success probability from business and market features |
|
|
29
|
+
| Explainability | Show how applicant-level features influence the model locally |
|
|
30
|
+
| Fairness auditing | Compare outcomes across structural-access contexts |
|
|
31
|
+
| Capital allocation | Compare efficiency-only and equity-aware funding scenarios |
|
|
32
|
+
|
|
33
|
+
## Responsible-use boundary
|
|
34
|
+
|
|
35
|
+
> **Research and educational use only.**
|
|
36
|
+
>
|
|
37
|
+
> This project must not be used to make real lending, credit, investment, employment,
|
|
38
|
+
> housing, insurance, benefits, or eligibility decisions.
|
|
39
|
+
|
|
40
|
+
The predictive model intentionally excludes protected personal characteristics.
|
|
41
|
+
Structural context indicators are used for research auditing and allocation simulation,
|
|
42
|
+
not as protected-trait proxies for real-world underwriting.
|
|
43
|
+
|
|
44
|
+
## Architecture
|
|
45
|
+
|
|
46
|
+
```mermaid
|
|
47
|
+
flowchart LR
|
|
48
|
+
A[Synthetic Business Data] --> B[Feature Pipeline]
|
|
49
|
+
B --> C[Random Forest Model]
|
|
50
|
+
C --> D[Capital Readiness Score]
|
|
51
|
+
C --> E[Local Explanation]
|
|
52
|
+
D --> F[Fairness Audit]
|
|
53
|
+
D --> G[Allocation Simulator]
|
|
54
|
+
F --> H[Research Dashboard]
|
|
55
|
+
G --> H
|
|
56
|
+
E --> H
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
See [Architecture](docs/ARCHITECTURE.md) and [Methodology](docs/METHODOLOGY.md).
|
|
60
|
+
|
|
61
|
+
## Key capabilities
|
|
62
|
+
|
|
63
|
+
- Reproducible synthetic U.S. small-business/startup data generation
|
|
64
|
+
- Scikit-learn preprocessing and Random Forest classification pipeline
|
|
65
|
+
- Holdout evaluation with ROC-AUC, accuracy, precision, recall, F1, and Brier score
|
|
66
|
+
- Capital Readiness Score derived from predicted funding-success probability
|
|
67
|
+
- Global feature-importance reporting
|
|
68
|
+
- Applicant-level local sensitivity explanations
|
|
69
|
+
- Structural-context fairness audit and selection-rate comparison
|
|
70
|
+
- Efficiency-only and equity-aware capital-allocation simulation
|
|
71
|
+
- Interactive Streamlit research dashboard
|
|
72
|
+
- Automated tests and linting in GitHub Actions
|
|
73
|
+
- Model card, citation metadata, contribution guide, and security policy
|
|
74
|
+
|
|
75
|
+
## Python package
|
|
76
|
+
|
|
77
|
+
The reusable research code lives in the `equitable_capital` Python package.
|
|
78
|
+
|
|
79
|
+
After a release is published to PyPI, install it with:
|
|
80
|
+
|
|
81
|
+
```bash
|
|
82
|
+
pip install equitable-capital-optimization-ai
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
Example:
|
|
86
|
+
|
|
87
|
+
```python
|
|
88
|
+
from equitable_capital import (
|
|
89
|
+
allocate_capital,
|
|
90
|
+
fairness_audit,
|
|
91
|
+
generate_synthetic_startups,
|
|
92
|
+
train_model,
|
|
93
|
+
)
|
|
94
|
+
|
|
95
|
+
data = generate_synthetic_startups()
|
|
96
|
+
result = train_model(data)
|
|
97
|
+
audit = fairness_audit(result.scored_data)
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
For local development, install the repository in editable mode:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
pip install -e ".[dev]"
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Quick start
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
git clone https://github.com/sakera023/equitable-capital-optimization-ai.git
|
|
110
|
+
cd equitable-capital-optimization-ai
|
|
111
|
+
python -m venv .venv
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
Activate the environment.
|
|
115
|
+
|
|
116
|
+
**Windows**
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
.venv\Scripts\activate
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
**macOS/Linux**
|
|
123
|
+
|
|
124
|
+
```bash
|
|
125
|
+
source .venv/bin/activate
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
Install and run:
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
pip install -r requirements.txt
|
|
132
|
+
streamlit run app.py
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
Development checks:
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
pip install -r requirements-dev.txt
|
|
139
|
+
ruff check src tests app.py
|
|
140
|
+
python -m pytest -q
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
## Repository structure
|
|
144
|
+
|
|
145
|
+
```text
|
|
146
|
+
.
|
|
147
|
+
├── app.py
|
|
148
|
+
├── pyproject.toml
|
|
149
|
+
├── requirements.txt
|
|
150
|
+
├── requirements-dev.txt
|
|
151
|
+
├── Makefile
|
|
152
|
+
├── src/
|
|
153
|
+
│ └── equitable_capital/
|
|
154
|
+
│ ├── __init__.py
|
|
155
|
+
│ ├── allocation.py
|
|
156
|
+
│ ├── config.py
|
|
157
|
+
│ ├── data.py
|
|
158
|
+
│ ├── explainability.py
|
|
159
|
+
│ ├── fairness.py
|
|
160
|
+
│ └── modeling.py
|
|
161
|
+
├── tests/
|
|
162
|
+
├── docs/
|
|
163
|
+
├── .github/
|
|
164
|
+
├── CITATION.cff
|
|
165
|
+
├── CONTRIBUTING.md
|
|
166
|
+
├── SECURITY.md
|
|
167
|
+
├── CHANGELOG.md
|
|
168
|
+
└── LICENSE
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## Data design
|
|
172
|
+
|
|
173
|
+
The repository uses **synthetic data by default**. This avoids exposing private
|
|
174
|
+
financial records, makes the project reproducible, and prevents the demonstration from
|
|
175
|
+
implying real-world predictive validity.
|
|
176
|
+
|
|
177
|
+
Predictive features include revenue, growth, cash runway, employees, operating history,
|
|
178
|
+
debt-service coverage, digital adoption, market demand, management capacity, requested
|
|
179
|
+
capital, industry, and state.
|
|
180
|
+
|
|
181
|
+
## Model evaluation
|
|
182
|
+
|
|
183
|
+
The application reports ROC-AUC, accuracy, precision, recall, F1 score, and Brier score.
|
|
184
|
+
These metrics evaluate the synthetic demonstration only.
|
|
185
|
+
|
|
186
|
+
## Fairness and equity analysis
|
|
187
|
+
|
|
188
|
+
A **structural barrier index** is built from contextual variables such as low-income
|
|
189
|
+
area, rural area, limited finance access, and digital adoption.
|
|
190
|
+
|
|
191
|
+
The index is reserved for post-model fairness diagnostics and research simulation of
|
|
192
|
+
equity-aware allocation policies. It is not included in the predictive training
|
|
193
|
+
features.
|
|
194
|
+
|
|
195
|
+
## Reproducibility
|
|
196
|
+
|
|
197
|
+
The synthetic data generator and model pipeline use explicit random seeds. Tests verify
|
|
198
|
+
data ranges, prediction bounds, allocation-budget constraints, and fairness-audit
|
|
199
|
+
outputs. CI runs on every push and pull request.
|
|
200
|
+
|
|
201
|
+
## Research roadmap
|
|
202
|
+
|
|
203
|
+
Planned extensions include gradient-boosted model benchmarks, probability calibration,
|
|
204
|
+
SHAP, temporal/geographic validation, county-level opportunity maps, Census/SBA/CDFI
|
|
205
|
+
public-data integrations, constrained optimization, and uncertainty analysis.
|
|
206
|
+
|
|
207
|
+
See [Research Roadmap](docs/RESEARCH_ROADMAP.md).
|
|
208
|
+
|
|
209
|
+
## Citation
|
|
210
|
+
|
|
211
|
+
If you use the software, cite the repository metadata in [CITATION.cff](CITATION.cff).
|
|
212
|
+
If you use the associated research concept, cite the publication separately and clearly
|
|
213
|
+
distinguish research findings from this software prototype.
|
|
214
|
+
|
|
215
|
+
## Contributing
|
|
216
|
+
|
|
217
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md).
|
|
218
|
+
|
|
219
|
+
## Security
|
|
220
|
+
|
|
221
|
+
Do not publish secrets, private financial information, or real applicant records in
|
|
222
|
+
issues or pull requests. See [SECURITY.md](SECURITY.md).
|
|
223
|
+
|
|
224
|
+
## License
|
|
225
|
+
|
|
226
|
+
MIT License. See [LICENSE](LICENSE).
|
|
227
|
+
|
|
228
|
+
## Maintainer
|
|
229
|
+
|
|
230
|
+
**Sakera Begum**
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=69", "wheel"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "equitable-capital-optimization-ai"
|
|
7
|
+
version = "0.2.0"
|
|
8
|
+
description = "Research package for predictive capital-readiness analysis, fairness auditing, explainable AI, and equity-aware capital allocation."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
requires-python = ">=3.11"
|
|
11
|
+
license = { text = "MIT" }
|
|
12
|
+
authors = [{ name = "Sakera Begum" }]
|
|
13
|
+
keywords = [
|
|
14
|
+
"artificial-intelligence",
|
|
15
|
+
"machine-learning",
|
|
16
|
+
"predictive-analytics",
|
|
17
|
+
"entrepreneurship",
|
|
18
|
+
"small-business",
|
|
19
|
+
"capital-allocation",
|
|
20
|
+
"fairness",
|
|
21
|
+
"responsible-ai",
|
|
22
|
+
"explainable-ai",
|
|
23
|
+
"streamlit"
|
|
24
|
+
]
|
|
25
|
+
classifiers = [
|
|
26
|
+
"Development Status :: 3 - Alpha",
|
|
27
|
+
"Intended Audience :: Developers",
|
|
28
|
+
"Intended Audience :: Science/Research",
|
|
29
|
+
"License :: OSI Approved :: MIT License",
|
|
30
|
+
"Operating System :: OS Independent",
|
|
31
|
+
"Programming Language :: Python :: 3",
|
|
32
|
+
"Programming Language :: Python :: 3.11",
|
|
33
|
+
"Programming Language :: Python :: 3.12",
|
|
34
|
+
"Topic :: Scientific/Engineering :: Artificial Intelligence",
|
|
35
|
+
"Topic :: Software Development :: Libraries :: Python Modules"
|
|
36
|
+
]
|
|
37
|
+
dependencies = [
|
|
38
|
+
"numpy>=1.26,<3",
|
|
39
|
+
"pandas>=2.1,<4",
|
|
40
|
+
"plotly>=5.20,<8",
|
|
41
|
+
"scikit-learn>=1.4,<2",
|
|
42
|
+
"streamlit>=1.40,<2"
|
|
43
|
+
]
|
|
44
|
+
|
|
45
|
+
[project.optional-dependencies]
|
|
46
|
+
dev = [
|
|
47
|
+
"build>=1.2,<2",
|
|
48
|
+
"pytest>=8,<10",
|
|
49
|
+
"ruff>=0.8,<1",
|
|
50
|
+
"twine>=5,<7"
|
|
51
|
+
]
|
|
52
|
+
|
|
53
|
+
[project.urls]
|
|
54
|
+
Homepage = "https://github.com/sakera023/equitable-capital-optimization-ai"
|
|
55
|
+
Repository = "https://github.com/sakera023/equitable-capital-optimization-ai"
|
|
56
|
+
Issues = "https://github.com/sakera023/equitable-capital-optimization-ai/issues"
|
|
57
|
+
Documentation = "https://github.com/sakera023/equitable-capital-optimization-ai/tree/main/docs"
|
|
58
|
+
Publication = "https://www.researchgate.net/publication/410866072_An_AI-Powered_Framework_for_Equitable_Capital_Optimization_Leveraging_Predictive_Intelligence_to_Empower_Underserved_Entrepreneurial_Ecosystems_in_the_US"
|
|
59
|
+
|
|
60
|
+
[tool.setuptools.packages.find]
|
|
61
|
+
where = ["src"]
|
|
62
|
+
include = ["equitable_capital*"]
|
|
63
|
+
|
|
64
|
+
[tool.pytest.ini_options]
|
|
65
|
+
testpaths = ["tests"]
|
|
66
|
+
addopts = "-ra"
|
|
67
|
+
pythonpath = ["src"]
|
|
68
|
+
|
|
69
|
+
[tool.ruff]
|
|
70
|
+
target-version = "py311"
|
|
71
|
+
line-length = 100
|
|
72
|
+
|
|
73
|
+
[tool.ruff.lint]
|
|
74
|
+
select = ["E", "F", "I"]
|
|
75
|
+
|
|
76
|
+
[tool.ruff.lint.isort]
|
|
77
|
+
known-first-party = ["equitable_capital"]
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"""Public API for the Equitable Capital Optimization research package."""
|
|
2
|
+
|
|
3
|
+
from .allocation import allocate_capital, summarize_allocation
|
|
4
|
+
from .data import generate_synthetic_startups
|
|
5
|
+
from .explainability import explain_applicant
|
|
6
|
+
from .fairness import fairness_audit, opportunity_gap
|
|
7
|
+
from .modeling import (
|
|
8
|
+
ModelResult,
|
|
9
|
+
build_pipeline,
|
|
10
|
+
global_feature_importance,
|
|
11
|
+
train_model,
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
__all__ = [
|
|
15
|
+
"ModelResult",
|
|
16
|
+
"allocate_capital",
|
|
17
|
+
"build_pipeline",
|
|
18
|
+
"explain_applicant",
|
|
19
|
+
"fairness_audit",
|
|
20
|
+
"generate_synthetic_startups",
|
|
21
|
+
"global_feature_importance",
|
|
22
|
+
"opportunity_gap",
|
|
23
|
+
"summarize_allocation",
|
|
24
|
+
"train_model",
|
|
25
|
+
]
|