Commit Graph

150 Commits

Author SHA1 Message Date
Arkadiusz Kondas
4dc82710c8 Replace rand with newer versions random_int 2016-12-12 19:09:45 +01:00
Arkadiusz Kondas
2363bbaa75 Add type hint and exceptions annotation 2016-12-12 19:02:09 +01:00
Arkadiusz Kondas
d32197100e Fix docblock 2016-12-12 18:50:27 +01:00
Arkadiusz Kondas
fd85033339 Use __DIR__ instead of dirname 2016-12-12 18:45:14 +01:00
Arkadiusz Kondas
a4f65bd13f Short syntax for applied operations 2016-12-12 18:34:20 +01:00
Arkadiusz Kondas
df28656d0d Fixes after new php-cs-fixer v2.0 2016-12-12 18:11:57 +01:00
Arkadiusz Kondas
8aad8afc37 Add null coalesce operator in token count vectoriezer 2016-12-08 00:45:42 +01:00
Arkadiusz Kondas
38a26d185f Secure index access and type safe comparision in statistic median 2016-12-06 09:03:02 +01:00
Arkadiusz Kondas
6d11116994 Fix default prameters values 2016-12-06 08:55:52 +01:00
Arkadiusz Kondas
9764890ccb Change floatvar to float casting (up to 6 times faster) 2016-12-06 08:52:33 +01:00
Arkadiusz Kondas
d00b7e5668 Secure uniqid usage 2016-12-06 08:50:18 +01:00
Arkadiusz Kondas
a61704501d Fix type compatibility for Minkowski distance 2016-12-06 08:48:45 +01:00
Arkadiusz Kondas
c4f0d1e3b0 Make csv reader binary safe 2016-12-06 08:46:55 +01:00
Arkadiusz Kondas
cbdc049526 Update php-cs-fixer 2016-11-20 22:53:17 +01:00
Arkadiusz Kondas
bca2196b57 Prevent Division by zero error in classification report 2016-11-20 22:49:26 +01:00
Arkadiusz Kondas
349ea16f01 Rename demo datasets and add Dataset suffix 2016-09-30 14:02:08 +02:00
Arkadiusz Kondas
84af842f04 Fix division by zero in ClassificationReport #21 2016-09-27 20:07:21 +02:00
Arkadiusz Kondas
1ce6bb544b Run php-cs-fixer 2016-09-21 21:51:19 +02:00
Patrick Florek
fa87eca375 Add new class Set for simple Set-theoretical operations
### Features

* Works only with primitive types int, float, string
* Implements set theortic operations union, intersection, complement
* Modifies set by adding, removing elements
* Implements \IteratorAggregate for use in loops

### Implementation details

Based on array functions:
* array_diff,
* array_merge,
* array_intersection,
* array_unique,
* array_values,
* sort.

### Drawbacks

* **Do not work with objects.**
* Power set and Cartesian product returning array of Set
2016-09-10 13:24:43 +02:00
Patrick Florek
90038befa9 Apply comments / coding styles
* Remove user-specific gitignore
* Add return type hints
* Avoid global namespace in docs
* Rename rules -> getRules
* Split up rule generation

Todo:
* Move set theory out to math
* Extract rule generation
2016-09-02 00:26:01 +02:00
Patrick Florek
c8bd8db601 # Association rule learning - Apriori algorithm
* Generating frequent k-length item sets
* Generating rules based on frequent item sets
* Algorithm has exponential complexity, be aware of it
* Apriori algorithm is split into apriori and candidates method
* Second step rule generation is implemented by rules method
* Internal methods are invoked for fine grain unit tests
* Wikipedia's train samples and an alternative are provided for test cases
* Small documentation for public interface is also shipped
2016-08-23 15:44:53 +02:00
Arkadiusz Kondas
638119fc98 code style fixes 2016-08-14 18:27:08 +02:00
Arkadiusz Kondas
f0bd5ae424 Create MLP Regressor draft 2016-08-12 16:29:50 +02:00
Arkadiusz Kondas
2412f15923 Add activationFunction parameter for Perceptron and Layer 2016-08-11 13:21:22 +02:00
Arkadiusz Kondas
c506a84164 refactor Backpropagation methods and simplify things 2016-08-10 23:03:02 +02:00
Arkadiusz Kondas
66d029e94f implement and test Backpropagation training 2016-08-10 22:43:47 +02:00
Arkadiusz Kondas
72afeb7040 implements and test multilayer perceptron methods 2016-08-09 13:27:43 +02:00
Arkadiusz Kondas
ddb3cc367b test abstraction from LayeredNetwork 2016-08-07 23:41:02 +02:00
Arkadiusz Kondas
12ee62bbca create Network and Training contracts 2016-08-05 16:12:39 +02:00
Arkadiusz Kondas
95b29d40b1 add Layer, Input and Bias for neutal network 2016-08-05 10:20:31 +02:00
Arkadiusz Kondas
7062ee29e1 add Neuron and Synapse classes 2016-08-02 20:30:20 +02:00
Arkadiusz Kondas
f186aa9c0b extract functions from loops and remove unused code 2016-08-02 13:23:58 +02:00
Arkadiusz Kondas
637fd613b8 implement activation function for neural network 2016-08-02 13:07:47 +02:00
Pablo Joán Iglesias
bbbf5cfc9d For each body should be wrapped in an if statement (#14)
unit test to go with commit
2016-07-26 08:14:57 +02:00
Arkadiusz Kondas
403824d23b test exception on kmeans 2016-07-24 14:01:17 +02:00
Arkadiusz Kondas
448eaafd78 remove unused exception 2016-07-24 13:52:52 +02:00
Arkadiusz Kondas
074dcf7470 php-cs-fixer 2016-07-19 21:59:23 +02:00
Arkadiusz Kondas
9665457159 implement ClassificationReport class 2016-07-19 21:58:59 +02:00
Arkadiusz Kondas
7abee3061a docs for files dataset and php-cs-fixer 2016-07-16 23:56:52 +02:00
Arkadiusz Kondas
e0b560f31d create FilesDataset class 2016-07-16 23:29:40 +02:00
Arkadiusz Kondas
9f140d5b6f fix problem with token count vectorizer array order 2016-07-14 13:25:11 +02:00
Arkadiusz Kondas
f04cc04da5 create StratifiedRandomSplit for cross validation 2016-07-10 14:13:35 +02:00
Arkadiusz Kondas
adc2d1c81b change hhvm to 3.12 2016-07-07 23:38:11 +02:00
Arkadiusz Kondas
f3288c5946 fix scalar typehint for hhvm 2016-07-07 23:33:06 +02:00
Arkadiusz Kondas
4aa9702943 fix errors on hhvm with float casting 2016-07-07 22:47:36 +02:00
Arkadiusz Kondas
6c7416a9c4 implement ConfusionMatrix metric 2016-07-07 00:29:58 +02:00
Arkadiusz Kondas
cce68997a1 implement StopWords in TokenCountVectorizer 2016-07-06 23:22:29 +02:00
Arkadiusz Kondas
a2aa27adba fix problem in SVM with path on windows 2016-07-04 22:22:22 +02:00
Arkadiusz Kondas
9507d58a80 add support for osx 2016-07-01 22:25:57 +02:00
Arkadiusz Kondas
be7693ff2e remove osx from travis - dont work with php 7.0 2016-06-30 23:27:17 +02:00