Skip to content

Commit e6812ae

Browse files
author
Guled
committed
Updated README
1 parent 65d60cf commit e6812ae

File tree

2 files changed

+37
-6
lines changed

2 files changed

+37
-6
lines changed

Example/Tests/RidgeRegressionTest.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class RidgeRegressionTests: XCTestCase {
1515

1616
func testFitGradientDescent() {
1717
// Obtain data from csv file
18-
let path = Bundle(for: PolynomialRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
18+
let path = Bundle(for: RidgeRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
1919
let csvUrl = NSURL(fileURLWithPath: path!)
2020
let file = try! String(contentsOf: csvUrl as URL, encoding: String.Encoding.utf8)
2121
let data = CSVReader(with: file)
@@ -46,7 +46,7 @@ class RidgeRegressionTests: XCTestCase {
4646

4747
func testRSS() {
4848
// Obtain data from csv file
49-
let path = Bundle(for: PolynomialRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
49+
let path = Bundle(for: RidgeRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
5050
let csvUrl = NSURL(fileURLWithPath: path!)
5151
let file = try! String(contentsOf: csvUrl as URL, encoding: String.Encoding.utf8)
5252
let data = CSVReader(with: file)
@@ -80,7 +80,7 @@ class RidgeRegressionTests: XCTestCase {
8080
func testOneTimePrediction() {
8181

8282
// Obtain data from csv file
83-
let path = Bundle(for: PolynomialRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
83+
let path = Bundle(for: RidgeRegressionTests.self).path(forResource: "kc_house_data", ofType: "csv")
8484
let csvUrl = NSURL(fileURLWithPath: path!)
8585
let file = try! String(contentsOf: csvUrl as URL, encoding: String.Encoding.utf8)
8686
let data = CSVReader(with: file)

README.md

Lines changed: 34 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,36 +20,66 @@ it, simply add the following line to your Podfile:
2020
pod 'MachineLearningKit', '0.1.3'
2121
```
2222

23+
24+
----------------------------------------------
25+
26+
## Contributing
27+
The mission of this project is to give developers the ability to create add Machine Learning algorithms to their projects with ease and to enable the creation of advanced projects using the Swift programing language. With this being said, I encourage all developers interested in making Machine Learning accessible to the developers who work with the iOS apps and TVOS apps to contribute to this project.
28+
29+
To contribute an algorithm **not** currently available within the framework, please create an issue and state what algorithm you have implemented. Make sure that there are unit tests involved where applicable. Also, provide a brief overview of how to use your algorithm. You are also welcome to impelment algorithms within the **Roadmap** section (below).
30+
31+
To contribute to an already existant algorithm within the framework, please create an issue and state any changes or additions you have made.
32+
33+
----------------------------------------------
34+
2335
## Wiki
2436

2537
- [x] [Simple Linear Regression (1 Feature)](https://github.com/Somnibyte/MLKit/wiki/Simple-Linear-Regression-Tutorial)
2638
- [x] [Polynomial Regression](https://github.com/Somnibyte/MLKit/wiki/Polynomial-Regression-Tutorial)
2739
- [x] [Lasso Regression] (https://github.com/Somnibyte/MLKit/wiki/Lasso-Regression-Tutorial)
40+
- [x] [Ridge Regression] (https://github.com/Somnibyte/MLKit/wiki/Ridge-Regression-Tutorial)
2841

42+
----------------------------------------------
2943

30-
### TODO:
44+
### Roadmap:
3145

3246
- [ ] KMeans++ Implementation
3347
- [ ] KMeans Clustering Documentation
3448
- [ ] Neural Network Documentation
35-
- [ ] Ridge Regression Documentation
36-
49+
- [ ] Enable Neural Network class to allow for multiple hidden layers (currently 1 is only allowed)
50+
- [ ] Logistic Regression
51+
- [ ] Genetic Algorithms
52+
- [ ] Self Organizing Maps
53+
- [ ] Decision Trees
54+
55+
### Future Releases:
56+
- [ ] Convolutional Neural Network
57+
- [ ] Recurrent Neural Network
58+
- [ ] Artificial Neural Network using Metal
59+
- [ ] Game Playing AI (MiniMax, Alpha-Beta Pruning)
3760

61+
----------------------------------------------
3862
## Features (So Far)
3963

4064
- [x] Matrix and Vector Operations (uses [Upsurge framework](https://github.com/aleph7/Upsurge))
4165
- [x] Simple Linear Regression (Allows for 1 feature set)
4266
- [x] Polynomial Regression (Allows for multiple features)
4367
- [x] Ridge Regression
68+
- [x] Neural Network (/w BackPropagation, Single Layer Perceptron, Multi-Layer Perceptron (1 Hidden Layer limit), and Single Layer Adaline
69+
- [x] K-Means Clustering
4470
- [x] Allows for splitting your data into training, validation, and test sets.
4571
- [x] K-Fold Cross Validation & Ability to test various L2 penalties for Ridge Regression
4672
- [x] Single Layer Perceptron, Multi-Layer Perceptron, & Adaline ANN Architectures
4773

74+
----------------------------------------------
75+
4876
## Frameworks that MLKit uses
4977

5078
- 🙌 [Upsurge](https://github.com/aleph7/Upsurge) (Matrix and Vector Operations)
5179
- 🙌 [CSVReader](https://github.com/peterentwistle/SwiftCSVReader) (CSV Reading) (Used in Unit Testing)
5280

81+
----------------------------------------------
82+
5383
## Development Schedule
5484

5585
### Week of Feb 20th
@@ -68,6 +98,7 @@ pod 'MachineLearningKit', '0.1.3'
6898
|---|---|---|---|---|
6999
|Neural Network Documentation & BackPropagation Algorithm|BackPropagation Algorithm & K-Means++|TBD|TBD|
70100

101+
----------------------------------------------
71102

72103
# License
73104
MIT License

0 commit comments

Comments
 (0)