Skip to main content

MakeCNN is how we make sure everybody can benefit from ML.

Project description

MakeCNN

More and more people each day want to apply machine learning and AI into their products. As ML expands beyond the traditional fields, those who do want to jump into the fun may find themselves confused with the technical concepts involved and amount of learning required to successfully apply ML to their job. MakeCNN isto make this simple. All you do is just give data, and we take care of the rest!

The way it works is that you have a folder of image data from various classes, and MakeCNN simply extracts that data, trains a Convolutional Neural Network off of it, and then allows you to use it to make predictions on more data and apply it. That way instead of learning what a convolutional neural network is, you can instead apply it ASAP.

Installation

To install simply make sure you are using Python3 and do :

pip install mcnn

More details :

You must have a folder of data with this exact structure for MakeCNN to work (this is pretty standard in the ML world) :

Folder_name (you can choose this) :

  • Training (subfolder)
    • class_1 (subfolder) > contains images
    • class_2 (subfolder) > contains images
    • class_3 (subfolder) > contains images
  • Testing (subfolder)
    • class_1 (subfolder) > contains images
    • class_2 (subfolder) > contains images
    • class_3 (subfolder) > contains images

where the "Training" and "Testing" directories are for the training and testing data. Also note that MakeCNN can handle however many number of classes you want!

To make this easier to understand, if you wanted to use MakeCNN to predict between cats, dogs, and horses you should have a folder like this :

Any_name

  • Training
    • cat > contains cat images
    • dog > contains dog images
    • human > contains human images
  • Testing
    • cat > contains cat images
    • dog > contains dog images
    • human > contains human images

MakeCNN's main API, AutoWork, was designed to be extremely simple.

DEMO

from mcnn.make import AutoWork
aw = AutoWork(dataset_directory = "path_to_folder_containing_data") 

When you instantiate the AutoWork class, you give it the data (or really the string that has the path to the data), and all of that is processed. To control the image size of the images in your data when applied by the CNN model (if you so desire), you can change image_size from 150 (default) to whatever else. Don't worry - even if your images are not 150 x 150, they will be resized.

Then to train :

aw.train(epochs = 20)

Here we train our model for 20 epochs. Easy peasy, lemon squeezy.

If we want to use it, by say evaluating it or predicting it, we have some more stuff. To evaluate :

aw.test_evaluate() # this evaluates it on the test data given

Then to predict on a single image :

aw.predict(path_to_image = "give_path_to_image_file")

and you will get your prediction. It will either be "cat", "dog", or "human" for our example above. You can do this for every image in a file by :

aw.predict_directory(path_to_img_directory = "give_path_to_image_folders")

where you will instead get a list of predictions.

Simple, and easy-to-use - MakeCNN is how we make sure EVERYBODY can leverage ML.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mcnn-1.1.1.tar.gz (5.1 kB view details)

Uploaded Source

Built Distribution

mcnn-1.1.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file mcnn-1.1.1.tar.gz.

File metadata

  • Download URL: mcnn-1.1.1.tar.gz
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for mcnn-1.1.1.tar.gz
Algorithm Hash digest
SHA256 524f33dc32c4c101aebc46d1109578514e7bea5a25eace074c592839f692b58f
MD5 4eb70dc22063fca975e0b8c24c253d83
BLAKE2b-256 c93e1f6d2ec7d2ba6791b2200dc7d3d22fbe1ffd3791ded850b33576a4ffb643

See more details on using hashes here.

File details

Details for the file mcnn-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: mcnn-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for mcnn-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 f5353e27a21c8cad8568ba52f3db8b342477b544f305c31a0bc139cd8bc37b20
MD5 1658d6d1028f9c2a60d5da9093a7fb18
BLAKE2b-256 51960c878eb9e1421a6122c31d61f39c1e2ce5d2e4fc99ca56509a2c231c8481

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page