Skip to content

Instantly share code, notes, and snippets.

@dacamo76
Last active September 26, 2017 21:49
Show Gist options
  • Save dacamo76/4780765 to your computer and use it in GitHub Desktop.
Save dacamo76/4780765 to your computer and use it in GitHub Desktop.
Installing scikit-learn on Amazon Linux AMI on EC2

To install scikit-learn easily run the following command.

curl https://gist.githubusercontent.com/dacamo76/4780765/raw/c3779996d8f6b13caaaa48d33aa1585684c7f8e6/scikit-learn-install.sh | sh

Please look over the shell file being run to make sure no evil is done to your machine.

sudo yum -y install gcc-c++ python27-devel atlas-sse3-devel lapack-devel
wget https://pypi.python.org/packages/source/v/virtualenv/virtualenv-1.11.6.tar.gz
tar xzf virtualenv-1.11.6.tar.gz
python27 virtualenv-1.11.6/virtualenv.py sk-learn
. sk-learn/bin/activate
pip install numpy
pip install scipy
pip install scikit-learn
@sohailbud
Copy link

Hello, I am trying to run mrjob script on amazon ec2 and in order to do that, I need to install scikit learn on amazon. Can you please explain how exactly to run your code, I am pretty new to this. Thanks!

@dacamo76
Copy link
Author

dacamo76 commented May 9, 2014

To run it blindly just copy the command in README.md and run it in your console.

For a more detailed explanation check out my blog post http://dacamo76.com/blog/2012/12/07/installing-scikit-learn-on-amazon-ec2 which details what each step does.

@rongyuan124
Copy link

I copied the above link but it still doesn't work. Does it depend on Python version?

@duhaime
Copy link

duhaime commented Aug 4, 2015

@rongyuan124 it depends on your OS, among other things. Are you on Redhat or the Amazon Linux OS? If not, you may need to change the yum install to apt-get install

@TamakiSakura
Copy link

I recommend adding
pip install -U pip
command before doing any of the pip install stuff.

There seems to be some issue with the default pip version, which give out the following error sometimes when installing scipy

Traceback (most recent call last):
File "/home/ec2-user/sk-learn/bin/pip", line 11, in
sys.exit(main())
File "/home/ec2-user/sk-learn/local/lib/python2.7/dist-packages/pip/init.py", line 185, in main
return command.main(cmd_args)
File "/home/ec2-user/sk-learn/local/lib/python2.7/dist-packages/pip/basecommand.py", line 161, in main
text = '\n'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 51: ordinal not in range(128)

@olivetechnologies
Copy link

olivetechnologies commented Jun 15, 2016

Tamaki thanks for your input.
It really helped me.

@estwanick
Copy link

This script did not install scikit-learn for me, I instead made my own bootstrap script:

#!/bin/bash
sudo pip install numpy
sudo pip install scipy
sudo pip install -U scikit-learn

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment