なんとなくやる機械学習(環境構築編)
後輩用になんとなく画像認識ができるようにまとめた記事になります。
機械学習初心者なので修正点や間違っていたらコメントのほどお願い致します。
初めに
今回はPythonで実装したいと思います。なぜPythonを使うのかは検索すれば大体出てきます
なぜ機械学習にPythonが選ばれるのか
今回はTensorFlow+Kerasを使い画像認識をさせていきます。そのための環境構築編です。
主な環境として
- Anaconda 3.6(Python 3.6)
データサイエンス向けに作成された Pythonパッケージで、科学技術計算などを中心とした数多くのモジュールやツールが独自の形式で同梱されているすごいやつ。ただし、Anaconda は一部に独自技術を使用しているため、公式パッケージでは一般的に使用されているツールなどでも、Anaconda では利用できないものがあるため、注意が必要!!
www.python.jp
- TensorFlow(1.8.0)
機械学習に用いるためのソフトウェアライブラリである。顔認識や音声認識、メール分別もできるすごいやつ。
TensorFlow - Wikipedia
- Keras(2.1.6)
Pythonで書かれたオープンソースニューラルネットワークライブラリである。ディープニューラルネットワークを用いた迅速な実験を可能にするよう設計され、最小限、モジュール式、拡張可能であるすごいやつ。
Keras - Wikipedia
インストール
Anaconda
www.anaconda.com
↑ここからお使いのパソコンに合わせてDownload
今回私の環境はWindowsなのでWindowsの人は下記の画像を参考にしてください
ダウンロードしたらexeファイルをクリックします。インストーラが表示されるので指示に従ってください
Nextをクリック
I Agreeをクリック
Nextをクリック
インストールする場所を聞かれるので適当にインストールする場所を指定してください。あとで環境変数で使うので場所は控えといてください。
Installをクリックするとインストールが始まります
インストールが終わったらNextボタンが現れるのでクリック
とりあえずSkipをクリック
FinishをクリックしてAnacondaのインストールが完了です
Anaconda Promptがあるのでそれを使いましょう
python --version
と入力するとPythonのバージョンが出ます(出なかったらヤバイ)
TensorFlow
次にTensorFlowをインストールします
Anaconda Promptなどに
conda install -c conda-forge tensorflow=1.8.0
を入力してEnterを押します
Proceed ([y]/n)?
がでるのでyを入力しましょう
Keras
次にKerasをインストールします
Anaconda Promptなどに
pip install keras
を入力してEnterを押します
インストール確認を一応します
Anaconda Promptなどに
~>python >>>import tensorflow >>>import keras
と入力して「Using TensorFlow backend.」って出れば成功です
SecHack365-神奈川回
一日目
8:30起床
新幹線の領収書をもらい忘れたので早めに出る
9:30家を出る
前日準備を完了させないでいたので超慌ててた...
10:00新幹線のある駅に着く
新幹線の改札の中にスタバがあるので人生で初めて新幹線の中でスタバ決めた
11:00新横浜駅につく
乗り換えに失敗して時間をかなり浪費
11:30?最寄り駅に着く
SEGAのゲーセンを見つけてボルテが置いてあったのでやってしまった....
13:20到着
席が自由な方式なのでコミュ障なわいは誰も座ってない席へ
14:00お話
ありがたいお話
15:00マンダラート
なんと首からかけている参加者証みたいな者に番号が書いてあり同じ番号の人とグループで座ることに
その後コミュニケーションをとり、マンダラートをやった。
マンダラートは、発想法の一種[1]。紙などに9つのマスを用意し、それを埋めていくという作業ルールを設けることにより、アイデアを整理・外化し、思考を深めていくことができる。今泉浩晃によって1987年に考案された
大谷翔平もやっていたらしいのですごい
自分の真ん中に入るものが難しくて結構悩んだ...
18:00トレーナー紹介
個性豊かなトレーナーばかりでした
19:00ご飯
立食パーティ
レクリエーションもやってさっきのグループでトレーナーの特徴が書かれた紙を渡されトレーナーのところに行きあっていればサインをもらえるゲームをやった
18歳ってだれがわかるんだよ....
20:00解散
部屋に戻りベットで寝た。(家では地べたに寝ているのでフカフカなベットは久々だった。まさに天国!!)
無線LANが部屋にないのでホテルで使える無線LANを買ってきて飛ばそうとしたらLANケーブルがデフォルトで入ってない商品で積みました...
※LANケーブルは付属しません。
二日目
7:00起床
超眠い
7:30朝食(バイキング形式)
めっちゃ食った
9:00アイデアソン
ペアでぐるぐる回りながらアイデアを発表する
そしてブラッシュアップしていく
その後全体で25秒で発表
12:00昼食(チキンステーキ)
バイキング形式は前菜とかだった
13:00各コースに分かれて活動
始めてゼミメンバー全員集合した。
私は、川合ゼミでEssenの開発
とりあえず言語の仕組み入門を色々やった
めっちゃ和やかな雰囲気だった
かなりのお菓子を食いながら作業
十数年ぶりにドクターペッパーを飲んでくそうまかったのでドクターペッパーが好きになってしまった。
19:00夕飯(バイキング)
バイキング最高!!
20:00各自自由な時間(明日のプレゼントと1日目のマンダラートの完成)
ワンピースがテレビでやってたので見ながらやってたら進まなかった...
自己紹介プレゼンをつくるのだが何を書いていいかわからなかったので、とりあえず静岡にあるさわやかについて語った...
げんこつハンバーグにオニオンソースをかけるんだぞ!!
01:40就寝
隣の部屋に同じゼミのLANがささらなかった人がいたので協力してLANケーブルを借り無線でネットワークに繋ぐことに成功しました!!!!
ひと段落
やっぱり
ふかふかのベットって最高ですよね!!
三日目
7:00起床
超眠い
7:30朝食(バイキング形式)
めっちゃ食った
9:00自己紹介
開発駆動コース内で自己紹介をやりました。
おっと一人寝坊した
なんと厳しいタイムキーパー付きで強制5分プレゼンでした(最初は楽)
自分はさわやかについて爽やかに話しました()
他の自己紹介を見てみると低レイヤーガチ勢しかいないことに気づき恐ろしくなった...
NimとRust使いがいて感動した
終わったらトレーナー坂井さんの完璧プレゼンテーションタイム!!
すごいプレゼンテーションでした(語彙力)
12:00昼食(sakana)
バイキング形式は前菜とかだった
13:00各コース
各コースでの活動だった。とりあえず言語開発の入門をひたすらにやった。ゼミ内全員常時もぐもぐタイムが発動してた(おやつタイム)
ドクぺが飲みたくなった...
15:00次回予告
次回の予告。
次回は北海道
あと全員で集合写真を行った
15:30くらい解散
きた道を帰るだけ
新横浜の駅で鳩サブレ買おうとしたけど財布の中に2000円しか入ってなくて諦めた....
18:00くらい帰宅
とても良い3日間でした。
北海道が楽しみです。
お疲れ様でした
おまけ
帰宅後、実家に帰りました。その途中でSAによってラーメンを食べました。
SecHack後ラーメンを食べるのが決まりらしいです(ほんとかよ!!)
なので食べました
はい、ラーメンです...
美味しかったです
初めてのD言語(超入門)
D言語とは
D言語(ディーげんご、D programming language)は、プログラミング言語のひとつ。C言語をベースとしABI互換を保ちつつも、テンプレートによるジェネリックプログラミングやオブジェクト指向プログラミング、関数型プログラミングなどをサポートするマルチパラダイムプログラミング言語である。
小難しいこと書いてありますが、ただのプログラミング言語です。
プログラミング言語ランキング30位くらいの言語で、かなりに人気が低いです(泣)
特徴として
D言語に公式キャラクターがいる!!
ということです。
↓これです
D言語くんって言います。
めっちゃかわいいですよね!!
なんやこいつ??貧弱やんけ...
こんな可愛いキャラがいるのになんで人気がでないんですかねぇ〜(謎)
D言語使いを増やすために布教運動を活動したいと思います....
はっきりいうとC++の拡張です...
もしD言語使いで記事を書きたかったら連絡してください...(編集権限あげます)
HelloWorldを書いてみる
import std.stdio; void main(){ printf("HelloWorld!!\n"); }
おっとprintf???
C言語やん!!!
ちなみに別の書き方で
import std.stdio; void main(){ write("HelloWorld!!\n");//最後に改行なし writeln("HelloWorld!!"); //最後に改行あり writef("HelloWorld!!\n");//format }
なるほどな〜!!
コマンドラインで実行する場合
dmd ファイル名.d
でコンパイルできます。
実行時は、Windowsならexe,Macなら実行ファイルが出力されるので各自実行してください
HelloWorld!!が表示されれば成功です。
SecHack365 応募編
目次
SecHack365とは
SecHack365 では、25 歳以下の学生や若手社会人から公募選抜された 40 名程度の受講生に対し、一年を通してセキュリティ技術の研究開発を指導することで、セキュリティイノベーターとなる人材を育成します。
公式より拝借
参加経緯
ぱい先に聞くまでこのイベントについて知りませんでした。ぱい先にすすめられて募集をしてみたって感じですかねぇ〜
セキュリティキャンプみたいに応募時に課題があり、去年は一つの課題だったらしいのですが、今回は3つのコースがあり、3つとも課題が異なる内容でした。
自分は、開発駆動コースを応募しましました。(言語開発がやってみたかったから....)
課題
思索駆動コース
表現駆動コース
開発駆動コース
この三つのコースがあり各コースによって課題が異なった。課題内容は公開できないので割愛
とりあえず素直に書いた
結果発表
結果発表はゴールデンウィークにあり、なんと電話がかかってきたら合格というなんとも原始的な結果発表でした。公式のTwitterが「お昼頃から電話をかける」ってツイートをみた途端電話がかかってきたのでやったこれってなりましたね〜
電話は夕方までかけてたらしいのでかなりの合格者がいたのではないでしょうか...
(電話早くかかってきてよかった...)
※5/20追記
なんと参加者50人と去年より多い!!
こりゃすごい