AcroLearner

Machine Learning API for Cloud Service

English 日本語  中文 

How to Use AcroLearner's Machine Learning APIs
AcroLearner is a set of Machine Learning RESTful APIs that includes Text Classification (Naive Bayes Classifier Model) for Natural Language Processing, Linear Regression Prediction, Logistic Regression Classification, and Time Series Prediction.
1.Preparation for learning
1.1. Definition of learning theme: Define a Machine Learning Theme with its items or not, to issue the trainKey for Learning and resultKey for obtaining results.
1.2. Input of learning data: Set detailed Items for the above Learning Theme. If you want to upload a large amount of items, please feel free to contact me.
2. Learning process: Input a trainKey to generate a Classification/Prediction Model according to the Learning Theme and its items.
   - Text Classification: push the TextLearning button to generate a Naive Bayes Classification Model for the added Machine Learning Theme.
     Only Japanese morphological analysis is processed; other alphabet languages should be partially supported.
   - Linear Regression Prediction: push the LinearLearning button to generate a Linear Regression Prediction Model.
   - Logistic Regression Classification: push the LogisticLearning button to generate a Logistic Regression Classification Model.
   - Time Series Prediction: push the TimeSeriesLearning AR/MA/ARMA/ARIMA button to generate a Time Series Prediction Model.
3. Obtaining classification / prediction results: Input a resultKey to get the result of Classification or Prediction.
   - Text Classification: input a source essay in trainText, push the TextClassification button to get the analysis result of the Naive Bayes Classification Model.
   - Linear Regression Prediction: input a numerical array in trainText, push the LinearPrediction button to get the result of Linear Regression Prediction.
   - Logistic Regression Classification: input a numerical array in trainText, push the LogisticClassification button to get the result of Logistic Regression Classification Probability.
   - Time Series Prediction: input some query parameters, push the TimeSeriesPrediction AR/MA/ARMA/ARIMA button to get the result of Time Series Prediction.
** AR: Autoregressive; MA: Moving average; ARMA: Autoregressive moving average; ARIMA: Autoregressive integrated moving average
** Statistical tool APIs are also available.
** You can also freely try out and enjoy other Get/Update/Delete APIs.

1.Preparation for learning

   1.1.Definition of learning theme
NameTypeURLJsonParamQueryParam

01105004
post
Add a new Machine Learning Theme.
(language=0:English, 1:Japanese, 2:Other) 
(trainType=1:NaivebayesTextClassification, 2:LinearRegression, 3:LogisticRegression, 4:TimeSeriesAR, 5:TimeSeriesMA, 6:TimeSeriesARMA, 7:TimeSeriesARIMA)
It is also possible to add the learning theme together with its item information.
- For NaivebayesTextClassification: category is used here, and multiple items can be saved in the same category.
- For Linear Regression Prediction: at least two items are required. Put a numerical string in trainText that is separated by spaces. The splitting count of every string should be identical. The numerical string in the last trainText is the true value.
- For Logistic Regression Classification: at least two items are required. The classification values are stored in the last trainText, and they can be character strings. These numerical strings or character strings in trainText are separated by spaces, and the splitting count of every string should be identical.
- For Time Series Prediction: only a trainText is required. Put a numerical string in trainText that is separated by spaces.
If successful, please record the trainKey and resultKey.

01105005
put
Update the property information for a Learning Theme.
(language=0: English, 1: Japanese, 2: Other) 
(trainType=1: Naive Bayes Text Classification, 2: Linear Regression, 3: Logistic Regression, 4: Time Series AR, 5: Time Series MA, 6: Time Series ARMA, 7: Time Series ARIMA)
It is also possible to update the Learning Theme's item information. 
- For Naive Bayes Text Classification: category is required to be input here, and multiple items can be saved in the same category.
- For Linear Regression Prediction: at least two items are required. Put a numerical string in trainText that is separated with spaces. The splitting count of every string should be identical. The numerical string in the last trainText is the true value.
- For Logistic Regression Classification: at least two items are required. The classification values are stored in the last trainText, and they can be character strings or numerical strings. These strings in trainText should be separated with spaces, and the splitting count of every string should be identical.
- For Time Series Prediction: only a trainText is required. Put a numerical string in trainText that is separated with spaces.

01105003
get
Get the property information of Learning Theme including resultKey.

01105006
delete
delete the Learning Theme.

01105007
put
Set the status of Learning Theme.(StatusId=0:new; 1:validate; 2:logical deletion)
Important: please set [StatusId] to [1] in advance before calling the following Learning/Analyse/Prediction API.

   1.2.Input of learning data
NameTypeURLJsonParamQueryParam

01106004
post
Add new items to a specified Learning Theme.
- For NaivebayesTextClassification: category is required to be input here, and multiple items can be saved in the same category.
- For Linear Regression Prediction: at least two items are required. Put a numerical string in trainText which is separated with spaces. The splitting count of every string must be identical. The numerical string in the last trainText is the true value.
- For Logistic Regression Classification: at least two items are required. The classification values are stored in the last trainText, and they can be character strings or numerical strings. These strings in trainText are separated with spaces, and the splitting count of every string must be identical.
- For Time Series Prediction: only a trainText is required. Put a numerical string in trainText which is separated with spaces.

01106005
put
Update certain items of a specified Learning Theme.
- For NaivebayesTextClassification: category is required to be input here, and multiple items can be saved in the same category.
- For Linear Regression Prediction: at least two items are required. Put a numerical string in trainText which is separated by spaces, and the splitting count of every string is identical. The numerical string in the last trainText is the true value.
- For Logistic Regression Classification: at least two items are required. The classification values are stored in the last trainText, and they can be character strings or numerical strings. These strings in trainText are separated by spaces, and the splitting count of every string is identical.
- For Time Series Prediction: only a trainText is required. Put a numerical string in trainText which is separated by spaces.

01106001
get
Get the items list of a specified Learning Theme.

01106002
get
Get the CSV file of items for a specified Learning Theme.

01106003
get
Get an Item property of a specified Learning Theme.

01106006
delete
Delete Items of a specified Learning Theme. Multiple itemNos can be inputted.

2.Learning process(Generate Classification/Prediction Model)

NameTypeURLJsonParamQueryParam

01105008
get
Generate a Naive Bayes Classifier Model based on the text datasets provided as input in the Learning item. The process may take some time depending on the amount of learning items.

01105010
get
Generate a Linear Single or Multiple Regression Prediction Model according to the trainText(Space-separated numeric string datasets) which is inputted in the Learning item in advance. The time taken to generate the model may vary depending on the amount of learning items. In the returned result list, if the coefficient of determination (Score) in the last row is close to 1, a satisfactory prediction will be available. (learnCount: number of learning times; learnRate: learning increment rate; interval: the output interval of the learning result)

01105012
post
Generate a Logistic Regression Classification Model according to the trainText(Space-separated numeric string datasets) which was inputted in the Learning item in advance. The test data may use the input JSON here or a part of the trainText(numerical datasets) of the Learning item with testPercent(test data ratio). In the returned result list, if the Score in the last row is close to 1, a satisfying calculation accuracy will be available.
(testPercent: test data ratio in the input training data set; learnCount: learning times; learnRate: learning increment rate; interval: the output interval of the learning result)

01105014
get
Generate an Autoregressive Prediction Model according to the trainText (a space-separated numeric string dataset) which was inputted in the Learning item in advance. In the returned result list, if the Coefficient of Determination (Score) in the last row is close to 1, a satisfying prediction will be available.
(learnCount: number of learning iterations; learnRate: learning increment rate; interval: output interval of learning result; pOrder: autoregressive times for learning)

01105016
get
Generate a Moving Average Regression Prediction Model according to the trainText(a space-separated numeric string dataset) which is inputted in the Learning item in advance. In the returned result list, if the Coefficient of Determination (Score) in the last row is close to 1, a satisfying prediction will be available.
 (learnCount: learning times; learnRate: learning increment rate; interval: the output interval of the learning result; qOrder: Moving Average Regression times for Learning)

01105018
get
Generate an Autoregressive Moving Average Prediction Model based on the "trainText" dataset, which is a space-separated numeric string that has been previously inputted in the "Learning" section. In the returned result list, if the Coefficient of Determination (Score) in the last row is close to 1, it indicates that a satisfactory prediction is available.
(learnCount: number of times to learn; learnRate: learning rate increment; interval: output interval of learning results; pOrder: number of times for Autoregressive learning; qOrder: number of times for Moving Average Regression learning)

01105020
get
Generate an Autoregressive Integrated Moving Average Prediction Model based on the "trainText" dataset, which is a space-separated numeric string that has been previously inputted in the "Learning" section. In the returned result list, if the Coefficient of Determination (Score) in the last row is close to 1, it indicates that a satisfactory prediction is available.
(learnCount: number of times to learn; learnRate: learning rate increment; interval: output interval of learning results; pOrder: number of times for Autoregressive learning; dOrder: number of difference floors for learning; qOrder: number of times for Moving Average Regression learning)

3.Obtaining classification / prediction results

NameTypeURLJsonParamQueryParam

01105009
post
Enter text to get the analysis results of Naive Bayes Classifier Model. The analysis may take some time depending on the number of learning items.

01105011
post
If you enter a numerical array, the prediction result of Linear Regression will be available.

01105013
post
If you enter a numerical array, the probability result of Logistic Regression Classification will be available.

01105015
get
Performing an Autoregressive prediction process  will make the prediction result available.
(outStartNo: starting number of the returned prediction result; outEndNo: ending number of the returned prediction result; cycleStartNo: starting number of the cycle in the learning data; cyclePeriod: cycle period in the learning data)

01105017
get
Performing a Moving Average prediction process will make the prediction result available.
(outStartNo: starting number of the returned prediction result; outEndNo: ending number of the returned prediction result; cycleStartNo: starting number of the cycle in the learning data; cyclePeriod: cycle period in the learning data)

01105019
get
Performing an Autoregressive moving average prediction process will make the prediction result available.
(outStartNo: starting number of the returned prediction result; outEndNo: ending number of the returned prediction result; cycleStartNo: starting number of the cycle in the learning data; cyclePeriod: cycle period in the learning data)

01105021
get
Performing an Autoregressive integrated moving average prediction process will make the prediction result available.
(outStartNo: starting number of the returned prediction result; outEndNo: ending number of the returned prediction result; cycleStartNo: starting number of the cycle in the learning data; cyclePeriod: cycle period in the learning data)

Statistical tool

NameTypeURLJsonParamQueryParam

01301008
post
The results for mean, geometric mean, quadratic mean, median, mode, min, max, sum, count, variance, population variance, standard deviation, total deviation, total covariance, total correlation, deviation matrix, covariance matrix, Pearson's correlation matrix, Spearman's correlation matrix, and Kendall's correlation matrix will be available. In the case of Linear Regression learning, it is recommended to have a correlation value between the predictor variable and objective variable of >0.7.

01301009
post
The following results will be returned: mean, geometric mean, quadratic mean, median, mode, min, max, sum, count, variance, population variance, standard deviation, logarithm, logarithmic difference, ratio, logit, moving average, moving median, white noise, n-order differences, autocovariance, autocorrelation, partial autocovariance, and partial autocorrelation.
(moveInterval: Calculation period for Moving Average or Moving Median; convertMode: Conversion Mode (0: original, 1: diff, 2: log, 3: log diff, 4: ratio, 5: logit); smoothMode: Smoothing Mode (0: none, 1: moving average, 2: moving median); diffOrder: Difference floors for Calculation)