配布用Python.exeのダウンロード, pipモジュールのインストール

Pythonファイルのダウンロード

https://www.python.org/downloads/windows/

上記URLよりpythonファイルの入ったzipファイルをダウンロードします。

展開後は20MB程度です。

 

pipのインストール

 

配布用Pythonにpipインストールを行いたい場合、展開フォルダ内のpython37._pthを

 

 

として保存します。

次に

https://bootstrap.pypa.io/get-pip.py

よりget-pip.pyをダウンロードし、python.exeと同じディレクトリに配置します。

 

ここから

にてディレクトリのpython.exeに対してpipをインストールしますが、その前に環境変数にてPathに通してあるpython.exeと同ディレクトリ内のScriptsへの環境pathを削除しておいてください。

Scripts内にはpip.exeがあり、pipコマンドを実行した際そちらが実行されてしまいます。

 

 

その後は、上記のようにpipコマンドを入力すればOKです。

React、yarnのインストール (create-react-app)

Reactの動作環境の構築にはいろいろなライブラリのインストールが必要ですがそれがまとめられている環境のインストールを説明します。

前回の記事でNode.jsのインストールが完了していることを前提としています。

コマンドプロンプトで上記のコマンドを実行します。

そしてインストールが終わった後に同じくコマンドプロンプトで

でバージョンが表示されれば問題なくインストールされています。

 

ついでにyarnをインストールしてみましょう。

yarnはnode.jsのパッケージマネージャであるnpmと同じようなパッケージマネージャでより信頼度のあるものです。

まあPython界隈のcondaみたいなもんですね。

が完了し

でバージョンが表示されれば問題なくインストールできています。

ちなみに-vでも–versionでも大丈夫だと思います。

 

次回は実際にReactのひな形をインストールしてローカルのブラウザ上で表示してみます。

Node.jsのインストール

reactの記事を書くためここでNode.jsのインストールについて紹介しておきます。

https://nodejs.org/ja/

でLTS(推奨版)をインストールしてください。

設定はそのままでインストールされるディレクトリを確認しといてください。

そしてコマンドプロンプトでnode -vでnodeのバージョンが表示されれば問題なくインストールできています。

 

 

以上です。

Python、Kerasでディープラーニング①ニューラルネットの定義と活性化関数

 

今回からPythonで使える機械学習のフレームワークKerasを利用してのディープラーニングの実装を行います。

基本のコード

Kerasの基礎であるモデルに関する基本のコードについて

 

活性化関数

ニューラルネットワークのニューロンが発火した際、どのような値が伝播さえるかを決定するのが活性化関数です。ここでは2種類の活性化関数を紹介します。

シグモイド関数

もっとも基本的な発火方法が0もしくは1の値を返すのに対し、シグモイド関数は非線形の関数で-から+の値までを曲線で返します。これによりニューロンの曖昧な回答が可能となります。

ReLU関数

ReLU関数はある入力までを0で返しそれ以上になると線形で返します。

入力、重み、バイアス、活性化関数の関係図

 

一つのデータの各要素に重みがかけられた値とバイアスを足した値を活性化関数に入れ発火した値が次のニューロンに伝わる。

脳の神経伝達はこの繰り返しだという考え方が機械学習の基礎のようです。

Python の環境作り決定版(anacondaとPycharmを使います。)

1:anacondaのインストール

https://www.anaconda.com/download/

最新版をダウンロードしてインストールしてください。

検索窓でanaconda navigator がインストールされていることを確認し起動します。

 

criateでpythonのバージョンを選んで環境を作成し、その環境でコマンドプロンプトと起動させ、必要なモジュールのインストールとかができます。

便利んごね。

試しにcreateから名前を「test_env」としてpython3.6を指定し環境を作成しましょう。

作成中は右下のインジケーターが動いてるかと思われます。

インストールが終わるとその環境で右クリックしopen tarminalでコマンドプロンプトを起動させてみましょう。

左上にenvs(作った環境たちのディレクトリ)までのパスが表示されていると思います。

重要なのでコピー、デスクトップにリンクしておくと便利かもしれません。

2:Pycharmのインストール

https://www.jetbrains.com/pycharm/download/#section=windows

無料のcommunityエディションをダウンロードインストールしてください。

起動させたら右上Fileからnew Projectで新規プロジェクトを作成しましょう。

作成時にそのプロジェクトの名前と実行されるpython.exeファイルを指定します。

そこでProject InterpreterをSystem Interpreterを選択し歯車マークからAnacondaで作った環境のpython.exeを選択します。

ディレクトリはおそらく、

C:\Users\ユーザー名\Anaconda3\envs\”Anacondaでの環境名「test_env”\python.exe

です。

python.exeを指定するUIが絶妙に使いづらいですが頑張りましょう。

 

先ほどしらべたenvs内の作成した環境の中にpython.exeがあるのでそれをしていしてOKでプロジェクトを作成しましょう。

※pythonw.exeとかいろいろ別なファイルがあるので注意です。

プロジェクトを作成したら新しく.pyファイルを作成します。

名前は適当に。

 

3:HelloWorldの実行

こんな感じでしょうか。

右上に再生ボタン(実行ボタン)っぽいのがありますがまだ押せません。

上のRunからRunで実行したいpythonファイルを選択し実行してください。

下のコンソールにHello BYTEと表示されれば成功です。

 

Happy Python Life.

Node.js 入門①

Node.jsを使ってみたので覚書きです。

Node.jsではjavascriptでサーバーを動かすことができます。

従来のWebサービスではサーバーサイドでApacheなどのHTTPサーバーでPHPを書いてクライアントサイドと連携させる方法が主流でした。

しかし、そうなるとHTML、CSS、JavaScript、PHP、(データベースではSQL)と多くの言語での開発が必要になります。

そこで、登場したのがNode.jsでこれをサーバーにインストールすればJavaScriptでサーバーを動かすことができます。

また、Node.jsにはライブラリが充実しており、データベースを扱うMongoDBや他の様々なライブラリでサーバーサイドを便利に記述できます。

 

ということで、サーバーを起動させてみましょう。

WindowsにNode.jsのインストールをする

環境

OS:Windows10

node.jsバージョン: v.8.9.3

 

https://nodejs.org/ja/

上記URLから最新バージョンの安定版(LTS)をダウンロードし、インストールします。

インストールは標準で進めていきます。

インストールが完了したらNode.jsのコマンドプロンプトを起動させてください。

Windosの検索窓でNodeと入力すると出てくるかと思います。

Node.jsをローカルサーバーで起動させ、Hello World

Node.jsをローカルサーバーで起動させてみます。

まず、サーバーとなるJavaScriptを記述します。

 

上記をMyServer.jsとして任意の作業ディレクトリに保存します。

 

続いて、Node.jsのコマンドプロンプトを起動させcdにて作業ディレクトリに移動し

でサーバーを起動させます。

そしてブラウザで

localhost:1234

どうでしょうか。

JavaScript②変数のスコープと関数

前回

前回はJavaScriptの基本的な関数について書きました。

 

今回は変数とスコープについてです。

 

 

関数内で関数を宣言した場合も同じです。

 

 

グローバル変数は作らないようにする

上記のスクリプトの場合value1,value2,value3,value4という4つのグローバル変数が追加されています。

JavaScriptでは(昨今のオブジェクト指向言語では)こう言ったグローバル変数の汚染を嫌います。

よってこの問題をオブジェクト指向の機能によって対処します。

名前空間(オブジェクト)を作る

 

変数を作ったオブジェクトのメンバーとしてまとめる方法ですね。

これならグローバル変数として宣言されるのはvaluesオブジェクトのみです。

 

 

クロージャーを利用する

couterへの代入の仕方について注意してください。

この場合、var cnt = 0; と console.log(“cnt:” + cnt); は一度のみの実行となります。

JavaScript①関数文と関数式の書き方。

JavaScriptには基本的な関数の書き方が2種類あります。

関数文と関数式です。

二つの関数を使ってみます。

JavaScript関数の特徴

JavaScriptの関数では引数を多く、あるいは少なく渡すことが可能です。

渡していない変数を関数内で利用した場合、undefinedとなります。

それを解決するのがargumentsを使い引数をループ処理する方法です。

関数文

 

他の言語でもお馴染みの書き方ですね。

()内に変数を入れるなどの動作は同じです。

またファイル内のどの位置で宣言してもかまいません。

宣言前の行に Func1(); とし関数を実行することが可能です。

しかし、もう一度同じ関数名で宣言することはできません。エラーとなります。

関数式

関数式の場合、関数を変数に代入し利用することができます。

この書き方の場合、Func2();と書いて関数を実行しますが、Func2は変数のため、宣言前に実行することはできません。

しかし、変数なので同じ変数名に上書きすることが可能です。

KOSENハッカソン@函館 に参加した話

お久しぶりです

YUYAです。

 

先週11月10日から13日に函館であったKOSENハッカソン@函館に参加してきました。

 

1日目 アイデアソン

1日目はグループに分かれてのアイデアソンでした。

今回のハッカソンのテーマは事前に決まっていて

高専生×地域×IT

でした。

 

そしては出たアイデアから投票を行い、制作のグループ分けをして一日目は終わりです。

2日目 コーディング

私のグループがつくるのは

地域の魅力を伝え緊急時にも役に立つ地図ベースSNSアプリケーションでした。

 

4人チームで開発を行うのですが問題がありまして,,,,,

 

Javascriptが書けない!!!

Monacaというモバイルアプリを作るフレームワークを使ってGoogle Map APIを使ってアプリを作っていくのですがワイはJavascriptの経験があまりなく苦労しました、、、。

PHPやUnity(C#)はまあまあ書けるんですけどねぇ…..

 

3日目(深夜)

2日目から3日目の朝にかけては徹夜しました。まともに作業できるのは実質1日でその中で自分たちのアイデアを具現化するにはかなりの取捨選択を伴いました。

 

そうなってくると一応それっぽものは出来ていても追加したい機能はすべて実装できていないわけなんですよね。

 

なので一個でも多くの機能を追加するために徹夜しました。

 

3日目

3日目の朝は完成したものの発表なので作業はできません。

忙しくほかのチームの作品も見に行けてなかったので発表を楽しみにしていたのですが、、、

 

 

なんと!!!!

 

 

帰りの便(函館→羽田→高知)が押していたので最初に発表して即帰ることに………

 

 

つらかったです。。。。。。。

 

 

むすびに

何はともあれ協力してできたアプリはMashupAwardのハックログに投稿しているのでご覧ください。

https://hacklog.jp/works/52414

 

そして、今回の作品ではMonacaとモバイルバックエンド(NiftyCloudが提供するAPI)を利用させていただきました。

Niftyクラウドの福本さんには本当にお世話になりました!!!

具体的には。。。。。

APIの説明だけでなく、Javascriptを教えてもらいました!!(それも夜更かしに付き合ってもらって,,,,)

 

感謝の一言です。

本当にありがとうございました。

anaconda,cuda toolkit 8.0 でTensorflow 1.3.0 開発環境を整える。

最近はやりのディープラーニングで遊ぶためにNvidia GPU を使ったTensorFlowの開発環境を整えてみましょう。

 

用意するもの

anaconda python3.6

CUDA Toolkit 8.0 GA2

Nvidia cuDNN

 

Python anaconda

anaconda を使ってPython3.6をインストールします。

TensorFlow1.3.0はPython3.5までしか対応していませんが、のちに3.5の仮想環境を組みます。

とりあえず3.6のanaconda5をインストールしてください。

設定はデフォルトです。

 

CUDA Toolkit 8.0

現行のCuda Toolkit のバージョンは9.0ですがTensorFlow が対応していないのでNvidiaのarchive(CUDA Toolkit 8.0 GA2)からToolkit 8.0をインストールしてください。

設定はデフォルトです。

インストールだが終わったら

下記のフォルダの構造を確認してください。

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

画像のようになっていたらOKです。

Nvidia cuDNN

TensorFlowではNvidiaが提供するGPUtoolkitのライブラリ、cuDNNを使います。

Nvidia cuDNN

からDownloadをクリックしNvidia Developerへの登録を求められるので登録し

Download cuDNN v6.0 (April 27, 2017), for CUDA 8.0

をダウンロード、解凍してください。

そしてファイル構造が

のようになっているので各フォルダの中身を

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0

の対応するフォルダにコピーしてください。

管理者権限が求められます。

なおlibにはさらにx64というフォルダにcudnn.libというファイルがあるのでそのファイルを

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\lib\x64\

にコピーしてください。

TensorFlowのインストール

それではTensorFlowのインストールを行っていきます。

anaconda navigatorを立ち上げます。

Createから名前をtf130-gpu_python3_5(任意)としPythonのバージョンを3.5にしてCreateを押します。

環境構築が終わると三角マーク ▶ からopen terminalより

コマンドプロンプトが立ち上がるので

としtensorflow1.3.0をインストールします。

インストールまでしばらく待ちましょう。

なお上記のCUDAのインストールがうまくいっていない場合はここでエラーになるかと思います。

opencvのインストール

なにかと役に立つopencvもここでインストールしておきます。

openCVはPython3.6ではインストールできません。

Python3.5でインストールを行います。

より途中でy/nが出るのでyで進めます。

よりpython3.5.4を起動させ

 

が問題なくいけばインストール成功です。

おわりに

これにてtensorflowの開発環境は整いました。

しかし、エディターはどうするでしょうか。

インタープリターで対話形式で行うにはディープラーニングではつらいと思います。

次回ではPythonのコード補完を持ったPycharmのインストールを行います。