SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

オラクル技術エキスパートが紹介する 開発者のためのデータベース完全ガイド

データベース内で機械学習!? なぜ求められるのか、そしてどのように実装されるのか

オラクル技術エキスパートが紹介する 開発者のためのデータベース完全ガイド 第12回

  • X ポスト
  • このエントリーをはてなブックマークに追加

データベース内機械学習に求められる機能

 次に、データ量の増加に対してスケールできるような、データの移動を極力軽減したデータベース内での機械学習を実現していくには、どのような機能実装が必要となるかについて考えていきたいと思います。

 前述の機械学習の一般的なプロセスにおいて、データの移動が発生するポイントを考えると、まずは「データベースの領分」から「機械学習の領分」の間があります。機械学習の領分をデータベース側に持ってくる必要があります。そのために必要なるのは、前述の「データ構造の違いを吸収する機能」と「機械学習機能」自体の機能になります。

 また、次の「機械学習の領分」から「業務システムの領分」にまたがる部分でのデータの移動を軽減するには、いくつか段階があると思いますが、比較的in/outが多くなる「モデル適用結果の評価」を機能として有していると効果が高いと思われます。また、究極的には業務システムのデータも統合されることとなれば、「業務システムの領分」境界でのデータの移動も無くすことが可能となります。これらを列挙すると以下のような形となります。

表1 データベース内機械学習に求められる機能
表1 データベース内機械学習に求められる機能

 データ移動の問題はトレードオフの側面がありますので、単に全て統合すればよいという話ではありませんが、これらの機能の実装の度合いに応じて、データ移動の問題をどのレベルで解決できるか、選択肢の幅が変わってくるのではないかと思います。

データベース内での機械学習の実装(オラクルの場合)

 ここまで述べてきたデータベース内の機械学習の実装の例としてオラクルを挙げてみます。オラクルの場合はクラウドが一般的になるはるか前の2002年にThinking Machines Corpの買収で獲得したDrawinの後継としてOracle Data Miningがデータベース内機械学習の実装としてリリースされました。この時点でデータの移動を極力抑えた機械学習の実装が始まっています。データベース内機械学習の歴史が長い分だけ、その周辺や行きつく先も見据えた機能の実装が既にされている状態になっています。

表2 データベース内機械学習の実装(例:Oracle Database)
表2 データベース内機械学習の実装(例:Oracle Database)

 従来型の機械学習プロセスにおいても利用されているSQL関数群はそのままデータ変換に活用できますし、データセットとリレーショナル表の違いを暗黙的に吸収する機構も内包され、機械学習のモデル生成時の前処理として動作する機構を備えています。

 またデータが大量になることが想定されているため、モデル生成の並列化なども実装されています。またモデル適用はSQL関数として実装され、こちらもSQLベースの並列処理の枠組みの上に乗る形で大量データに対する機械学習処理を実現することが可能となっています。

次のページ
データベース内での機械学習の実践(オラクルの場合)

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
オラクル技術エキスパートが紹介する 開発者のためのデータベース完全ガイド連載記事一覧

もっと読む

この記事の著者

中井 亮矢(日本オラクル株式会社)(ナカイ リョウヤ)

 日本オラクル株式会社でOracle Databaseを担当するエンジニア。主に地理空間機能、グラフ機能、機械学習機能を中心とするデータ活用や性能チューニングの領域で、製造業、小売業、公共・公益などの様々な問題解決およびコンサルティングに従事。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/18352 2023/10/03 11:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング