元のページ

ステージ1: 環境構築 (データマイニング班)

ここでは pyenv + anaconda で環境構築する例を示します。環境構築後の想定環境にあるパッケージが使えるなら、自由に環境構築して貰って構いません。具体的な動作確認は、PyCharmのインストールで確認ください。
  1. 環境構築前の想定環境
    • OS: Mac OS X 10.13 以降 (10.7.x以降であれば同じ方法で問題無いはず?)
    • Xcode: 10.x (最新にアップデートしよう)
    • Python: 3.6 以降
    • Homebrew: 2.0.5 (2019-03-25時点)

      主に機械学習・自然言語処理用ライブラリインストールのために利用。MacPortsでも構わない。

  2. Homebrew のインストール: 学科のスタートアップ参照。

  3. pyenv のインストール。pyenvで構築する環境は $PYENV_ROOT 以下に保存されるので、変更したい時はお好みでどうぞ。
    ### pyenv のインストール。
    brew install pyenv
    # インストールしたままで古い場合には、その後トラブル可能性高し。
    # 古い場合には brew install 時に update/upgrade しろと言われるはずなので、
    # メッセージを参考に更新しよう。
    
    ### pyenv の環境設定。既にpyenv導入済みの場合は不要です。
    echo export PYENV_ROOT="$HOME/.pyenv" >> ~/.zshrc
    echo export PATH="$PYENV_ROOT/bin:$PATH" >> ~/.zshrc
    echo eval "$(pyenv init -)" >> ~/.zshrc
    
    # ターミナルを再起動して、~/.zshrc が適切に読み込まれるか確認。
    # pyenvが実行できて、
    # ターミナル起動時にエラーが出力されなければOK。
    
    pyenv --version
    # -> pyenv 1.2.7 (2019-03-25時点)
    


  4. anaconda のインストールと、pyenvによる環境移動の仕方。anacondaは、Python3ベースのScikit-learn, Jupyterが動けばOK。
    pyenv install anaconda3 # Python3版のanacondaバージョン一覧が出てくるので、最新をセレクト。
    pyenv install anaconda3-5.2.0
    
    # 環境の切り替え方。
    # 「pyenv global [環境名]」で、デフォルト環境(global)を指定。
    # インストールした環境「anaconda3-5.2.0」に変更するなら次のようにする。
    rehash
    pyenv global anaconda3-5.2.0
    which python
    # -> /opt/homebrew/var/pyenv/shims/python or ~/.pyenv/shims/python
    python --version
    # -> Python 3.6.5 :: Anaconda, Inc.
    #  指定した環境下におけるPythonが選択されてるならOK。
    
    # Mac OS X標準環境に戻りたいなら「system」を指定する。
    pyenv global system
    python --version
    # -> Python 3.6.x
    
    # インストール可能なバージョン一覧の確認
    pyenv install --list
    
    # インストールされてる環境一覧の確認方法
    pyenv versions
    
    # 現在の環境情報
    pyenv version
    
    ### pyenvの動作方法がわかったら、anaconda3-5.2.0をglobal指定しておこう。
    


  5. scikit-learnの動作確認。
    # The Iris Datasetにある
    # plot_iris_dataset.py をダウンロード or コピー作成。
    curl -O http://scikit-learn.org/stable/_downloads/plot_iris_dataset.py
    python plot_iris_dataset.py
    # 実行後に2つのグラフが生成されればOK。
    


  6. 環境構築後の想定環境(2019-03-25時点)。pip freezeの主要パッケージ一覧。#付きは明示的に使うわけじゃないけど、便利なツール。
    #jupyter==1.0.0
    matplotlib==3.0.2
    numpy==1.15.4
    #pandas==0.23.4
    scikit-learn==0.20.1
    scipy==1.1.0
    


  7. Gitの設定(既に設定している人は不要)
    • Gitのインストール。
      • 「git --version」で 2.17以降がインストールされていることを確認できればOK。確認できない場合、「brew install git」。
      • 初めてのインストール時にはいくつか初期設定が必要。
    • ~/.gitignoreのサンプル: gitignore-sample

      emacsで編集するとデフォルトで作成される「更新前のファイル(*.~)」等、gitでバージョン管理する際には不要なファイルを除外するための設定を書いた例。そのまま利用するなら、ダウンロードしたファイルを ~/.gitignore として保存してください。

      他にも、C言語ベースの場合に「*.o」や「a.out」を書けば、コンパイルで自動生成される不要なファイルを、add対象外に指定できます。

    • 編集したファイルを ~/.gitignore としてファイル名を変更し、ホームディレクトリに保存。


  8. 単体テストツールの導入。ここではpytestを例に上げていますが、doctestやその他でも構いません。
    1. Pytestのインストール。(anacondaインストールしたならインストール済み)
      pip install pytest
      
    2. 動作確認。
      pytest --version
      # This is pytest version 3.0.7 (略)
      
    3. 初めてのテスト実行。リンク先の通り test_sample.py を作成し、pytest を使ってテストさせてみよう。
      pytest
      # (確認1) assert について AssertionError が返って来たら正常動作。
      # (確認2) 関数 func() が正しく記述されてると仮定し、テストをそちらにあわせて修正し、テストしてみよう。
      
    4. 関連URL


  9. 統合開発環境 PyCharm のインストール
    • PyCharm公式サイトからCommunity版をダウンロード。
    • 環境設定(インタプリタの指定)。
      1. PyCharmを起動。
      2. アプリメニュー(画面左上)の「PyCharm Communiti Edition」から「Preferences...」を選択。
      3. 「Project Interpreter」を選択し、右側の歯車アイコン」から「Add Local」を選択。
      4. ターミナルで python のインストール場所を確認(whichコマンド)し、それを選択。
      5. Apply してから、OK。(しばらく環境読み込みに時間かかります)
      
    • 動作確認。
      1. 適当な名前の新規プロジェクトを作ろう。
      2. 「plot_iris_dataset.py」というファイルを新規作成。
      3. The Iris Datasetのコードを、先程作った空ファイルにコピペ。
      4. 実行して、グラフ生成されるならOK。
      



    以下は、実験では時間がある時にデモを見せるぐらいで、必須ではありません。






  10. 【興味のある人だけ】自然言語処理用パッケージのインストール
    1. MeCab(形態素解析器)と辞書のインストール
      brew install mecab
      brew install mecab-unidic
      # unidic よりも、NEologdが定期更新されてるので、オススメかも。
      
    2. MeCabの動作確認
      mecab
      # 適当に日本語テキストを入力してみる
      # mecabコマンドを実行すると入力待ちになるため、
      # 適当に日本語テキストを入力してから改行すると解析結果が出力される。
      # このとき文字化けしなければOK。
      
    3. mecab-python (Pythonバインディング)をインストール
      pip install mecab-python3
      
    4. pythonを起動してインタラクティブ・モードでmecab-pythonの動作確認
      import MeCab
      mecab = MeCab.Tagger()
      sent = "日本語を適当に入力してみる"
      print(mecab.parse(sent))
      # 解析結果が文字化けせずに出力されるならOK。
      
  11. 【興味のある人だけ】NLTKのインストール、動作確認。NLTK = Natural Language Toolkit。一般的な言語処理用のライブラリ。
    # anacondaインストールしたなら最初からインストール済み。
    pip install nltk
    
    # 動作確認。
    python
    >>> import nltk
    >>> nltk.__version__
    '3.3'