機械学習2019年7月振り返り
概要
これは個人用メモである。
何を7月に何をしたかのメモである。
そして随時更新していく。なぜなら月末にまとめてやると
何をしたのかわからなくなるからだ。
MNISTのエラー
事象
家のデスクトップPC windows10 32bit, memory 4GB,では
sklearnのMNISTが動かなかった。↓
from sklearn.datasets import fetch_openml
mnist = fetch_openml('mnist_784', version=1, cache=True)
MemoryErrorと言われた。
対策
・ぐぐる。→該当なし。
・GIthubで質問→返事なし
・別PCのwin10 64bitだと動く→やったね!
AWS導入
どうも64bitだと動きそうだが、64bitにするにはクリーンインストールが必要。それはしたくないので、AWSで環境を立てることにした。
準備
1.AWSに登録
2.セキュリティ等の初期設定
4.Jupyter Notebookの設定
ハマりポイント
- exitするとPATHが消える(デフォルト)そのため、直接bash_profileに追記
- jupyterコンフィグに記載するパスワードはsha1の部分から
- アクセスはhttps
- ログインできない→パスワード再設定し、openssl再実行
- ログインパスワードはハッシュ化される前のもの
- /etc/rc.local を編集して自動起動させる
5.root でのSSH許可。
パスワード設定
・sudo su -
・passwd root
・vi /etc/ssh/sshdc_config
PasswordAuthentication yes
PermitRootLogin yes#いらないかも
・ec2-userの公開鍵をそのままコピーします。#いらないかも
mv /root/.ssh/authorized_keys /root/.ssh/authorized_keys_bak
cp -f /home/ec2-user/.ssh/authorized_keys /root/.ssh/authorized_keys
・service sshd restart
EC2 インスタンスに接続するためのパスワードログインを有効にする
EC2のAmazonLinuxでrootログイン可能にする(AMI設定まで) - Qiita
5.Gitインストール
・yum install git
・ git config --global user.name "名前"
・git config --global user.emai "メアド"
・git config --list
・ssh-keygen -t rsa -b 4096 -C "git@git-hub.com"
・/root/.ssh/id_rsa.pubができるのでGitHubにこの文字列を登録
6.Git復習
7.Gitでcloneして自分のリポジトリにUPする
cloneしたリポジトリを別リポジトリとしてリモートにpushする - Qiita
・git remote -v
・git remote set-url origin 自分のリポジトリURL
AWSは無料版はメモリが1GBだったので、MNISTが読み込めませんでした!!!!!!エラー文すら出ずに止まる!!!
AWSがだめならGoogle Colabnoratoryを使えばいいじゃない!
8. Google Colaboratory
初期設定等
https://www.codexa.net/how-to-use-google-colaboratory/
便利TIPS
https://karaage.hatenadiary.jp/entry/2018/12/17/073000
https://qiita.com/yoshiweb/items/3d6dbe9c3f7c81241cb9
javascript:location.href=location.href.replace('https://github.com', 'https://colab.research.google.com/github');
分かりづらかったので捕捉
・上記URLをブックマークする。適当なサイトをブックマークし、URLを書き換える
・さっきのブックマークをクリックするとGCで勝手に開かれる!!!
以上
Colaboratory上でGoogleDriveにアクセスする
google Colaboratoryでファイルを読み込む方法 - Qiita
そのほかは大体これを見ればわかる
https://colab.research.google.com/notebooks/io.ipynb#scrollTo=u22w3BFiOveA