saii-lab

「知性のルーツを発見する」がテーマのブログ。人工知能(AI)、プログラミング教育などの幅広いトピックを扱います。

知性の進化の歴史 -前半-

最近、スマートフォンアプリへのAIの導入方法を検討しています。 限定されたリソースで、いかにして汎用性の高い知性を実現するか、それは動物の神経細胞ネットワークの進化の歴史に学ぶことが多いように思えました。 そういった意味で、今回は神経細胞ネッ…

楽しくプログラミングを続けるために -プログラミング初心者が陥りがちな罠-

一時期は専業のプログラミング講師をしていましたが、現在は毎週末のみiOSのプログラミングを教えています。これまでに、トータルで500人以上は教えてきたかと思います。 様々な方にプログラミングを教えている中で、プログラミング初心者の方が陥りがちなパ…

読書録: シンギュラリティは近い

レイ・カーツワイルの「シンギュラリティは近い」を読了しました。 シンギュラリティとは人工知能が人間の知性を超える到達点のことですが、そのような未来は本当に訪れるのでしょうか。また、訪れるとすればどのような未来が我々を待っているのでしょうか。…

第03回てくてく勉強会を開催しました

様々なバックグラウンドのエンジニアが集まる勉強会、第03回てくてく勉強会を開催しました。 参加者は前回から大幅に増えて22人、インフラエンジニア、Webエンジニア、モバイルエンジニア、SE、機械系エンジニア、データサイエンティスト、SAPエンジニア、Sa…

読書録: サピエンス全史

「サピエンス全史」を2回通読しました。個人的に2016年一番の名著だったので、興味深かった内容を一部引用し、コメントしてみます。 ハンムラビもアメリカの建国の父たちも、現実は平等あるいはヒエラルキーのような、普遍的で永遠の正義の原理に支配されて…

「みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習」をUdemyで公開しました

初心者向け人工知能、機械学習のコースをUdemyで公開しました。 www.udemy.com みんなのAI講座は、誰に対しても開かれた人工知能、機械学習の講座です。プログラミングや数学の事前知識はほとんど必要ありません。難解な数式やプログラミングが学習の妨げで…

MetalでiOSアプリに宿る生命

iOS

iOS その2 Advent Calendar 2016 25日目の記事を投稿しました。内容は、2016年12月14日にshibuya.swift#6で発表した内容に加筆を行ったものです。加筆内容は、主にGPUコンピューティング、生命や知性に関する個人的な観点です。発表のレポートはこちら。Meta…

MetalでGPUコンピューティング(13) スレッドについて

iOS

Metal Advent Calendar2016の24日目の記事を投稿しました。Metal Advent Calendar2016の最後の記事となります。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGa…

MetalでGPUコンピューティング(12) MTLRenderPipelineState

iOS

Metal Advent Calendar2016の17日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコ…

MetalでGPUコンピューティング(11) MTLRenderCommandEncoder

iOS

Metal Advent Calendar2016の16日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、GPUコンピュ…

shibuya.swift#6で発表しました

iOS

「MetalでiOSに宿る生命」というタイトルの発表を、2016/12/14(火)にshibuya.swift#6で行いました。内容は、Metalの基礎、特性を把握するための実験、応用としての群知能の実装に関してです。発表の機会を与えていただき、有難い限りです。 Metalの特性、…

MetalでGPUコンピューティング(10) Metal Shading Languageで記述されたライフゲームのロジック

iOS

Metal Advent Calendar2016の14日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、Metal Shadi…

MetalでGPUコンピューティング(9) MTLComputePipelineState

iOS

Metal Advent Calendar2016の13日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコ…

MetalでGPUコンピューティング(8) MTLComputeCommandEncoder

iOS

Metal Advent Calendar2016の12日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコ…

第02回てくてく勉強会を主催しました

様々なバックグラウンドのエンジニアが集まる勉強会、第02回てくてく勉強会を主催しました。 会場はTekuru四ツ谷教室で、主催はエンジニアの酒井さん、武田さんと私(我妻)です。参加者は全部で13人、インフラエンジニア、ウェブエンジニア、モバイルエンジ…

MetalでGPUコンピューティング(7)

iOS

Metal Advent Calendar2016の10日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコ…

MetalでGPUコンピューティング(6)

iOS

Metal Advent Calendar2016の9日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコー…

MetalでGPUコンピューティング(5) MTLLibrary

iOS

Metal Advent Calendar2016の8日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、サンプルコー…

Metal、GPU関連のスライドを2つ紹介

Metal、GPU関連で最近印象に残ったスライドを2つ紹介します。1. Metal と Vulkan を用いた水彩画レンダリング技法の紹介 ・OpenGL ESでは、シェーダーの字句解析、構文解析、最適化、命令コードの生成の全てはドライバがランタイム上で実行している・Metal、…

MetalでGPUコンピューティング(4) MTKView

iOS

Metal Advent Calendar2016、7日目の記事を投稿しました。本記事では、前回に引き続きAppleが提供するサンプルコードの解説を行います。 扱うサンプルコードは、前回と同じライフゲームのアプリ、MetalGameOfLifeです。 MetalGameOfLife今回は、GPUコンピュ…

MetalでGPUコンピューティング (3)

iOS

Metal Advent Calendar2016の6日目の記事を、Qiitaに投稿しました。今回の内容は、Appleが提供するMetalのサンプルコード、MetalGameOfLifeに関するものです。 MetalGameOfLife上記は実行画面です。いわゆるライフゲームのアプリですが、Metalの並列プログラ…

sibuya.swift #6で発表します

iOS

12月14日(火)のsibuya.swift #6で発表します。内容はiOSのMetal関連になるかと思います。発表時間は15分です。既に41人の発表枠に104人の申し込みがあり、iOSエンジニアに大人気の勉強会です。どれだけ多くの方がMetalに興味を持っているのか分かりません…

第02回てくてく勉強会を開催します

2016年12月10日(土)、第02回てくてく勉強会を開催します今回のテーマは、"TensorFlow"です。てくてく勉強会は、様々な分野のエンジニアが集まる勉強会です。 エンジニアの卵の方、バリバリ現役のエンジニアの方、技術レベルは一切問いませんので、気軽に”…

MetalでGPUコンピューティング(2)

iOS

前回に引き続き、Apple製のフレームワーク、MetalについてQiitaに記事を書きました。今回はMetalの応用編です。アプリの描画部分にMetalを用いるのではなく、ロジック部分にMetalを用いるという通常と逆の試みを行い、群知能を実装します。 各個体はローカル…

第01回てくてく勉強会を主催しました

様々なバックグラウンドのエンジニアが集まる勉強会、てくてく勉強会を主催しました。 会場はTekuru八重洲教室で、主催はエンジニアの酒井さん、武田さんと私(我妻)です。参加者は全部で12人、インフラエンジニア、ウェブエンジニア、モバイルエンジニア、…

第01回てくてく勉強会を開催します

今回のテーマは、”サーバーレス”です。てくてく勉強会は、様々な分野のエンジニアが集まる勉強会です。 エンジニアの卵の方、バリバリ現役のエンジニアの方、技術レベルは一切問いませんので、気軽に”てくてく”歩いてご参加下さい。 てくてく勉強会は、毎回…

MetalでGPUコンピューティング(1)

iOS

Apple製のフレームワーク、MetalについてQiitaに記事を書きました。Metalを用いることにより、スムーズなCPU/GPUの連携が可能となり、使い方によっては驚異的なパフォーマンスが得られます。 GPUコンピューティングがモバイルデバイスでも比較的手軽に扱える…

リアルな世界、ビットの世界

我々が暮らすリアルな世界と、コンピュータ上の世界(以下、ビットの世界)の違いは何でしょうか。人工知能、人工生命は、リアルな知能、リアルな生命と比較してどのような制約を受けるのでしょうか。 以下、リアルな世界とビットの世界の比較をしてみたいと…

スノボするカラスとキャンプするタコ 汎用知能の進化経路

プラスチックのフタでスノボを楽しむカラスの様子です。汎用性の高い知性が霊長類の専売特許でない事が分かります。鳥類の先祖は恐竜であり、約四億年前にヒトの先祖と分岐したはずです。しかしながら、別の進化経路を辿っても高度な知能の獲得が可能である…

備忘録: 直近に読んだ生物学関連の本5冊

1. 植物は<知性>をもっている ステファノ・マンクーゾ (著), アレッサンドラ・ヴィオラ (著), 久保 耕司 (翻訳)人間のような中枢神経ベースの知性が、知性の全てではないようです。知性の一つの形態として、植物のように、各器官が相互にネットワークを形…