M1 MacbookPro が到着する前にするべきことの進捗状況

MacBookPro設定

 1月1日に、M1 MacbookPro を注文しましたが、早くても2週間後に到着する予定です。到着するまでに、できるだけ必要な準備を済ませ、到着後に効率よく機械学習をスタートさせたいと考えています。その作業の進捗状況をこちらに記録しておきたいと思います。

最終的な実行環境をイメージする[適宜、見直し]

 今回購入するノートパソコン M1 Macbook Pro は、私にとっては初めてのMacとなります。今までは、Windowsを 中心に、Linux などは使用したことがありましたが、MacOS(Big Sur)は初めてです。正確には、iPhone や iPad は使っていますが、パソコンとしての Apple製品は初めてです。

 まずは、現時点の私のレベルで実行可能なことを、実践していきたいと思います。その後、M1 Macbook Pro(Mac OS)に慣れてきたらば、本当にやりたいことを実践していきたいと思います。

現時点で、できそうなこと

 準備した Pythonプログラム(機械学習のプログラム)を、M1 MacBook Pro で実行できればと考えています。Windows(WindowsPC)では、Anaconda3 から Jupyter Notebook を起動して、それを使ってプログラムをコーディングして実行していました。

 これと同じことが、M1 MacbookProでやれればと考えています。そのために必要なソフトウェアとしては、以下のものが考えられます。

 PythonAnacondaJupyter Notebook

これらのソフトウェアは、Mac(Intel)用には既にでており、正常に動作すると思います。問題は、M1 Mac 用に出ているか、また正常に動作するかは確認する必要があると思います。

 Anaconda3 ですが、Jupyter Notebook を含む、プログラム作成に必要な多くの基本的なライブラリが入っているので、これが動作すれば大丈夫です。うまく動作しない場合は、Jupyter Notebookだけでも、動作して欲しいと考えています。Python に関しては、MacbookProにプレインストールされていると聞いています。

イメージの実現に必要なソフトウェアの洗い出し

 前節でお話したように、当座、やりたいことを実践するためには、Anaconda3 だけがあれば十分です。ネットで検索したところ、以下のサイトがありました。

<関連記事>
MacOS版Anaconda3のインストール(Python Japan)

 ただし、これはMac(Inrtel)用と思われます。もしかしたら動作するかも知れませんが、M1への対応状況を確認したいと思います。

ソフトウェアのM1への対応状況を調べる

 Anaconda3 の M1対応状況を調べてみました。結論から言うと、まだ対応していないようです。今後、間違いなく対応することは予想されますが、現状では厳しそうです。

非対応ソフトウェアの代替や、解決方法の対応

 現在検索中ですが、これと言って良い解決法はまだ見つかりません。M1 Macbook Pro のエミュレータの力に期待したいところです。

dockerの学習

投稿記事に記載しました。

Docker のインストールと、動作確認(for Windows)

「機械学習」そのものの学習(このブログで実行するプログラムについては準備完了)

 人工知能については、現在、学習中です。今回、書籍「ゼロから作る Deep Learning②」~自然言語処理編~、の中の「言語学習」プログラムを実行したいと考えています。理由は、言語学習には多くの計算が必要で、時間も非常に長くなります。私のパソコン(Intel i5)では、1つのプログラムの実行に、丸二日以上の時間が必要になるプログラムもあります。

 当初の目標は、準備した「言語学習」プログラムを、M1チップを搭載した Macbook Pro で計算させることです。もちろん、高速な計算スピードを期待してのことです。詳細に関しては、後日、こちらで説明したいと思います。

Google Colaboratory(以後、GC) 上でのプログラムの実行(準備完了)

 ご存じの方もいると思いますが、Google Colaboratoryは、Googleが無償で提供している、クラウドサービスです。具体的には、「Jupyter Notebook」で作られたプログラムを、クラウド上で実行できる環境を提供してくれます。最大の特徴は、無償であること、また、GPUを使用した計算もサポートしてくれることです。

 このGPUを使用した計算には、馴染みのない方もいると思います。簡単に言うと、CPUの代わりにGPUに計算をさせるもので、機械学習においては絶大な力を発揮します。一般的には、CPUの5~10倍の性能の向上が見込まれます。

 前節でお話をしました、言語学習のプログラムは、実際に Google Colaboratory にアップして動作確認が済んでいます。また、GPU を有効にした学習も実験済みです。プログラムの一部だけの実行だったので、正確な結果ではありませんが、私のパソコン(Intel i5)と比較して、約20倍近い計算時間の短縮が実現しました。

<関連記事>
Google Colaboratory の GPU による学習の高速化(トラブルシューティング)

M1チップを効率的に利用するための、技術の学習と実践

 当分は、こちらには手をつけられないと思います。夢としては、CPU、GPU、Neural Engineの全ユニットが並列に計算できる、ようなことができたらいいなと考えています。

コメント

タイトルとURLをコピーしました