AIML案件では実際に何をやっているのか?
最近案件を探していると、「AIML案件」という単語が目に付くようになってきた。
「AIML案件」と聞いても、具体的な作業内容が全然思いつかなかったので
実際のAIML案件でどのような業務を行っているのかを調べて自分なりにまとめてみた。
AIML案件とは?
AIML案件とは、AI(Artificial Intelligence)や機械学習(Machine Learning)を活用したシステムやデータ基盤を構築・運用するプロジェクトのこと。
AIで使用するデータを収集したり加工したりする。
ただし、AIモデルを開発するメンバーだけで案件が成り立つわけではなさげ
実際には、
- 学習データの生成・活用
- データ基盤
- データ連携
- 権限管理
- モデル実行環境
- AIアプリケーション
など、多くのシステムが組み合わさって構成されている。
そのため、一般的なシステム開発と同じように、設計・実装・テスト・運用のような業務が存在する。
自分なりの理解だが、主に以下に分けられる気がする。
1. データ基盤の構築
AIが利用するデータを管理するための基盤を構築する。
例えば、
- データの保存先を作成する
- データを登録する仕組みを作る
- データを安全に利用できるようにする
といった作業がある。
AIの精度以前に、データを正しく管理できることが重要になる。
2. 権限管理
AIML案件では、多くの部署が同じデータ基盤を利用する。
そのため、
- 誰が閲覧できるか
- 誰が更新できるか
- AIモデルだけが利用できるデータは何か
などを管理する仕組みが必要になる。
権限設計はセキュリティにも直結するため、重要な業務の一つ。
3. 学習データの生成・活用
AIモデルは、学習に使用するデータの品質によって性能が大きく左右される。
そのため、AIML案件では学習データを準備する作業も重要な業務の一つとなる。
具体的には、
- 必要なデータの収集
- 不要なデータや重複データの除去
- データ形式の統一
- ラベル付け(アノテーション)
- 学習用・検証用・評価用データへの分割
などを行う。
また、生成AIを活用する案件では、社内文書やマニュアル、FAQなどを整理し、AIが活用しやすい形へ加工する作業を行うこともあるそう。
AIモデルはアルゴリズムだけで性能が決まるわけではなく、学習データの品質が結果に大きく影響するようなので、学習データの作成・整備はAIMLの根幹になっている。
4. データ連携
AIMLは一つのシステムだけで完結することは少ない。
そのため、
- S3
- データベース
- 他システム
などと連携しながらデータを受け渡す仕組みを作成する。
データの流れを設計することも重要そう。
5. 運用設計
AIが関わるとはいえ、システムは作って終わりではない。
- ログ取得
- エラー監視
- 障害対応
- 権限変更
- データ削除
など、運用を考慮した設計も必要になる。
AIML案件でよく使われる技術
比較的よく利用されてそうなものは、
- Python
- SQL
- Apache Spark
- Databricks
- AWS
- Azure
などがある。
AIよりもクラウドやデータ基盤の知識やデータの収集を求められる場面も多い。
AIモデルを作る仕事ばかりではない
AIML案件というと、データサイエンティストがAIモデルを開発しているイメージが強い。
しかし実際には、そのモデルを動かすための環境やデータ基盤を開発するエンジニアを求められている場合もある。
データが正しく管理され、必要な人だけがアクセスでき、安定してAIモデルを実行できる環境があって初めて、AIは業務で活用できる。
そのため、バックエンド開発やインフラ構築の経験もAIML案件では十分に活かすことができそう。
まとめ
AIML案件では、AIモデルを開発するだけではなく、
- データ基盤の構築
- データ連携
- 権限管理
- API開発
- 運用設計
といった業務も多く存在する。
AIそのもの以外にも「AIを安全かつ継続的に利用できる環境を作る」という点が必要なことを考えてなかった。
もちろん、LLMについての知識や、DWH、特徴量の出し方などなどデータサイエンティストの知識があると
案件上強いのは言わずもがなだが、上記以外にもインフラレイヤーや権限回りの経験などは役立ちそうだった。