ブログ

手作りブログ、開始しました

人工知能で山葡萄をなんとかする

岩手県は山葡萄生産量日本一です。 また野田村は岩手県で生産量第2位ということ、友人も山葡萄に関わっていることもあって山葡萄の諸問題を解決しようと最近流行りのAI,ディープラーニングで山葡萄をコンピュータ側からなんとかしようと思ったので記録を書いてみます。


さて、AIディープラーニングとはなんでしょうか?


ディープラーニングはAI(人工知能)の計算、学習方法の一種で、人間の神経細胞を真似したニューラルネットワークの一種ということ。 またそのニューラルネットワークを多層(深層)にすることで効果的な学習を行うこと、それにより認識精度が上がっていたため最近注目されています。


友人から山葡萄の重さをはかることができないかという事をききました。  スマホとかでぱぱっと山葡萄を写すと重さを図れるみたいなのできない?みたいなゆるい感じで、、、



いろいろ考えてみました。


ぶどうの重さは一粒の重さ X 粒の数で大体でるのではない? 粒の大きさから大体の重さはわかる気がします。 同じ大きさならだいたい同じ重さになるだろうから粒の数を数えられればなんとなくな重さがでるんじゃないかなと。 もちろんカメラでぶどうの画像をとれても裏側の見えない部分は数えることができないのですが、これもなんとなく見える部分の重さに、かける1.2とかすればなんとなく近い数字がでるのではないかなーとなんとなくな感じでいけるんじゃないかとおもいました(かなりゆるい)



というか実はディープラーニングの実験したいだけだったのですけど、、、


というわけでぶどうを認識させるAIをディープラーニングで作ってみようという企画です。



データが多ければ多いほど精度が高くなるというディープラーニングですが、山葡萄写真はなんども撮影していたのでたくさんあります。 自分でとった写真を利用することにしました。


tensorfloy yamabudou

今回の目的はぶどうの粒を認識させることです。 おそらくディープラーニングで粒を認識させる以外にも認識させる方法は他にもあるのかもしれません。 ぶどうの軸や葉っぱに隠れた部分の粒などを「粒」と認識させるにはAIさんとかが得意なんじゃないかと、AIさんが粒を粒と認識してくれたらいいなーという願望でもあります。



というわけでやってみることにしました。


まずは山葡萄写真から粒の部分を教えて上げる必要があります。

labelimgという画像にラベル付するソフトで粒をyamabudouというラベルを付けて囲んでいきます。


tensorfloy yamabudou

えんえんと・・・ かこんでかこんで・・

一つの写真に数百の粒があるのですが、これを60ファイルぐらいラベル付していきました。


tensorfloy yamabudou
(入力ミスでyamabudouwwwとなってる 草)

さてディープラーニングを行うということでライブラリはgoogleのtensorflowを使うことにしました。 これはgoogleのディープラーニング用ライブラリで、比較的ネット上に解説も多いということがありました。


tensorflowはCPUで計算してもいいし、高速なGPU(グラフィック用のプロセッサ)を利用してもいいのですが、高速なGPUを利用したいのですが、自分のPCでtensorflowの環境を作るのが大変だったのでAmazon awsのディープラーニング用のGPUサーバを利用して行いました(有料)。 またその後自分のPCでもCPUにて学習もおこなってみましたがやはりGPUとCPUではだいぶ計算処理料に違いがありました。 amazon awsでは1時間$0.6ぐらいから$2ぐらいの比較的安価なもので試してみました。 学習はかなりの時間がかかります。



そして学習させてみた結果が以下です。


tensorfloy yamabudou

右側と左側は同じ画像で、緑に囲われた部分が粒となります。

右側が人間がラベル付した画像、左側がAIが認識した粒です。


なかなかいい感じに認識している気がします。


が、認識されていない部分がおおくあります。 この状態だと山葡萄画像から粒を数えるという用途にはまだ使えないという感じです。


うまく行かなった理由はまだよくわかりませんが、

1,学習時間が短い
2,ラベル付した画像とラベルの数が少ない

のどちらも可能性があるのかなと思います。


1はお金と時間があれば解決しそうですが、2については、画像の数が少ないのではないかという点です。


ラベル付けや画像の用意のしかた(同じ画像を縦横回転させて学習させたりすると良いとか)とか、いろいろ学べば学ぶほどディープラーニングとtensorflowについての知識が追いつかない感じだったりします。


ちなみにgoogleが提供している学習済みモデルなどではGPUにて数万時間学習したモデルなどが無料で利用できたりもします。


とりあえずまた時間ができたらチャレンジしてみたいと思っています。 来年の山葡萄シーズンまでに何回か試してみたいと思います。



ではまた。

2018-11-23 00:00:00


久慈地方産業まつりにて「ゆるゆるプログラミン」コーナー

2018年10月13日、14日に久慈地方産業まつり(久慈市アンバーホール)にて「ゆるゆるプログラミング」として子供向けプログラミング体験コーナーを行いました。

久慈地方産業まつり「ゆるゆるプログラミング」久慈地方産業まつり「ゆるゆるプログラミング」久慈地方産業まつり「ゆるゆるプログラミング」

両日合わせて約60人の子どもたちに参加していただきました。 ありがとうございました。 内容としては hour of codeマインクラフトスクラッチを使って子どもたちに楽しんでもらえるよう体験していただきました。

プログラミンという名前をつけてていますが、これをやることでプログラミングを習得するというよりは、作る事や、いじる楽しさを体験してもらうのが目的でした。このイベントをきっかけにパソコンで何かを作る事の楽しさを体験してもらえればと思っています。

2018-10-15 00:00:00


sns buttonについて

ソーシャルネットワーク系のSNSボタンよく見かけますよね。 今時設置されていないウェブサイトも珍しいぐらいです。(とはいえ、うちは設置していません・・・)
ある開発中のサイトでsnsボタンを設置しようと思いました。 で、いろいろsnsサイトのデベロッパーサイトに訪問して、htmlとかjavascriptのコード入れたりしている最中に急にめんどくさくなってしまって、こんなのいちいち毎回やってられるかって感じになって、急遽自分でいい感じに面倒くさくなく設置出来るようにしたらいいじゃないかと思ったわけです。

ソーシャルネットワーク系のボタン設置するのに簡単にやってくれるサイトとかもあるのですが、なんか急に作りたくなって、作ってしまいました。 https://snsbutton.comです。 結局よくあるサイトの劣化版にしかなってないのですが、気分はすっきりしたのでまあいいかなと思っています。

ソーシャルボタンを設置しようと思った時、思い出したら使ってやってください。 今現在はfacebook,はてなブックマーク、LINE、twitterのみなのと、横並びの小さいボタンのみとなっています。 今後サービスを増やしたり、レイアウトを変えたりしたいと思います。 あとなぜか英語にしています。 特に難しいこともないので、生成されたコードを貼り付ければ完了です。

2018-03-02 16:00:00


https(暗号化通信)について

https://example.com 今後数年以内にほとんどのウェブサイトはhttpsに対応することになります。

httpsとはなんでしょうか? httpsはホームページにアクセスする際に暗号化した通信にてアクセスする方法です。 ただし暗号化通信を行うにはホスト名の検証が必要で、SSL証明書が必要になります。

なんでhttpsが必要なのかというと、暗号化されると盗聴されないこと、通信を改ざんされない事、証明書が利用されるためなりすましを防ぐことがあります。
 ウェブ(ホームページ)の重要性が高まり、お金の取引や個人情報、重要な情報がやり取りがされるようになってから通信の内容を暗号化して通信内容を読み取られないようにするためだったりすることが大きいと思います。
主要なウェブブラウザ(Windowsの場合標準で利用できるEdgeやInternet Explorer)であるgoogleのchromeブラウザにてhttpにてアクセスした場合アドレスバーに警告表示が出るようになってきた事が大きいと思います。 またhttps化されたウェブサイトはgoogle検索で有利に働くということもあります。 さらに今後入力フォームを設置しているウェブサイトなどではさらに警告が強く表示されるようになってくると思います。 またgoogle chromeだけでなくその他のブラウザもそうなってくるのかと思います

 

https通信を行うにはssl証明書が必要なのですが、最近無料で利用できる証明書が出てきたことや、以前は1IPアドレスに対して一つの証明書しか利用できない事があったのですが、1個のIPアドレスで複数の証明書を利用することができるようになったため、費用負担が少なくなってきたこと、CPUにて暗号計算機能がついてきたりなど、証明書や暗号化通信が広がるための様々な環境が整ってきた事があります


皆様すでにウェブサイトをお持ちの方はhttp://ドメイン からhttps://に移行することをお勧めいたします。 httpからhttpsへの移行したい、詳しく知りたいというかたはお気軽にご相談頂ければと思います。



今後公的サイトや、企業サイトなどはhttps化は必須になってくるものと思います。

 みなさんもhttps化しましょう。

2018-02-14 00:00:00


ブログテスト

テストです

2018-01-07 00:00:00


gmailでgmail.com以外のメールアドレスを使う方法

gmailみなさんおつかいですよね? PCスマホからも同じように使うことができるので大変便利なわけですが、gmailにてgmail.comドメイン以外のメールを使う方法を書いてみたいと思います。

step1 gmailの設定を開く

gmailの設定画面を開きます。通常右上あたりに歯車アイコンがあるとおもいますので、それをクリックします。

step2 アカウントとインポートで別のメールアドレスを追加を開く

アカウントとインポートタブで、「別のメールアドレスを追加」リンクをクリックします。

名前とメールアドレスを入力します。

step3 SMTP サーバー経由でメールを送信します

他のアカウントからメールを読み込むを選択します

ユーザ名、パスワード、メールサーバのホスト名を入力します

「取得したメッセージのコピーをサーバに残す」にチェックを入れます
「受信したメッセージにラベルをつける」にチェックを入れることをお勧めします

2018-01-07 00:00:00


2018年 今年もよろしくお願いいたします

思うところがありブログはじめたいとおもいます。 とはいえブログというほど日々更新するものではなく、お客様に見せたい文章や、メモなどが中心になります。

最近地元での仕事も増えてきて、地元のホームページなども作らさせていただいています。 私個人の仕事としては主にインターネットでの顔を合わせないやりとりがおおいのですが、地元での仕事はリアルに顔を突き合わせてお話をうかがってやるので(当たり前ですが)普段行かないところに行ったりすることもあり、仕事をしているという充実感があります。
2018年はいろいろと地元の仕事、ホームページなどの受託はもちろんですが、自主的な仕事を増やしていきたいとおもっています。

昨年、地元の方のホームページを受託してつくらさせていただきました、その際にすでに独自ドメインがあり、地元の業者さんがホスティング(ホームページや、メールを利用していた状態)で、こちらから新たに作るということで、独自ドメインのネームサーバ情報の変更(サーバを変更する)や、独自ドメインの移管も行いました。 その際に元の業者さんにお願いすることになるわけですが、お忙しい中、ネームサーバ情報の変更や、独自ドメインの移管もトラブルなくさせていだきました。

以前は独自ドメインを人質にとるレンタルサーバ業者とか結構あったと記憶しています。 独自ドメインの人質とは、サーバ料金に独自ドメイン代をコミにしていて、別のサーバに容易に移転できないようにする方法です。 独自ドメインはある意味業者にとってお客様が他所にでて行かないための人質みたいに使われていることがありました。

同じ業界、それも競合となっていた場合、こうしたことをしてしまうことがあるわけですが、上記の業者さんは競合相手にも関わらずスムーズにやっていただきました。  ありがたいことです。 新しくドメインを移転させてもらう方としてはとても助かりました。 また自分もそういう場面になったら躊躇なく別の業者さんがドメインを使えるようにしたいと思います。

さて今年2018年は地元三陸の食材や情報、歴史、様々なものをいろんな人に販売したり、見せていたけたらなと思っています。

2018-01-07 00:00:00


お問い合わせは

お問い合わせはこちらのフォームにご入力いただきますようお願い致します。