GPUなWindows PCでCNTKとTensorFlowとVisual Studio 2017とを共存させる方法 (2017年12月版) #cogbot #cntk

注意)本稿は、2017年12月時点の情報です。2018年4月以降は、こちら の記事を参照してください。

 


本稿は、Cogbot Advent Calendar 2017 に参加しています。

今回は、NVIDIA の GPUを積んだ Windows PC で、CNTKTensorFlowVisual Studio 2017 とを共存される方法を紹介します。
いくつかハマりポイントがあって、今回は全身で次々と落とし穴に落ちてしまったので、皆さんも同じようなケガをしないように手順を共有します。

もっとスマートな方法があるかもしれませんが、私は以下の方法で共存に成功しました。

続きを読む

【2017年版】Visual Studio で Arduino 開発

Arduino と言えば、普通は開発には Arduino IDE を使うと思いますが、ここでは Visual Studio で Arduino 開発ができますよ、しかもより効率的に開発できますよというお話。

2~3年ごとに、Visual Studio での Arduino 開発の記事を書いています。本当にたまたまなんですが、今回が3回目。
やんごとなき理由 で久しぶりに Arduino を触っておこうと思い、せっかくなのでデバッグあたりも見てみました(と言っても、作ったスケッチは L チカなんですが・・・)。

Visual Studio を使っちゃうと、申し訳ないですが Arduino IDE には戻れないですね。

続きを読む

「Visual Studio で Bot Service をローカルデバッグする方法」 第4回 Cogbot 勉強会で登壇しました #cogbot #botservice #functions

2017年1月27日(金) 開催の 第4回 Cogbot 勉強会で、
Visual Studio で Bot Service をローカルデバッグする方法」というテーマでお話ししました。

https://docs.com/d/embed/D25191673-0444-5596-4310-001940935162%7eBfe5a7bff-fc39-9c7d-d35f-86e930988702

Cognitive Service とも IoT とも仲良くできそうな、Bot Service は、ご承知の方も多いと思いますが、Azure Functions 上に展開されています。

Functions は当初デバッグが大変なサービスでした。
Azure ポータル上で print 分を使ってデバッグするか、Windows アプリでロジックを作った上で Functions のコードに貼り付けるかするくらいしかできませんでした。サーバーレス、ナノサービに分類されるサービスで、小さな処理を実行することを想定したサービスなので、それでも何とかできなくはないのですが、Visual Studio に慣れた身には面倒でした。


まだ「枯れた」とは言いがたいのですが、現在はいくつかの手順を踏めば Bot Service をローカルデバッグできます。Visual Studio のデバッグ機能も利用可能です。
ローカルデバッグするための手順は https://aka.ms/bf-docs-azure-debug で説明されているのですが、いくつかのページを移動しながらデバッグ準備を進めなければなりません。

そこで必要なツールやファイルのリンクと一緒に、画面キャプチャ付きで実際にデバッグを始めるまでのステップを紹介しました。

Visual Studio でブレークしたり、変数の値をウォッチしたりしながら、Bot Service を開発できるのは、やはりうれしいですね。
なお本稿の内容は、Bot Service だけではなく Azure Functions でも使えます。IoT でも Functions は使いどころがあるので、IoT 好きな方も参考にしてみてください。

ウイルスバスター入りの環境で、Hololens, Windows Mobile などのエミュレーター起動に失敗する場合

なんだかブログ更新が久しぶりの感じですみません。
少し生活のパターンが変わったらペースがつかめなくなってました・・・。

Hololens エミュレーターも出たことだし、立ち上げるくらいやってみるか」と思い、ツールをインストールして真っ白 UWP アプリを動かそうとしたところ、私の環境では何度やっても「認証エラーが発生しました」メッセージとともにエミュレーターが終了・・・。Visual Studio を再起動しても、Windows を再起動してもダメ。
(そういえば、PCを変えてから Windows Mobile エミュレーターも起動していなかった)

調べたところ、ウイルスバスターをインストールしたマシンだとエミューレーター(仮想マシン)の作成や起動に失敗することが多いらしい。(英語サイトに行くと他のセキュリティソフトでも同様の事象があるようです)
トレンドマイクロの FAQ ページにも載っているくらい、知ってる人は知ってる事象のようです。

解決するには、Hyper-V のデータに関するフォルダーをリアルタイムスキャンの対象から外すといいようです。

2016-04-17 20-58-32

2016-04-17 21-00-26

以下の4つのフォルダーをスキャン対象から除外します。

  • C:\ProgramData\Microsoft\Windows\Hyper-V
  • C:\ProgramData\Microsoft\Windows\Hyper-V\Snapshots
  • C:\Users\Public\Documents\Hyper-V\Virtual Hard Disks
  • C:\Users\<アカウント>\AppData\Local\Microsoft\XDE

これで Windows を再起動すれば大丈夫、ちゃんとエミュレーターが起動して、Hololens を楽しめます。
何かの拍子に起動に失敗するようになることはあるけど、その時は VS 再起動したり Windows 再起動したりすればまた動きます。

 

PS. 「なんでウイルスバスター?」という、そもそもの疑問がある人もいるかもしれません。
家族の PC やらスマホやらが増えてきて、ちゃんとセキュリティをチェックするのが楽になるかな~と思い、家中まるごと Trend Micro OKAERI というサービスを入れました。インストールしているか、マルウェアにやられてないか、ブロックした件数などを全部のデバイスをまとめて随時確認できるので便利。家族のデバイス全部、月額固定で面倒見てくれるし。メモリー食いな感じはあるけど、使ってみるとなかなかいい製品です。

【2015年版】Visual Studio で Arduino 開発

このところ、「Visual Studio で Arduino 開発」 の閲覧数が増えています。
Arduino IDE for Visual Studio が Visual Studio の拡張機能と更新プログラムの上位に表示されるようになったからでしょうね。

2015-09-18 19-59-32

Visual Studio の Community Edition があるから、という理由もあるでしょう。

Arduino は苦手な私ですが(恥)、「Arduino 持ってるか?」と言われれば「はい」と答えざるを得ません。
ということで、せっかくなので改めてごく簡単に評価してみました。

Arduino IDE の製品詳細ドキュメントの閲覧有償版へのアップグレードは、Visual Macro のサイトへどうぞ。


インストールはごく簡単ですね。拡張機能と更新プログラムからインストールするだけです。こまめにバージョンアップされているようですが、他のプラグインなどと同様に更新時には Visual Studio が教えてくれます。

インストール後は、新しいプロジェクトダイアログにテンプレートが表示されるようになります。
Visual C++ カテゴリー下に出てきます。

2015-09-18 20-24-51

Windows for IoT 下にも Arduino IoT Project というプロジェクトテンプレートもあります。Windows Remote Arduino に関係するテンプレートですかね。(すみません、ここは調べていません。いずれ、その気になったらちょっと触ってみる・・・かもしれません)

2015-09-18 20-25-07


Arduino 開発に関する設定はツールバーから行います。ライブラリの追加もツールバーで行います。

2015-09-18 20-26-522015-09-18 20-28-14

スケッチサンプルやライブラリの一覧、ボードの参照などは、Visual Micro Explorer ウィンドウを利用できます。

2015-09-18 20-47-46

作成したスケッチは F5 キーで Arduino 実機に転送して実行できます。
デバッグ機能は有償版にアップグレードするとできるようになるようです。(未評価)

Arduino IDE を使わずに Visual Studio だけで一連の作業が完結します。インテリセンスも使えますし、Arduino IDE よりも便利に使えそう。
Visual Studio との親和性も以前より高くなっているように思います。

ホビーユースの Arduino 開発ならば、Visual Studio 2015 Community が使えますし、Arduino 好きな方はインストールしておいて損はなさそう。がっつり開発したい場合は有償版にアップグレードしてデバッグ機能を利用するとさらに効率よく開発できそうです。

「はじめての Visual Studio /クラウド/ IoT」は7月19日(土) の開催です(技術ひろば.net 2014年7月) #hirobatech

2014年7月の技術ひろば.net の勉強会は「はじめての Visual Studio /クラウド/ IoT (復習希望の方の参加も歓迎)」と題して、7月19日(土) に開催します。
ブログでの告知がすっかり遅くなってすみません。

http://hiroba-tech.connpass.com/event/7101/

タイトル通り、初心者・(再)入門者、それからこれを機に復習してみたいという方のための勉強会です。
当初の予想を大幅に超えたお申し込みをいただき、参加者枠を増やしましたが、それでも満席が予想されます。参加ご希望の方はお早めにお申し込みください。

アンケート、懇親会などで「難しい勉強会が多くて、なかなか参加しづらいことがある」という声をよく聞きます。今回はそういった方の期待に応える勉強会を企画しました。
その場で話を聞いて終わりではなく、参加者の皆さんが一つでも多く自習の情報をお持ち帰りになれる会になるようにしますね。

セッションテーマとスピーカーは、

  • Visual Studio 活用方法・・・椎野磨美さん
  • はじめての IoT ・・・太田寛さん
  • はじめてのクラウド・・・森博之さん

です。豪華スピーカーで実は私自身が当日を一番楽しみにしています。

たくさんの方のお申し込みをお待ちしています。

http://hiroba-tech.connpass.com/event/7101/

 

LightSwitch in Visual Studio 11

Visual Studio 11 BetaWindows 8 Consumer Preview とともにリリースされました。
すでにインストール済みの方も多いかと。

LightSwitch ですが、11 では Visual Studio 自体の中に含まれるようです。
※バージョン 1 にあたる Visual Studio LightSwitch 2011 では単独のプロダクトだったわけですが。

Visual Studio 11 Beta を初めて起動すると、既定の環境設定の候補としてちゃんと “LightSwitch 開発設定” があります。

image

もちろん、新しいプロジェクトとして LightSwitch アプリケーションのテンプレートも含まれています。

image

開発環境の見た目は、Visual Studio 11 らしくなっていますが、デザイナ画面の構成などは特に変わっていないようです。
(今後どうなっていくかはわかりませんが)

image
image
image

開発したアプリケーションの見た目も今までと同様。

image
image

「ランタイムはどうなっているのかな~」と見てみると、Silverlight 5 でした。

image

これまでと変わらずに LightSwitch 開発ができそうですが、OData 対応など機能追加があるようなので、これから少しずつ見ていきたいと思います。
ひとまず LightSwitch in Visual Studio 11 Beta のリソースはこちら。