Navigation

2017年2月1日水曜日

国家戦略としてのFinTechの本質と全体像

FinTechの本質と全体像を理解する上で、森・濱田松本法律事務所の増島雅和氏がStartup Innovatorsに掲載されているFinTechに関する記事がおすすめです。

概要をまとめると、以下のようになります。
  • FinTechにより、他業界(音楽、出版)でおきていた技術より、ビジネルモデルの変化、プレイヤーの変化が起きる。
  • 他業界と異なるのは、金融は産業の基盤であり国力の源泉となるので、国家戦略として規制を考えなくてはいけない。
  • 他国も自国の国力を増進させるように規制作りを進めるので、国際金融規制においてルールメイキングにおける競争がおこる。
  • 日本国内では、国内のルールメイキングを行うプレイヤーが揃いつつある。
以下、主要な記事毎のまとめです。

FinTechの正体
FinTechの本質と日本におけるFinTechの挑戦(前編)
FinTechの本質と日本におけるFinTechの挑戦(後編)

まずは、「FinTechの正体」のポイントをまとめてみます。

  • 現在おきているFinTechの潮流は、これまで音楽や出版等の他業界に与えたのと同様、該当業界以外からのイノベーターが出現し、既存の金融機関は後塵を拝しつつある。そのイノベーターはこれまでの金融機関とことなる事業モデルやサービスで競争に参入してきている。
  • 金融業というのは、リストを移転ないしは仲介するビジネスである。そのため金融商品、サービス設計にあたってリスク情報生産/管理を行うのが、そこに事務コストがかかり、商品/サービスを設計する上での制約となっている。
  • 技術の進歩により、リスク情報生産/管理を行うコストは劇的に下がっており、コスト削減だけではなく、金融商品/サービスの設計をも劇的に変えうる。
  • ユーザ/消費者が欲しいのは、ローンや保険ではなく、家/車/安全で健康の生活である。ローンや保険等の金融サービスは手段でしかない。
  • 日本国としては、他国に先駆ける形で、FinTechに関する規制改革と運用の枠組みを要し、自国の事業モデルの確立が必要。海外の金融業者が国内を席巻するという事態を招いてはならない。

続いて、「FinTechの本質と日本におけるFinTechの挑戦(前編)」のポイントをまとめみます。
  • FinTechの歴史としてはリーマンショックが起源。需要サイドとしては、リーマンショックによる金融収縮の結果、金融サービスを受けられなくなった個人、中小企業がalternativeな金融を求めるようになっていった。また供給サイドとしは、解雇された金融機関のIT部門のエンジニア達が新しいサービスを立ち上げはじめた。
  • FinTechスタートアップ会社は金融をレイヤー毎(インフラレイヤー、プラットフォームレイヤー、アプリケーションレイヤー)に捉え、それぞれのレイヤーを置き換える技術によってビジネスを進めている。
最後に、FinTechの本質と日本におけるFinTechの挑戦(後編)」のポイントです。
  • 金融は産業の基盤であり国力の源泉であるため、Google, Facebookのように国内マーケットを海外勢に席巻されるわけにはいかない。
  • 金融規制を考える際は産業全体や国益を守るために、どのように規制をしていくかという議論が必要。
  • FinTechに関し、先進諸国は自国の国力増進のために、国際金融規制において政治力を行使しようとする。国際金融規制のルールメイキングでは、お互いの国力増進のために国同士で競争が起こる。
  • 既存の規制の枠組みのなかでTry & Errorが可能になるレギュラトリーサンドボックスという手法が、現在各国当局によって試みられている。
  • FInTechの規制や枠組みを定めるために、①政府、②政治家、③金融機関、④ベンダー、⑤スタートアップといったプレイヤーが必要。
  • 金融機関では、全銀協、地銀協、証券業協会、生保協、損保協などがカウンターパートになる。

2017年1月30日月曜日

概念と言葉と課題と答え

答えが問いを待っている(技術が課題を待っている)を読み、ITと哲学で私が考えている「ソリューションから課題を考える」という方法も有用に思う方は他にもいらっしゃるよね、ということを認識致しました。

以前、edXで受講した"User Innovation"というコースでも、(Re)frame your problem to fit your skillと、課題ありきというよりは、ソリューションを前提に課題を捉え直す(Reframe)するといったことが説明されていました。

User Innovation: A Path to Entrepreneurship | MITx on edX | Course About Video

CSMM.101x: Week 2: Intelligent Agents and Uninformed Search

edX ColumbiaXのAI(CSMM.101x) Week2のまとめですPythonコーディングの課題、なかなかの分量がありそうです。。。

日本語訳にあたっては、下記を参照しました。これもエージェントアプローチ人工知能 第2版をテキストとしており、購入したいところですが、いかんせん高すぎます。。。

Chapter2 intelligent agent(知的エージェント)
http://www.slideshare.net/soichiroinatani/chapter2-intelligent-agent

知的エージェント
http://www2c.comm.eng.osaka-u.ac.jp/~babaguchi/aibook/agent.pdf

2.1 Intelligent Agents
最初にAgentの定義が述べられています。

An agent is anything that can be viewed as:
 - perceiving its environment through sensors and
 - acting upon that environment through actuators


「センサーを通し置かれた環境を知覚し、その結果に基づき行動をおこすものをエージェントとする」といったところでしょうか。

Environment (環境のタイプ)
Deterministic (vs. stochastic)
Episodic (vs. sequential)
Static (vs. dynamic)
Discrete (vs. continuous)
Single agent (vs. multi-agent)
Known (vs. Unknown)

エージェントのタイプ
Simle reflex agents (単純反射エージェント)
- select an action based on the current state only ignoring the percept history
- are simple but limited
- can only work if the environment is fully observable, that is the correct action is based on the current percept only

Model-based reflex agents (記憶をもつ反射エージェント)
- handle partial observability by keeping track of the part of the world it can't see now
- have internal state depending on the percept history (best guess)
- have model of the world based on (1) how the world evolves independently from the agent and (2) how the agent actions affects the world

Goal-based agents (ゴール主導エージェント)
- are knowing the current state of the environment is not enough. The agent needs some goal information.
- combine the goal information with the environment model to choose the actions that achieve that goal.
- consider the future with "What will happen if I do A ?"
- are flexible as knowledge supporting the decision is explicitly represented and can be modified.

Utility-based agents (効率主導エージェント)
- sometimes achieving the desired goal is not enough. We may look for quicker, safer, cheaper trip to reach a destination. 
- agent happiness should be taken into consideration. We call it utility.
- a utility function is the agent's performance measure
- because of the uncertainty in the world, a utility agent choses the action that maximizes the expected utility.


2.2 Search Agents
サーチエージェントを用いることによって、現実世界での問題解決を行うことができるものがある。例:カーナビ

State spaceとsearch spaceの違い
State space: a physical configuration
Search space: an abstract configuration represented by a search tree or graph of possible solutions

探索木
- Root: initial state
- Branches: actions
- Nodes: results from actions. A node has: parent, children, depth, path cost, associated state in the state space.

探索空間は下記の三つに分類できる
1. Explored (a.k.a. Closed List, Visited Set) 探索済み
2. Frontier (a.k.a. Open List, the Fringe) 次に探索するもの
3. Unexplored: 未探索

Search strategies
* A strategy is defined by picking the order of node expansion
* Strategies are evaluated along the following dimensions:
- Completeness: Does it always find a solution if one exists ?
- Time complexity: Number of nodes generated / expanded
- Space complexity: Maximum number of nodes in memory
- Optimality: Does it always find a least-cost solution ?

* Time and space complexity are measured in terms of:
- b: maximum branching factor of the search tree (actions per state)
- d: depth of the solution
- m: maximum depth of the state space (may be infinite ) (also noted sometimes D).

2.3 Uninformed Search
1. Breadth-first search (BFS): Expand shallowest node
2. Depth-first search (DFS): Expand deepest node
3. Depth-limited search (DLS): Depth first with depth limit
4. Iterative-deepening search (IDS): DLS with increasing limit
5. Uniform-cost search (UCS): Expand least cost node

2.4 Uninformed Search Examples
BFS, DFS, UCSを用いて、どのように問題解決を行うのか、具体例とともに説明されている。

Week 2 Quiz: Uninformed Search
Uninformed Searchは知識なしの探索、知識を用いない探索と訳されるようです。
無知識探索だとニュアスンが異なるので、訳語として使用されていないんでしょうか。
AI agentの定義や、各探索アルゴリズムの特徴、探索アルゴリズムを用いた場合のグラフの読み解き等の設問がweek 2のQuizです。

DFS, BFS, UCSに関する設問は基本的特徴を答えるもので、難しくはありません。

与えられたグラフからポイントAからBに至るまでの道筋を、DFS, BFS, UCSを使用して回答する問題に関しては、実際に手を動かしながら回答するため、難しくはないものの手間がかかりました。

Week 2 Project: Search Algorithms
n-パズルゲームを解くコードをPythonで実装します。デットラインまで時間があるので、時間があるときにコーディングしてみます。

Week2: Discussion Questions
DQ1:
ダイクストラ法(DA)とUCSの違いについて説明されています。
なお、このアーティクルの筆者としてはUCSがほとんどの局面でDAより優れているので、DAを大学等で教えるのはもう止めては、と提言されています。
http://www.aaai.org/ocs/index.php/SOCS/SOCS11/paper/viewFile/4017/4357

DQ2:
お掃除ロボットがどのように機能しているかを学ぶために、下記の記事が紹介されています。
http://electronics.howstuffworks.com/gadgets/home/robotic-vacuum.htm
Roomba Redにどのようなセンサーがあるのか、そのセンサーを通し環境をどのように知覚し、お掃除を行っているのかの説明がされています。

https://blog.niallconnaughton.com/2016/01/25/roomba-algorithms-and-visualization/
http://robotics.stackexchange.com/questions/628/what-algorithm-should-i-implement-to-program-a-room-cleaning-robot
こちらの二つの記事はお掃除ロボットが最適なパスを見つけるためのアルゴリズムについて議論がされています。牛耕式 boustrophedon(日本語の発音ブストロフェドン)って言葉、日本語/英語ともに初めて知りました。