ステージ1: 環境構築 (データマイニング班)
ここでは pyenv + anaconda で環境構築する例を示します。環境構築後の想定環境にあるパッケージが使えるなら、自由に環境構築して貰って構いません。具体的な動作確認は、PyCharmのインストールで確認ください。- 環境構築前の想定環境
- Homebrew のインストール
- pyenv のインストール
- anacondaのインストールと、pyenvによる環境移動の仕方
- scikit-learnの動作確認
- 環境構築後の想定環境
- Git の設定(設定済みの人は不要)
- 単体テストツール pytest の導入
- 統合開発環境 PyCharm のインストール
- 以下は、実験では時間がある時にデモを見せるぐらいで、必須ではありません。
- 自然言語処理用パッケージのインストール
- (Python追加) NLTKの動作確認
- 環境構築前の想定環境
- OS: Mac OS X 10.13 以降 (10.7.x以降であれば同じ方法で問題無いはず?)
- Xcode: (最新にアップデートしよう)
- Python: 3.6 以降
- Homebrew: 2.2.10 (2020-03-27時点)
主に機械学習・自然言語処理用ライブラリインストールのために利用。MacPortsでも構わない。
- Homebrew のインストール: 学科のスタートアップ参照。
- 初期化等していなければ、1年次のインストール大会でインストール済み。
- アップデートしていない場合には、「brew upgrade brew」で最新に。
- その後「brew doctor」で、環境確認。古すぎるライブラリがインストールされてる場合には指示されたとおり対応しよう。
- miniconda のインストールと、仮想環境構築の仕方。minicondaは、Python3ベースの最新版を選ぼう。最終的にScikit-learn, Jupyterが動けばOK。
# 環境名を「info3dm」として作成する場合。 conda create -n info3dm python=3.7 # 用意されてる仮想環境一覧の確認。 conda info -e # 環境をinfo3dmに変更。 conda activate info3dm # 「CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.」 # 上記のエラーがでる場合には、指定されたとおり以下を実行。 # 実行すると、.zshrcの後ろにconda設定が追加される。 conda init zsh # ターミナルを再起動して .zshrc を読み込ませてzshを起動。 # その後改めて環境を info3cm に変更。 # 問題なければプロンプトが (base) から (info3dm) に変わるはず。 conda activate info3dm # 必要なパッケージをインストール。 conda install scikit-learn conda install pandas matplotlib jupyter
- scikit-learnの動作確認。
# The Iris Datasetにある # plot_iris_dataset.py をダウンロード or コピー作成。 curl -O https://scikit-learn.org/stable/_downloads/c7579438d28be7f7f30f4b6bbf573e66/plot_iris_dataset.py python plot_iris_dataset.py # 実行後に2つのグラフが生成されればOK。
- 環境構築後の想定環境(2019-03-25時点)。pip freezeの主要パッケージ一覧。#付きは明示的に使うわけじゃないけど、便利なツール。
#jupyter==1.0.0 matplotlib==3.1.3 numpy==1.18.1 pandas==1.0.3 scikit-learn==0.22.1 scipy==1.4.1
- Gitの設定(既に設定している人は不要)
- Gitのインストール。
- 「git --version」で 2.17以降がインストールされていることを確認できればOK。確認できない場合、「brew install git」。
- 初めてのインストール時にはいくつか初期設定が必要。
- ~/.gitignoreのサンプル: gitignore-sample
emacsで編集するとデフォルトで作成される「更新前のファイル(*.~)」等、gitでバージョン管理する際には不要なファイルを除外するための設定を書いた例。そのまま利用するなら、ダウンロードしたファイルを ~/.gitignore として保存してください。
他にも、C言語ベースの場合に「*.o」や「a.out」を書けば、コンパイルで自動生成される不要なファイルを、add対象外に指定できます。
- 編集したファイルを ~/.gitignore としてファイル名を変更し、ホームディレクトリに保存。
- Gitのインストール。
- 単体テストツールの導入。ここではpytestを例に上げていますが、doctestやその他でも構いません。
- Pytestのインストール。(anacondaインストールしたならインストール済み)
pip install pytest
- 動作確認。
pytest --version # This is pytest version 3.0.7 (略)
- 初めてのテスト実行。リンク先の通り test_sample.py を作成し、pytest を使ってテストさせてみよう。
pytest # (確認1) assert について AssertionError が返って来たら正常動作。 # (確認2) 関数 func() が正しく記述されてると仮定し、テストをそちらにあわせて修正し、テストしてみよう。
- 関連URL
- Pytestのインストール。(anacondaインストールしたならインストール済み)
- 統合開発環境 PyCharm or VS Codeのインストール
- PyCharm公式サイトからCommunity版をダウンロードするか、もしくはVisual Studio Codeをダウンロード。
- PyCharmの場合:環境設定(インタプリタの指定)。
1. PyCharmを起動。 2. アプリメニュー(画面左上)の「PyCharm Communiti Edition」から「Preferences...」を選択。 3. 「Project Interpreter」を選択し、右側の歯車アイコン」から「Add Local」を選択。 4. ターミナルで python のインストール場所を確認(whichコマンド)し、それを選択。 5. Apply してから、OK。(しばらく環境読み込みに時間かかります)
- VS Codeの場合:一度新規ファイル作成し、「print("hello")」ぐらいでも良いので中身を書いて.py拡張子をつけて保存。その後、ウィンドウ左下にインタプリタが表示されるので、そこが今回用意した環境になっているかどうかを確認。なっていない場合には、クリックして選択する。
- 動作確認。
1. 適当な名前の新規プロジェクトを作ろう。 2. 「plot_iris_dataset.py」というファイルを新規作成。 3. The Iris Datasetのコードを、先程作った空ファイルにコピペ。 4. 実行して、グラフ生成されるならOK。
以下は、実験では時間がある時にデモを見せるぐらいで、必須ではありません。
- 【興味のある人だけ】自然言語処理用パッケージのインストール
- MeCab(形態素解析器)と辞書のインストール
brew install mecab brew install mecab-unidic # unidic よりも、NEologdが定期更新されてるので、オススメかも。
- MeCabの動作確認
mecab # 適当に日本語テキストを入力してみる # mecabコマンドを実行すると入力待ちになるため、 # 適当に日本語テキストを入力してから改行すると解析結果が出力される。 # このとき文字化けしなければOK。
- mecab-python (Pythonバインディング)をインストール
pip install mecab-python3
- pythonを起動してインタラクティブ・モードでmecab-pythonの動作確認
import MeCab mecab = MeCab.Tagger() sent = "日本語を適当に入力してみる" print(mecab.parse(sent)) # 解析結果が文字化けせずに出力されるならOK。
- MeCab(形態素解析器)と辞書のインストール
- 【興味のある人だけ】NLTKのインストール、動作確認。NLTK = Natural Language Toolkit。一般的な言語処理用のライブラリ。
# anacondaインストールしたなら最初からインストール済み。 pip install nltk # 動作確認。 python >>> import nltk >>> nltk.__version__ '3.3'