C#erによるPython学習、C#とPythonの違い

2021年現在、仕事では 「C# + C言語のDLL」の開発がほとんどで、Pythonを使う機会が無いのですが、さすがに Python を勉強するか?と思っています。

しかし、C#脳でPythonを勉強していると、なんで、こうするの?と思う事がよくあります。

でも、私がVB6.0から→(C++/CLI)→C#に乗り換えた時もC#の何がいいの?とか思ってましたが、今はC#最高!になってます。(C++/CLIはやらなきゃ良かった。。)

Python最高!になる日は来るのだろうか??


(2021.5.22追記)

Pythonを集中的に勉強しだしてから半年たちましたが、ようやくPythonでもいいかも?と思えるようになってきました。最初の1か月ぐらいはPythonが嫌でしょうがなかったですけどねww

開発環境もVisual Studio2019であれば、デバッグなどはC#と同じようにステップ実行やウォッチなども使えるので便利です。Visual Studio Codeも使ってみましたが、コーディングはVS Codeの方がやりやすいように感じましたが、デバッグは慣れもあって、Visual Studioの方が良かったです。

Visual Studio2015も使いましたが、Pythonの環境を構築するのが難しくて断念しました。

Pythonを始めてモヤモヤポイントがGUIをどうするの?というのがあったのですが、tkinterを使うとC#と同じようなGUIを作る事ができます。

Pythonは処理時間が遅くない?という思いもありましたが、OpenCVやnumpyなどを使えば処理が遅い事は無いですし、C#でやっていた時のように重たい処理はC言語ライブラリを作成し、DllImportで関数を呼んでいたのと同じ様に、Pythonではctypesというモジュールを使うと、C言語ライブラリの関数を呼ぶ事が可能になります。

あとは、Pythonではフリーで使えるライブラリが圧倒的に多いので、目的に合ったライブラリが見つかれば、開発時間の短縮にもつながると思います。


 

以下は、C#から見たときのPythonの違いを書いています。

 

構文的な違い

  • 終端文字(;)が無い
  • if文やfor文などの中カッコ({})が無い代わりに、行の最後にコロン(:)を付けてインデントを揃える
  • クラスのNewがない。
    Newが無いので関数を呼んでいるのか?クラスをインスタンスしているのか?分かりづらい
  • クラスにprivate/publicが無い。基本、publicだが代替手法がある
  • オーバーロードがない。→デフォルト引数で代替できるところまで。
  • ラベルやボタンなどのC#で言うところのコントロールはPythonでは ウィジェット(widget)という
  • 特殊メソッドなるものがある

型宣言がない

int a = 123;
string b = "abc";
a = 123
b = "abc"

型が無いのに型違いでエラーになる事もあり、なかなか慣れません。。
とくに関数に変数を渡す時がわかりずらい。
型を調べるには type()関数を使うとできます。

a = 100
b = "abc"

print(type(a))
print(type(b))

# 型が XX かどうか?
if (type(a) is int):
  print("int型です")
elif (type(a) is float):
  print("float型です")
elif (type(a) is str):
  print("str型です")
else:
  print("その他の型です")

実行結果

<class ‘int’>

<class ‘str’>

int型です

型は、全てがC#でいうところのobject型に近い

 

行のコメント

// 一行のコメント
# 一行のコメント

行の先頭にシャープ(#)を付けます。

 

複数行のコメント

/*
複数行の
コメント
*/
"""
複数行の
コメント
"""

シングルクォーテーション(‘)を3つ(”’)もしくは ダブルクォーテーション(“)を3つ(”””‘)でコメントにしたい部分を囲います。

 

関数のコメント

/// <summary>
/// aとbを足す
/// </summary>
/// <param name="a">足す値a</param>
/// <param name="b">足す値b</param>
/// <returns></returns>
private static int Add(int a, int b)
{
    return a + b;
}

C#では、関数の上の行でスラッシュ(/)を3つ(///)書くと、XMLコメントのフォーマットが表示されるので、そこにコメントを記載します。

def add(a, b):
  """
  [概要]
  aとbを足したものを返す
  [パラメータ]
  a : 足す値a
  b : 足す値b
  [注釈]
  aとbは同じ型のこと
  """
  return a + b

関数名の行の下にインデントして、シングルクォーテーション(‘)を3つ(”’)もしくは ダブルクォーテーション(“)を3つ(”””‘)でコメントにしたい部分を囲います。

一般的なコメントの定型は分からないのですが、上記プログラムのように記載すると、開発環境によって、以下のように関数の説明が表示されます。

 

インクリメント/デクリメント

int i = 0;
i++;  // インクリメント
i--;  // デクリメント
i = 0
i += 1  # インクリメント
i -= 1  # デクリメント

値の代入は参照渡し?

まずは下記のサンプルをご覧ください。

a = 100
print(id(a))
a = 200
print(id(a))
b = a
print(id(b))

実行結果

10917664

10920864

10920864

id()関数はポインタ?みたいなのを取得できる関数がすが、上記の例では a に値を入れるたびに id が変わっています。さらに b に a を代入すると、a と b の id は等しくなります。

ただし、C#の参照渡し/値渡しの感覚とは少し異なるので注意が必要です。
どちらかというと、ポインタの値渡し(アドレスの値を渡す)と言った方が近いかもしれません。

 

まとめ

C#とPythonの違いは、当然ながら他にもたくさんありますが、個別にまとめたいと思います。

PythonはC#と比べて、処理は遅そうだし、画像の表示(フレームレート)も遅そうだし、GUIプログラムを作るのも大変そう。。と不安に思いながら勉強していてます。

Pythonの場合、処理をベタに書いている(クラスではない)例の紹介が多く、さらに、ほとんどがCUI(Character-based User Interface)なので、クラスでGUIなC#に慣れていると、どうしても抵抗があったのですが、GUIモジュールのTkinterをクラスで書き始めると、少しPythonの抵抗が薄れ始めています。

【Python】おすすめの開発環境は?

Pythonの始めるには、まずは開発環境を整える必要がありますが、Googleで調べると、いろいろと言葉が出てきて、何が何だか分からなくなります。(って、私はそうでした。)

 

Anaconda、Jupyter Notebook、Visual Source Code、PyCharmなどなど。。

 

Anacondaそのものが開発環境?とか思っていたレベルから始めたので、最初は大変でした。。

人によっても、おすすめしている開発環境が異なるので、何を信じたらいいか?分からなくなりますね。

おそらくは、人によって、Pythonをやる前の開発環境(OSや使用言語)が異なるために、おすすめも違ってくるのだと思いますが、WindowsでC#を使って開発をしていた身としては、以下の2つがおすすめ出来ると思っています。

 

Google Colaboratory

初めてPythonを触るなら、GoogleのColaboratoryがおすすめです。

 

Colaboratoryのページ(https://colab.research.google.com/notebooks/welcome.ipynb?hl=ja)にアクセスさえすれば、開発環境のインストールなしに、Pythonプログラムを組む事が可能になります。

 

下の画像は、私がPythonを勉強する時に使っていた画面ですが、Pythonのコードとテキストを入れ込めるので、注意点などをテキストで書きながら、動作を確認してPythonを勉強しています。

自分なりのテキストを作るつもりで、Pythonの動作を確かめていくと、後から見直せるので、便利だと思います。

さらに、ファイルがクラウド上にあるので、会社や自宅など、場所、PCを問わず、見る事ができるのも助かります。

 

オプションで、犬とか猫を表示出来るのも、ちょっとかわいい。。

 

まず最初は、このページ↓がおススメです。

https://www.python.jp/train/index.html

 

Visual Studio

ColaboratoryでPythonをある程度、覚えて、アプリを作りたくなったら、Visual Studio がおすすめだと思います。

 

それは私がC#をやっていたからという理由もありますが、プログラムのデバッグをするときに、やっぱりステップ実行をしながら変数の値をウォッチを使いながら確認したり、関数の定義へ行ったり/戻ったり、ステップインなどをしたくなる訳です。

そうしたら、やっぱり使い慣れている Visual Studio が一番便利に感じます。

 

 

また、Visual Studio 2017以降では、Pythonの開発環境というウィンドウがあり、Pythonのバージョンごとに各種ライブラリが簡単に切り替えられるようになっており、ライブラリのインストール、更新、削除が非常に簡単です。(Visual Studio2015にもPython環境のウィンドウがありますが、使いにくいです。)

 

まとめ

今回は、Pythonの開発環境として、Googleの Colaboratory と Visual Studio がおすすめと言っていますが、私自身も、まだPythonの開発経験が浅いので、結局のところ本当に何がいいのか?もやもやしている部分もありますが、C#の次にPythonをやる分には、上の2つが入りやすかったです。

また、Pythonにはさまざまなモジュール(ライブライ)があって、何からやったらいいの?という疑問もあったのですが、私の場合、Visual Studioで、ウィンドウGUI用モジュールのtkinterを勉強し始めてから、理解が進んだ気がします。

https://imagingsolution.net/tag/tkinter/

【Python,matplotlib】動くグラフをAnimationGifに保存する方法

matplotlibで動くグラフを書いて、AnimationGifに保存するにはImageMagickという画像のソフトをmatplotlibから呼び出すように設定すれば、こんな風な動くグラフが作成できます。

 

まずはImageMagickの入手から。

ImageMagickは下記ページより、ダウンロードします。

http://www.imagemagick.org/script/download.php

 

Windows版のファイルは下の方にあるので、downloadをクリックしてファイル(ImageMagick-7.0.6-0-Q16-x64-dll.exe)を入手します。

 

ImageMagickのインストールはダウンロードしたファイルを実行し、基本デフォルトのままのインストールで大丈夫だと思います。

 

ImageMagickのインストールが出来たら、matplotlibの設定を行います。

 

まず、matplotlibのmatplotlibrcというファイルがある場所を確認します。

場所はPythonのプログラムで

 

import matplotlib
print(matplotlib.matplotlib_fname())

 

と入力し実行すると、matplotlibrcのファイルのパスが表示されるので、matplotlibrcファイルをメモ帳などのテキストエディタで開きます。

 

私の場合のパスは

C:\Program Files\Anaconda3\Lib\site-packages\matplotlib\mpl-data\matplotlibrc

でした。

 

このmatplotlibrcファイルの一番下の方に

 

#animation.convert_path: ‘convert’ #・・・・・・

と書いてある部分があるので、これを編集してもいいのですが、私は↓のようにImageMagickの実行ファイル(magick.exe)のパスを追記しました。

 

この状態で、このようなコード↓を書くと、最初に示したアニメーションGifのファイルが生成されます。

 

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

fig = plt.figure()
x = np.arange(-np.pi, np.pi, 0.1)

ims = []
for a in range(40):
    y = np.sin(x - a / 20 *  np.pi)
    # sinカーブ
    im1, = plt.plot(x, y, "b")
    # 点
    im2, = plt.plot(-np.pi, np.sin(-np.pi - a / 20 *  np.pi), marker='o', color='b' )

    ims.append([im1, im2])

ani = animation.ArtistAnimation(fig, ims, interval=33)
ani.save('sample.gif', writer='imagemagick')

 

Sinカーブだけのサンプルは探せばいっぱいあるのですが、線上に点を打つだけでも、訳わかんなかった~(まだ、分かってないですけど。。)

PythonをVisual Studioでインストールする方法

PythonはこれまでAnacondaをインストールしてJupyter NotebookからPythonのプログラムを書いていたのですが、今までプログラムといえばIDEはVisual Studioを使っていた身としては、お手軽にステップ実行ができるJupyter Notebookは良いといえばいいのですが、インテリセンスが使えないのは、ものすごくつらい。。

 

ということで、Visual StudioからPythonを使えるように、Visual StudioへPythonをインストールしました。

 

まず、私の環境は

●Windows10(64bit)

●Visual Studio Community 2017

です。

 

Visual Studio 2017では、後から簡単にPythonなどのオプションを追加できるようになっているので、Visual Studio 2017をインストールした後からのPythonのインストール方法です。

 

まずは、スタートメニューからVisual Studio Installerを起動します。

 

Visual Studio Installerが起動したら、Visual Studio Community 2017 の変更をクリックします。

 

Python開発の右上のチェックを入れ、オプションを選択します。

実際にどれが必要か?詳しくはわかっていないのですが、とりあえずはこの↓設定にしました。

 

オプションのチェックを入れたら、変更をクリックします。

すると、Pythonのインストールが始まります。

 

これで、インストールは完了なので、実際にPythonを起動してみます。

ファイルメニューのファイル→新規作成→プロジェクトと選択し

 

テンプレートの中からPythonを選択し、Pythonアプリケーションを選択し、名前、場所、ソリューション名は適当に指定して、OKボタンをクリックします。

 

すると、こんな画面が開きます。

 

Python環境のウィンドウが表示されていない場合は、Visual Studioのメニューより、表示→その他ウィンドウ→Python環境と選択し、Python環境のウィンドウを表示してください。

このウィンドウはnumpyやpillowなどの各種モジュールをPythonのバージョンごとに管理するウィンドウで、モジュールインストールなどを簡単に行う事が可能になります。ただし、Visual Studio2017以降がおすすめです。

次に、使用するPythonの環境(バージョン)を選択し、概要の部分をクリックし、パッケージ(PyPI)を選択します。

すると、Python環境ごとにインストールされているモジュール一覧が表示されます。

もし、必要なモジュールが表示されていない(インストールされていない)場合は、PyPIとインストールされたパッケージの検索の部分にモジュールの名前を入力すると、XXXのインストールと表示されているので、その部分をクリックするだけで、モジュールがインストールされます。

これでVisual StudioでPython開発環境の構築は完了です。

試しにimportするのにimとキー入力してみると、インテリセンスもちゃんと表示してくれます。

 

さらにこんなコード↓では

 

C#とかと同じようにブレークポイントを置いて、ステップ実行をしてみると、ウォッチの機能もちゃんと動いてくれます。

 

従来のコマンドラインのPythonの入力も対話型ウィンドウを開くの部分をクリックすると

 

このような画面がVisual Studioの下の方にウィンドウが表示されるので、この部分にコードを入力してPythonを実行することもできます。

 

ちなみに、今回はVisual StudioからAnacondaをインストールしたので、スタートメニューからJupyter Notebookの利用も可能です。

 

やっぱりプログラムを組むのには、インテリセンスやステップ実行、ウォッチの機能は欲しいので、しばらくはVisual StudioからPythonをいじろうと思っています。

【Python】OpenCVをAnacondaでインストール(Windows編)

PythonでOpenCVのインストール方法を検索すると、macOSやLinuxの情報が多く、Windowsのインストール方法が何だか少ない。。

まだ、よく分かっていないのですが、とりあえずAnacondaを使ってOpenCVのインストールができたので、その方法を記しておきます。

 

前提条件として、私のPCの環境は

●Windows10(64bit)

●Anacondaがインストールされている

です。

 

まず、公式のOpenCVのページ

http://docs.opencv.org/3.2.0/d5/de5/tutorial_py_setup_in_windows.html

 

で確認すると、動作環境は

●Python2.7.X

●Numpy

●Matplotlib

という事らしい。

さらにNumpyが公式には64bit対応されていないので、32bit用のOpenCVを使ってます的なことが書いてある。

 

以上のことから、AnacondaでPythonをインストールするときはPython3.6用のパッケージでインストールしてしまったので、Python2.7用の環境を作ります。

 

Python2.7の環境構築方法は、下記ページにまとめました。

https://imagingsolution.net/program/python/anaconda/python-multi-version-environment/

 

次にAnaconda CloudというページからOpenCVのパッケージを探します。

 

https://anaconda.org/

 

このページの検索窓からOpenCVを検索します。

すると様々なOpenCVのパッケージが表示されるのですが、Platformsにwin-64が書いてある、一番上の menpo/opencv3 の部分をクリックします。

 

 

すると、インストールコマンドも書いてあるので、これでいけるのかな?と思ったら、そうも行かないので、まず、Filesの部分をクリックします。

 

 

すると、各種OS用なパッケージが表示されますが、このままだと見づらいので、Nameの部分をクリックします。

 

 

Windows用のファイルは6つ表示されていますが、Uploadedの部分にmenpoと書いてあるファイル

 

win-32/opencv3-3.1.0-py27_0.tar.bz2

 

と書いてあるファイルが使えるっぽい

 

 

ファイル名から察するに

Windowsの32bit、OpenCV Ver3.1.0、Python2.7用のファイル

 

ということがわかります。

そこで、今度はAnaconda Navigatorを起動し、Python2.7用の環境から Open Terminalをクリックします。

 

 

ターミナルを起動したらAnaconda Cloudのページに書いてあった、インストールコマンドのバージョンの部分を少し変えて

 

conda install -c menpo opencv3=3.1.0

 

と入力します。

 

 

すると

Proceed([y]/n)?

 

と聞かれるので y  を入力して、この様な画面になれば、インストール成功です。

(最後、少し止まってますが、我慢。。)

 

 

本当にOpenCVがインストールされてのか?を確認するため、Python2.7からJupyter Notebookを起動し、

 

 

OpenCVのバージョン確認用のコード↓

import cv2
print cv2.__version__

 

を入力し、実行して

 

バージョンが表示されればインストール成功です。

 

本当は64bit用のOpenCV3.2でPython3.X系でインストールしたいところなのですが、まだ、力量不足。。。

ただ、Anacondaでインストールするこの方法は、簡単なので、とりあえずPythonでOpenCVを試してみたい!という人向けにはいいかも?しれません。(私がその状態)

【Python】Anacondaで複数バージョンの環境切り替え

Pythonは様々なライブラリを使うことができますが、Pythonのバージョン依存も多いという事なので、複数バージョンのPythonを構築したくなります。

 

そこで、Anacondaを使うと比較的簡単に複数バージョンのPython環境が構築できます。

 

まず、スタートメニューからAnaconda Navigatorを起動します。

 

Anaconda Navigatorが起動したらEnvironmentsを選択します。

 

 

次にやや左側下のCreateをクリックし、Python横の V マークをクリックして、インストールするPythonのバージョンを選択します。

(今回は2.7を選択しました)

 

 

この環境に名前を付けるのですが、Nameの部分には小数点が入れられないようなので、私はPython27とし、Createボタンをクリックします。

 

 

すると、Python2.7のインストールが開始します。

 

 

インストールが完了すると、Python27というバーが出現するので、ここの▶マークをクリックして、Jupyter Notebookを起動したいところなのですが、グレーアウトしていて選択できません。

 

 

こちら↓はroot(Python3.6)の画面

 

Jupyter Notebookも使いたいので、やや右上のプルダウンメニュ―からNot installedを選択します。

 

 

すると、インストールされていないモジュールの一覧が表示され、スクロールバーを下げていくと、Jupyter Notebookを使うのに必要そうな一覧が表示されています。

 

 

実際にどれが必要になるのか?私はあまりわかっていないのですが、とりあえず、それっぽいファイルの4つ

 

jupyter

jupyter_client

jupyter_console

jupyter_core

 

の右側にあるチェックボックスにチェックを入れ、Applyボタンをクリックします。

すると、インストールされたものの一覧が表示されるので、Applyボタンをクリックします。

 

 

これで、最初、Python27横の▶マークをクリックしても有効でなかったJupyter Notebookが使えるようになるので、クリックしてみます。

 

 

するとJupyter Notebookが起動し、試しに新しいプロジェクトを作成するのにNewボタンをクリックしてみると、Python2と表示されていることが確認できます。

 

 

これで、バージョン依存のあるライブラリを使用するのに、Pythonのバージョンを切り替えながらプロジェクトを作成することが可能となります。

Anacondaのアンインストール方法

Anacondaをインストールしたら、途中でインストールしたいバージョンとは違っていたことに気が付き、キャンセルしようにもキャンセルができなかったので、インストールが完了するまで待っていたら、今度はアンインストールの方法がわからない!!

 

コントロールパネルのプログラムと機能から、Anacondaを探してもみつからないし。。

 

で、よくよく見ると、Anacondaは

Python 2.7.13(Anaconda2.4.3.1 32-bit)

のように書いてあるのがAnacondaでした。

 

 

普通、Anacondaって探すよね~!

【Jupyter Notebook】新規プログラムの作成

Jupyter Notebook で新規プログラムの作成するには、まず、プログラムを格納するためのフォルダを作成しておきます。(各人の好みですが。。)

初めからAnacondaProjectsというフォルダがある場合は、そのフォルダを使うとよいと思いますが、私の環境には無かった。。

 

フォルダの作成はJupyter Notebookを起動し、右上のNew→Folderと選択します。

 

 

すると、Untitled Folderという名前のフォルダが作成されます。

 

 

Untitled Folderという名前のままだと何なので、フォルダの名前を変更します。

名前の変更はフォルダ名の左側にあるチェックボックスにチェックを入れ、左上のRenameボタンをクリックします。

 

 

すると、下図のようなウィンドウが表示されるので、ここではPython Projectという名前にしてOKボタンをクリックしました。

 

 

↓フォルダ名が変更された状態

 

今回はPython Projectフォルダの下にさらにTestフォルダを作成しました。

 

このTestフォルダ内でPythonのプログラムを作成したいと思います。

それには、右上のNewをクリックし、さらにPython3をクリックします。

 

すると、下図のような画面になるのですが、Inと書かれた右側のボックスにPythonのコードを記入していきます。

 

そして今回はHellow World的な

 

print(“Hellow Python”)

 

と入力しました。

 

この状態で実行ボタン、もしくはShift+Enterキーを押します。

 

 

すると、ボックスの下に実行結果が表示されます。

 

 

次に、このプログラムの名前がUntitledのままも嫌なので、Untitledの部分をクリックします。

 

 

すると、名前編集用のボックスが表示されるので、その部分で名前を変更します。

ここではTestとしました。

 

 

それで良ければOKボタンをクリックします。

 

最後に、この作成したプログラムを保存するには、左上にあるフロッピーのアイコンをクリックすると、プログラムが保存(ファイル名:Test.ipynb)され、次回、起動時から作成したプログラムが読み出せるようになります。

 

【Python】開発環境の構築

C#では開発環境といえば、ほぼ一択でVisual Studioなので、Visual Studioを入れれば、それで済む話なのですが、Pythonの場合、IDE(開発環境)もいくつかあるので、素人の私からすると、結局、何をインストールすればいいの?

と、思ってしまうのですが、素人なら、まずはAnacondaを入れておけ!

という意見が多かったので、素直にそれに従うことにしました。

 

そもそもAnacondaって何?

というところから始まってしまうのですが、このAnacondaは言語(Python)や開発環境、各種ライブラリが一つのパッケージになっており、Anacondaさえ入れてしまえば、とりあえずはPythonのプログラムが組めるようになります。

開発環境(IDE)も比較的、情報の多いJupyter NotebookもAnacondaに含まれます。

 

まずは、Anacondaの入手先は、GoogleでAnacondaと検索すれば出てきますが、下記リンク先となります。

 

https://www.continuum.io/downloads

 

上記リンクをクリックすると、Anacondaのダウンロードページへと行き、私のPCはWindows10の64bitなので、下図の赤く囲った部分をクリックするとファイルのダウンロードが始まります。

 

 

クリックするとメールアドレスを登録するような画面が表示されますが、ここは NO THANKSで大丈夫でした。

 

 

ファイルは、私がダウンロードした時点では

 

Anaconda3-4.3.1-Windows-x86_64.exe

 

というファイル名でしたので、これをダブルクリックして、Pythonのインストールを開始します。

 

基本的には出てくる画面の初期状態のまま、次へ進んでいけば大丈夫です。

 

Nextをクリック

 

I Agree をクリック

 

Nextをクリック

 

インストール先を指定し、Nextをクリックするのですが、指定したフォルダに日本語(全角文字)が含まれると良くないらしいので注意

 

Installをクリック

 

 

これでインストールが開始されますが、私のPCでインストール時間は約30分かかりました…

 

インストールが終わったらNextをクリック

 

ここで、Finishを押せば終了ですが、

Learn more about Anaconda Cloud

のチェックは外しておいて大丈夫かも。。

ちなみに、チェックを入れてFinishをクリックすると、こんなページ↓が表示されます。

https://anaconda.org/

 

次に、とりあえずの目標だったPythonの開発環境であるJupyter Notebookを起動するには、スタートメニューから

 

Anaconda3(64-bit)

Jupyter Notebook

 

をクリックすると、Jupyter Notebookがブラウザで表示されます。

 

上図はユーザーのドキュメントフォルダ(C:\Users\ユーザー名)のフォルダ内のファイルが表示されています。

 

Pythonはじめました

最近は、画像処理やデータ処理の専門家でなくてもAIだのDeep Learningだの言う時代になり、少なくとも言葉だけはDeep Learningが流行っている実感はとてもします。

 

GoogleやAmazon、自動運転などの業界で、すでに実用レベルなのはわかるのですが、本当にそんなに実用されてる?

私の回りで、仕事としてDeep Learningなどをやっている人は少ないような気がしています。

 

とはいうものの、何も知らないでDeep LearningやAIという言葉を語るのもしゃくなので、まずは勉強するか!

ということで、Deep Learningのライブラリでほとんど使われているPythonを一からの勉強です。

 

私のスキルレベルとしては、Pythonは少しずつ勉強しているものの、ほとんど素人。

C#や画像処理、OpenCV、数学なんかは、少しは勉強したつもりだけど、Deep Learningって、何しているの??

という状態です。

 

そのため、しばらく書くてあろうPythonの記事は、個人的な備忘録の意味合いが強くなると思いますが、アドバイス等ありましたら、コメント頂けると幸いです。