カテゴリー別アーカイブ: software_development

Swift(Xcode8)でMacのソフトを作るには

SwiftでMacのソフトを作るには、iOSアプリを作るのと同様Xcodeを使えばよい。

iOSアプリを作る場合にはimport UIKitとしてGUI部品のライブラリのUIKitを使ってアプリのGUI部分を作っていた。
macOS Sierraで、Xcode8を入れてSwift3を使ってiPhoneのソフトを書くのを試している

それに対してMacOSアプリを作る場合、import Cocoaとして、Mac用のライブラリCocoaを使う。GUIのライブラリAppKitがここに含まれている。
Xcode8のSwift3でCocoaを使って作るのだけど、書籍やネットを見て参考にしようと思ったコードが古くて使えなかったりするのが難点だ。

GUIとか考えずに、ターミナル上でコマンドラインでアプリを作ってSwiftの言語自体の勉強をするところから始めた方がいいのか、などと考えている。

Windows PCでPythonを使うには – その3 – Cygwin、MinGW

Windows PCでPythonを使うには、どのようにするのがよいのだろうか?という話の続き。

Windows10のWindows Subsystem for Linuxが出る前は、Windows上でUNIXコマンドを動かすにはCygwinが定番の1つで、自分も使っていた。

Cygwinにはpythonも含まれているので、そのまま動かすことが可能だ。
image1

ただし、python上でいろいろ動かそうとするとちょっと大変らしい。
安定しているとは言えないみたいだ。
cygwinでpython・pip・numpy・matplotlib – Bluepostech

試していないが、互換性とか厳しそうなのでTensorFlowはCygwinのpythonでは動かないだろう。
Cygwinはお薦めできる選択肢では無い感じ。
続きを読む

Windows PCでPythonを使うには – その2 – Windows10のbash/Ubuntu

Windows PCでPythonを使うには、どのようにするのがよいのだろうか?という話の続き。

Windows10では、Windows Subsystem for Linuxという機能が2016年夏のAnniversary Updateから追加されており、Bash/Ubuntuを使うことができる。

基本的にはLinux(Ubuntu)として、CUIのソフトは大抵は動くようだ。

Pythonと、TensorFlowを動かすのも試している。
screen
機械学習用のTensorFlowというソフトをWindows 10のbash/Ubuntuに入れた

テスト用のPCで動かす分には問題なく動いていたのだが、わりとメインで使っているGPU搭載のノートPCで使おうとしたら問題が起きた。
どうやらカスペルスキーと干渉するらしい。
Windows10のbash/Ubuntu機能がカスペルスキーと干渉しているらしい

余談だが、GPU搭載のゲーム用のデスクトップPCもあるのだけど、こちらはまだOSがWindows7のままになっており、
VirtualBoxとかVMware playerといった仮想環境のソフトにUbuntuを入れて使っていたりする。
( VMware playerではちょっとトラブったが解消できて概ね問題なく使えている。
VMware Player仮想環境のUbuntu 14.04にdrag&dropでファイルコピーができない )


追記
Windowsのbash/Ubuntuでpythonを動かす場合、TensorFlowなど機械学習で計算した結果をグラフに出すのに困ることになる。
pythonで、matplotlibというグラフ描画ライブラリを使おうとするのだけど、X Windowサーバーが動いていないためグラフィックの出力をすることができない。

強引にX serverを動かすhackもあるようだが、あまりお薦めではなさそう。

Windows PCでPythonを使うには – その1 – Windows版Python

Windows PCでPythonを使うには、どのようにするのがよいのだろうか?

Windows版のPythonというのがあり、公式のpython.orgが配布している。
このあたりにインストール方法の記事がある。
windows 32bit環境へのpython2.7インストール – Qiita

64bit版を使う場合とか、Python3系を使う場合には少し手順を変更する必要があるが基本的には一緒だ。

「c:\Python27\」といったフォルダーに実行ファイルがインストールされるので、pathを通して使う。インストーラーがpathの設定もしてくれるみたいだ。

インストール後は、cmd.exeなどのコマンドラインからpythonと打てば使うことができる。

しかし、前に何だったか忘れたが他のフリーソフトを動かすために必要だったので64bit版Windowsで64bit版のpythonを入れた時にはうまく動かず、64bit版Windowsなのに32bit版のPythonを入れ直したりしたことがある。

pythonのバージョンの問題だけでなく、32bit版か64bit版といった違いの互換性まで意識して使わないといけないのだと、ちょっと困る。(ひょっとして今は大丈夫になっているのかなあ。)

pythonだけ入れたとしても、例えばpipやその他のpythonと組み合わせて使ういろいろなソフトや定番ライブラリが動かせない。
機械学習のTensorFlowなども動かせないので、自分の場合にはそういう用途でpythonを動かしたいので困る。
Windows版Pythonをそのままインストールして使うというのはあまりお薦めではないようだ。


追記
Windows版Pythonでもpipを使ってJupyterをインストールして使ったりはできるらしい。
Windowsにpython3とJupyter Notebook(旧 ipython notebook)をインストールする – Qiita
あと、bashはGit for Windowsのものを使うといいのだとか。

Pythonを使うための環境は何を使うのが良いのだろうか

Pythonを使うための環境は何を使うのが良いのだろうか?

何をやりたいのか用途によって、その答えは変わるのだろう。

とりあえず、自分の場合、
(1) 機械学習の勉強でTensorFlowを弄ってみるのにPythonを使ってみる。
(2) Raspberry Piで何か動かすのにPythonを使う。
(3) iPad用のPython環境のPythonistaを使って、何か作ってみる。
といったことをやりたいと考えている。
続きを読む

機械学習名古屋 第7回勉強会に行ってきた

機械学習名古屋 第7回勉強会に行ってきた。
20161015_131019

・勉強会の概要
今回は教科書の読書とハンズオンは無し。
東建ホールの大会場で発表のみだった。

発表は、
・機械学習について・ディープラーニングについて
・機械学習活用事例
Python環境構築
・精度の評価について
・ディープラーニングのフレームワークCaffe-GPUサーバセットアップ手順詳細つき
fastTextに学ぶ高速化
CNNを使った画像分類の事例~素粒子原子核宇宙物理学の実験現場より2016秋~
と、盛りだくさんだった。

Pythonの環境構築については、自分は無頓着だったのだけど環境を壊さないように仮想環境などを使ってみんな気を遣っているらしい。
(自分の場合、仮想環境や実環境ですぐに入れ直してまっさらにしてしまうので、うっかり動かなくなっても気にしていなかった。)

例えばLinuxで、CentOSの場合、システムに最初から入っているpythonのバージョンを別のバージョンを上書きで入れてしまって置き換えてしまうとパッケージマネージャーのyumとかいうのが動かなくなるのだそうだ。

対策としては、
・pyenv
・virtualenv
・pyenv-virtualenv (pyenvにvirtualenvの機能を追加するソフト)
などがある。名前が紛らわしい。

Windowsではpyenvは使えない。virtualenvは動くらしい。
でも、Windowsでpythonを使うならAnacondaというのを使うのがいいらしい。

PlayStation VR (PSVR)を手に入れた (PCに繋いで使えないだろうか)

PlayStation VR (PSVR)を手に入れた。
hackされてPCで使えるようになったりするのだろうか?
あと、PSVRから改造して信号をうまく取り出して他のVR HMDでPS4のゲームで遊んだりできないだろうか、などと考えている。
rimg0002
PlayStation VR PlayStation Camera同梱版(Amazon)
続きを読む

Swiftの参考書の電子書籍を買ってみた

Swiftの参考書の電子書籍を買ってみた。

たのしいアプリプログラミング Swiftで始めよう![無料版]という電子書籍がiOSアプリになっているものを見つけたので、ダウンロードしてみた。
rimg0001
無料版だと読めるのは1章のみで、Swiftの中身については無料版では読めない。
有料版も出ているのだけど、ちょっと値段が高い。Swift1.2の本なのでちょっと内容が古い?

Kindleの電子書籍でSwiftの安い入門書を見つけたので、そちらを買ってみた。
rimg0002
Swiftビギナーズガイド: アップルをプログラミングせよ! PRIMERシリーズ (libroブックス)(Amazon)
続きを読む

iPad mini2のSwift PlaygroundsでUIKitでUIButtonを使ってみる

iPad mini2のSwift PlaygroundsでUIKitでUIButtonを使ってみる。

前回は、UIKitでHello worldを表示させるのを試した
今回はその続きで、UIKitのUIButtonでボタン関係の処理を動かすのを試してみた。
rimg0007
ネットでUIButtonの使い方を調べて、それを参考にコードを書いていたのだけどSwift Playgroundsではうまく動かずに悩んだ。Swift3だから書き方が変わってしまったのだろうか?
続きを読む