先週から1ヶ月かけて今流行りの人工知能アプリ(AIアプリ)を開発する講座に参加しています。
株式会社エビともの業務領域を広げるためにも、零細企業・個人事業主のワクワクをプロデュースするためにも、中年である私が人工知能プログラマーに実際なれるかどうかを実況中継しながら、その魅力についてお伝えしていくシリーズ記事にしていきたいと思っています。
これから、第2回目の講義を受けるのですが、その前に前回のおさらいなどをしておきたいと思います。
スポンサーリンク
Pythonという言語だからこそ可能性が高い
まだ、1回しか講義は受けていませんが、前回の講義から今日の講義までの間に、人工知能プログラミングで利用する Python(パイソン)というプログラミング言語の勉強を自習しています。
ネットで「Python」と調べると、初学者に向いていると出てくるのですが、次の観点からこれは本当だと思います。
- 関数が充実している
- ライブラリが充実している(世界の先輩プログラマーの成果を簡単に拝借できる)
- 意味あるプログラミング練習をするまでの時間が短い
実は私はWEBプロデューサーという立ち場で10年ほど過ごしていますが、その間に、JavascriptやPHPというWEB構築で中心的に使われている言語をマスターして、自分でアプリを作ってみようかな?と思ったことがあります。
そして、短期で習得できると言うプログラミング講座を受けたのですが、どんなに短くても2ヶ月という講座しかなく、やはり途中で仕事都合で放置せざるを得ない状況になってしまいました。。。
そんな私なので確実なことは言えないのですが、Pythonを学習し始めて思うのは、意味あるプログラミング練習が始まるまでの時間が短いことです。
これは今回講座を主催している方の構成が上手いのかもしれませんが、Pythonが持つ関数が充実しているというところも大きいような気がしています。
Pythonは人間の言葉(といっても英語ですが)に近いとも評価されているのですが、まさにその通りだなと思うのは「〇〇しなさい」という命令語を覚えていれば、単語1つでその処理ができちゃうことが多いということです。
つまり、プログラムを動かすための手順を覚えるよりも、どんな動作をさせたいのかという結果をイメージすることに初期段階から集中できるということです。
このメリットは、結果をイメージしながらできるので、飽きることが少なく、そして自分が結構面白いプログラミングを初期段階からできちゃうということなんです!
Pythonの学習はいまこの本を使っています。まだ5日目ぐらいなので、Pythonについてはまた書き足していきたいと思います。
画像認識のAIアプリ構築
さて、そんなPythonを利用して最終回までに挑戦するのが画像認識のAIアプリの作成です。
具体的にどんなアプリを構築するかは今日の第2回目の講座から話が進むんだと思いますが、前回の講義から調べてわかったことは次のようなことです。
- 画像認識技術においてはニューラルネットワーク(CNN)の理解が必要
- ニューラルネットワーク、深層学習はかなりの成果が既に上がっているのでアプリ化がしやすい
- OpenCVというライブラリを理解し使いこなせるようになる必要がある
Open CVを使ったプログラム事例として有名なのが次の画像です。
ご覧いただくとわかると思いますが、カメラの顔検知機能ですね。
与えられた画像の中のどの部分が顔なのかを検知できるようになると、いろいろなアプリを作ることが考えられます。
何しろ私は日頃結構な量のレタッチを行なっているからです。
そろそろ第2回目の講義が始まるのでひとまずはここまで!
また、次回の報告をお楽しみに!