https://github.com/chakki-works/karura
karura enables you to use machine learning automatically & interactively
https://github.com/chakki-works/karura
kintone machine-learning slackbot
Last synced: about 1 month ago
JSON representation
karura enables you to use machine learning automatically & interactively
- Host: GitHub
- URL: https://github.com/chakki-works/karura
- Owner: chakki-works
- License: apache-2.0
- Created: 2017-02-14T04:53:04.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2018-12-10T03:51:40.000Z (over 6 years ago)
- Last Synced: 2025-04-04T17:02:26.678Z (2 months ago)
- Topics: kintone, machine-learning, slackbot
- Language: Python
- Homepage: https://youtu.be/moZOLXPjjAo
- Size: 1.04 MB
- Stars: 72
- Watchers: 13
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# karura
karura enables you to use machine learning automatically & interactively.

## Architecture
karura has insights.
Each insight gets the data and judges the necessity of its adoption, and if it needed, execute it.

For example, [`NAFrequencyCheckInsight`](https://github.com/chakki-works/karura/blob/master/karura/core/insights/na_frequency_insight.py) watches the amount of the `NA` in each column, and if it is too high, then drop the column. Of course, you can confirm it to the user.
karura can have many insights, so you can add the insight as you needed.

Insights are adopted according to the [InsightIndex](https://github.com/chakki-works/karura/blob/master/karura/core/insight.py#L61) order.
And you can create custom insight by inheriting the [`Insight`](https://github.com/chakki-works/karura/blob/master/karura/core/insight.py) class.**karura is multi-language application. Now supports `ja` and `en`.**
(Some message on kintone is only Japanese).## Usage
### In the Jupyter Notebook
You can use karura as your partner for data analytics.
[karura notebook](https://github.com/chakki-works/karura/blob/master/doc/karura_notebook_demo.ipynb)
To install karura, pip install.
```
pip install karura
```The dependencies as followings.
* numpy
* scipy
* scikit-learn
* matplotlib
* pandasIf you use Slack integration, additionally install below.
* slackbot
If you use kintone integration, additionally install below.
* pykintone
* tornado
* cryptography
* pymongo (Also needs MongoDB)### As Slackbot
You can communicate with karura on [Slack](https://slack.com/)!

When you upload the csv file or tell kintone app name to karura, then interaction starts.You can build your own machine learning model interactively, and also you can get some suggestions about the data treatment from karura.
### As Adviser on kintone
You can ask karura to analyze your kintone app!

* Select the target app
* Select the field that you want to predict and fields that you use to do it
* Push Train buttonThen, you can get analyzed result!
## Setup
### Slackbot
* Use Dockerfile_slackbot
* set below environmental variables
* SLACK_TOKEN: Your Slack token
* LANG: language that you want to use (`ja` or `en`)### kintone
**[Tutorial is available (ja)](http://qiita.com/icoxfog417/private/ba6cc8c804f09fd2b16e)**