分gihyo.jpの連載なので,今回はちょっとテクノロジ的な側面について触れてみます。人工知能や機械学習で扱うデータは多段である人工知能でも機械学習でもディープラーニングでもなんでもいいですが,そこにあるのは「処理」と「データ」のセットです。それはあたりまえなのですが,ここで重要なことは“⁠このセットは多段である⁠”ということです。データ→処理→データ→処理→データ→処理......AlphaGoの成果などでは,こうした「ある処理をして,次にこういった処理をして」という,多段的な処理にもわりあい言及されていましたが,なぜかこうした記事では「○○という処理で」と処理一発みたいな表現をされることがよくあります。1つ重要なことがあります。それは「最初のデータは現実の現象から変換されている」ということです。Amazonレコメンドですが,これは「消費者が商品を買う」という行為が購買履歴というデータになっているのがスタートです。ディープラーニングによる顔認識にしても,実際の映像をカメラがデジタルデータに落とすというのがスタートです。数論などの研究はさておき,ビジネスに活用する場合あらゆるデータは,必ず何らかの現象が変換されたところからスタートする,ということを意識するかしないかで全然取り組みも変わってきます。現象→処理→データ......現象をデータに変換するとき,避けて通れない問題が,「⁠どう数値化するか」というものです。コンピュータで処理するためには,データは数値である必要があります。映像をJPEGにするなら,色味の差などの現像の調整はさておき,そこまで数値化について悩むことはありません。購買履歴の場合,買ったを1にして買わないを0にするのはわかりやすくて単純な変換ですが,それが本当に良い数値化なのかはどうかはまた別問題です。購買履歴によって相関を求めるというのは,購買に人間の興味というか意思が反映されているというのがその前提なので,興味や意思の強弱があるのであればそれを反映したほうがより精度の高い相関が出せるかもしれません。カメラ本体を買うのと,記録媒体としてSDカードを買うのは,そこに見られる意思の強弱に差はありそうですし,定期購買するようなものは10回買ったら10回の購買履歴として扱うよりは直近1回かもしくは対数的な変換をしたほうが良いかもしれません。このように,数値化を人間のセンスに任せるのか,それも強化学習などで最適化していくかは,なかなか興味深いテーマです。人工知能は処理自体を生み出すことはできませんが,処理で扱うデータの数値化は,教師データが多ければ人間より得意になっていくでしょう。データを次元として扱うさてこの現象の数値化ですが,1つ大変重要な概念があります。今回は「重要な」ばっかりですね。それは数値を個々で扱うのではなく,次元として扱うということです。次元は行列と呼んでも良いですし,ベクトルと呼んでも良いです。高校数学が役に立つ場面がやってきました笑。データをバラバラに扱うのではなく,ベクトルという概念で扱うことで,人工知能や機械学習での活用の可能性が飛躍的に広がります。ここでもう少し正確を期せば,数値をベクトル化すること自体が重要なのではなくて,数値,すなわちデータの相互の関連性を見出すことが重要で,その典型的な手法がベクトル化である,ということになります。映画で,粗い衛生写真がだんだんスムースになっていく(スムースというのは滑らかという意味です)ようなシーンがありますが,あれも画像データ同士の関連性を利用しています(映画のシーンは演出がアレですが⁠)⁠。Amazonレコメンドのような相関で使われる手法も,基本的な考えは購買履歴をベクトル化してその平均ベクトルと個々のベクトルのなす角度が広いか狭いかというものです。Translation)ですが,これもその基礎的な部分に「文脈を単語群のベクトルとして扱う」という概念が利用されています。Googleが公開しているTensorFlowは,Tensor(テンソル)=ベクトル,行列空間を扱うための概念から来ています。カギを握るのは「ベクトル化」つまり,ちょっと乱暴ですが,現在の人工知能や機械学習というのは「現象(自然界)をどうベクトルデータとして表現し,そのデータを処理していくか」というアプローチがその中心にあるといっても過言ではないのです。現象→処理→ベクトル→処理......もちろんベクトル以外のデータ形式もたくさんありますが,それは言い換えれば「ベクトル化することで成果の飛躍が期待される」ともいえるのです。GNMTなどはその良い例でしょう。ベクトルですから,数値化の際の値が違えば,文字どおり「明後日の方向を向いて」しまいます。ベクトル化で全部解決,ということではなく,むしろより数値化が適切かどうかの重要性が増すとも言えるのです。RSAの登場によって,素数が強力な暗号を生み出すという,数学が産業界で強力な武器になるという前例がありますが,幾何がビジネスに大きく活用されるというのは,不思議というか気持ちが良い感じがしますね。アスキー,So-netなどでネットワーク,サーバエンジニアを経験。ライブドア(現LINE)のデータホテルを構築・運営の後,海外にてVoIPベンチャーを創業。ZETA株式会社)を設立,代表取締役就任(現任)。ECソリューションの「ZERO-ZONE」シリーズとして検索エンジンやレコメンドエンジンを開発,販売している。2019」を開催しました。DAY1・DAY2の様子を注目セッションとともにお伝えします。LINEのエンジニア3名がイベントに先駆けて見どころを紹介します。コードの安全性・安定性を高める開発サイクル~テスト管理の効率を上げ,脆弱性診断を自動で行う~本連載では,連載「業務を改善する情報共有の仕掛け」を受けつつ,安全性・安定性を加えた開発サイクルについて考えていきます。若者世代から圧倒的な人気を誇るライブ配信&動画投稿コミュニティアプリ「MixChannel」(ミクチャ)の裏側(レコメンドシステムやサーバサイド開発など)について解説していきます。その他の連載CSS3アニメーションでつくるインターフェイス表現CSS3によるアニメーション表現を紹介していきます。その中でも,幅広い読者に応用してもらえるだろうインターフェイスを主なお題とします。MySQL道普請便り本連載では,MySQLを使ったアプリ開発・運用に関するノウハウをご紹介していきます。RecipeUbuntuの強力なデスクトップ機能を活用するための,いろいろなレシピをお届けします。JavaScriptセキュリティの基礎知識JavaScriptに関するセキュリティ上の問題はどこで発生し,どうすれば防ぐことができるのか?について解説していきます。〜システムをきちんと運用するための基礎知識システムは「作って終わり」ではなく,運用の中でさまざまな問題が発生します。問題の発生に備えて事前にどのような対応をしておくべきなのか,問題発生時に何をしなければならないのか,ポイントを解説していきます。きたみりゅうじの聞かせて珍プレーソフトウェア開発の現場で体験したトホホな失敗,思わずうなる珍プレーをきたみりゅうじ氏が四コママンガで紹介。Linuxのメンテナンスの傍ら,Linuxやオープンソースソフトと日々を過ごす著者が,その魅力とつきあい方を,エッセイ風味でお届けします。PRESS特別編集部員,さわやか笑顔のスーパーハカーはまちちゃんとネット大好き14歳わかばちゃんが,毎号,読者の皆さんから寄せられたおたよりを紹介します。皆さんの日頃の悩みにも答えちゃいますよ。]メールでのお知らせメールで次の案内をお送りしております。メールの配信を希望する方は,利用したい項目をチェックしてメールアドレスを入力し,[登録]ボタンをクリックしてください。UPDATES[ほぼ週間に1回]新刊メールマガジン[ほぼ週間に1回]電脳会議の各号案内[ほぼ1ヵ月半に1回]※変更する場合や停止する場合は,登録情報変更ページをご覧ください。※登録いただいたメールアドレスには,そのお知らせ以外,配信いたしません。Ltd.ページ内容の全部あるいは一部を無断で利用することを禁止します。個別にライセンスが設定されている記事等はそのライセンスに従います。