はじめに
Axross とは、SBイノベンチャー発の新規事業で、現場エンジニアによるAIを中心としたノウハウやDX事例を"レシピ"として教材化し、業務に近いテーマでプログラミングを実践的に学べるサービスです。
今回は、Axross運営が厳選した**『AI・機械学習を中心に、業務で活用するヒントになるようなレシピ』を100個**、簡易解説とともにご紹介します。
是非、みなさまのAIやPython学習の参考にしてみてください!
AI・機械学習を業務に活用するレシピ100選
基礎
AIリテラシー
00 .【ビジネスAI基礎】文系でもわかる AIを活用するためのリテラシーを身に着けるレシピ
ITに詳しくない方や文系の方でも、ビジネスレベルのAI・人工知能の基礎知識を身に着けることを目的に、具体的なAI活用事例も含めて専門用語を噛み砕いて説明しています。AIについてビジネスレベルの知識を得たい方や、AIが動く仕組みをざっくり知りたい方、自分の業務にAIを取り入れるイメージを把握したい方におすすめです。
データ取得
01 . JUMPの掲載順をスクレイピングで取得しイロレーティングで人気度を数値化するレシピ
歴代の週刊少年ジャンプ掲載順をPythonによるWebスクレイピングで取得し、イロレーティングによってそれぞれの漫画タイトルの人気度を数値化します。
可視化
02 . japanmapを活用した日本地図の可視化レシピ
日本の人口密度を題材に、オープンデータの取得、日本地図上への可視化を行い、様々な角度から分析します。
03 . matplotlibによるグラフ出力の"いろは"が学べるレシピ
Pythonのグラフ化ライブラリ matplotlibの様々な機能を使って、ビジネス活用できるグラフ可視化ノウハウを試しながら学べます。
WEBアプリ開発
04 . DjangoとPytorchを使って花を認識するwebアプリを作成するレシピ
PyTorchによる深層学習で花の種類を画像認識し、WebアプリケーションフレームワークのDjangoを使って花の種類検索Webアプリを作成します。
数値
統計分析
05 . アンケートを因子分析するレシピ
Pythonによる因子分析テクニックを用いて、アンケートの質問項目を回答結果の類似度を元にグルーピングします。
06 . 従業員満足度調査(エンゲージメント・サーベイ)の分析レシピ
人事制度、評価、労務管理など従業員の会社に対する意識や問題点を把握する従業員満足度調査の結果データを用いて、Pythonによるデータ分析と仮説検証アプローチの考え方を実践します。
07 . App Storeのカスタマーレビューを集計してヒストグラムを作って比較評価するレシピ
PayPayのApp StoreカスタマーレビューデータをPythonで取得し、その傾向をmatplotlibを使ってヒストグラム等でグラフ可視化します。それぞれのレビュー傾向を比較評価することで、フェイクレビューを予測します。
08 . Pythonと統計検定で、回帰モデルを用いて市場反応分析するレシピ
相関分析と回帰・重回帰モデルを用いて、マーケティング活動を表す変数(商品の価格・販売促進活動など)に対する市場の反応分析(売上、購買行動など)を行います。
数理最適化
09 . Python&数理最適化を用いて最適な配送計画を算出するレシピ
Pythonと数理最適化手法を用いて、「倉庫にある荷物をどの車両で、どの順番で顧客に届けるべきか」という課題に対し、運搬経路の最適化をメタヒューリスティクス手法で算出します。
整理
10 . pandasを使ったcsvファイル解析とデータ整理テクニック
CSVファイルによるログデータ集計・解析業務を、Excelでマクロを組む代わりにPython/pandasを利用して大量かつ多ファイルの場合でも柔軟に分析できるテクニックを試します。
11 . ECサイトのCSVファイルをデータベース化し分析するレシピ
ECサイトの売上データ(CSVファイル)をデータベースに格納し、SQLを操作してデータ分析を行います。
時系列
12 . POSデータから商品の売上を予測するレシピ
リアルなPOSデータから時系列の売上データを集計・前処理を行い、RNNベースの機械学習モデルを構築して売上予測します。
13 . ECサイトで在庫に無駄なく商品を発注するためのデータ分析レシピ
ECサイトの注文履歴データを使い、機械学習によって商品発注量を予測します。
14 . Transformer による長期時系列予測するレシピ
変電所の変圧器湯温データを使って配電問題を解決するテーマで、Transformerによる長期時系列予測モデル Informerを実装します。
予測
15 . ECサイトのデータ分析から新商品を考えるレシピ
ECサイトのデータを用いて売れ筋商品や頻繁にサイトを利用している顧客層等のマーケティング分析を行い、新商品の品目やターゲットを設定して、そのターゲットからのフィードバックがサイトレビューでどの数値に該当するか予測するモデルを構築します。
16 . ECサイトのレビューからブランド信者を育成するレシピ
ECサイトのレビューから頻繁に利用してくれる顧客の声をキャッチし、注力すべき顧客を特定し、そのフィードバックをもとに次の施策考案に活用するマーケティング分析を行います。
17 . ECサイトで新商品の価格を決定するレシピ
ECサイトのデータから、新商品を何にするか、どの層をターゲットにするか、価格をいくらに決め、どれくらいの収益を期待できるかを算出する、Python、pandasによるマーケティング分析を行います。
クラスタリング
18 . ワインのアルコール度数を予測するレシピ
ワインのデータセットを用いてアルコール度数の回帰分析を通して、データリーク(モデル精度低下)を起こさない機械学習の実装を実践します。
19 . 日経33業種の株価増減率をクラスタリング分析し、日経平均株価と連動する業種を見つけるモデル作成レシピ
日経株価平均のデータをクラスタリングし、k-means法によるクラスタリングと主成分分析によって、日経平均株価の値動きと似通った値動きをする業種を特定するモデルをつくります。
強化学習
20 . 強化学習 QーLearningを実装して宝探しロボットを構築するレシピ
ゼロから宝探しロボットを構築し、システム自身が試行錯誤しながら最適なシステム制御を実現する強化学習のアルゴリズム Q-Learningを実装します。
機械学習
21 . MicrosoftのFLAMLで効率的に自動で適切な機械学習モデルを見つけるレシピ
MicrosoftのPythonライブラリFLAMLを使用し、効率的に適切な分類と回帰の機械学習モデルを自動探索します。
22 . 機械学習の特徴量の重要度を表示・活用するレシピ
機械学習のモデル性能における各要素がどの程度予測に寄与したかを示すためにFeature Importanceを活用して特徴量の重要度を表示します。
23 . Permutation Importanceによる特徴量の重要度分析レシピ
機械学習における特徴量の重要度評価・分析手法 Permutation Importanceを活用し、機械学習のモデル精度改善を行います。
24 . 脅威の無料AutoML「Pycaret」でKaggleに挑むレシピ
Auto MLのPythonライブラリPycaretを用いて自動でデータ処理や予測精度の高い機械学習モデルの選定を行います。
25 . 機械学習の精度向上① ~評価指標の最適化~
機械学習モデルの評価指標の最適化を行い、機械学習モデルの精度を向上させる考え方を学べます。
26 . 機械学習の精度向上② ~不均衡データへの対応~
機械学習モデルの精度向上を目指す手法として、不均衡なデータに対するデータ側への対処方法を学べます。
27 . 機械学習の精度向上③ ~アンサンブル学習~
機械学習モデルの精度向上を目指す手法として、複数モデルの精度比較、組み合わせ予測するアンサンブル学習の手法を学べます。
画像
画像認識
28 . 画像データが少量しかないタスクに対してResNet-50の転移学習を行うレシピ
CNNの代表モデルResNet-50を用いて、少量データに対する学習済みモデルの転移学習を行います。短時間で高精度の分類器を作成するための手法を学べます。
29 . PyTorchによる画像認識最強モデル「EfficientNet」実装!
層の深さ、層の幅、入力画像サイズの3つのちょうどよいバランスを提案する最強の画像認識の深層学習モデル「EfficientNet」を実装します。
画像分類
30 . 画像認識による乗り物の分類レシピ
Flickr APIから画像データを収集し、データの前処理から、モデルの定義・作成・評価まで、機械学習の画像分類の一連の流れを追体験します。また、後編では、転移学習によって画像分類モデルの精度向上を行います。
31 . OpenAIのCLIPを使った、ゼロショット画像分類(学習を必要としない画像分類)を実装するレシピ
画像と画像を説明するテキストのペア4億組を学習させた画像分類モデルCLIPによる、ゼロショット画像分類(全く学習を行わずに画像分類)を行います。
セグメンテーション
32 . セマンティックセグメンテーションで道路画像から人や車を認識するレシピ
自動運転における周囲環境把握を想定し、PyTorchによるセマンティックセグメンテーション手法PSPNetを活用して道路画像から人と車を識別します。
33 . 航空写真からアノテーションデータを作成して、対象物を抽出するセマンティックセグメンテーションモデルを作成するレシピ
Tellusの衛星データを用いてゴルフ場コースのセマンテックセグメンテーションを行います。
物体検出
34 . Tensorflow Object Detection API 道路標識検出レシピ
Tensorflow Objection APIを用いて画像の中の関心対象物(道路標識の一時停止)を背景から自動区別して物体検出する機械学習モデルを作成します。環境構築から自前データの取得、アノテーション、モデル構築・訓練し、結果の推論まで一連の物体検出・画像処理の流れを追体験します。
35 . Raspberry piでリアルタイムに7セグメントディスプレイを読み取るレシピ
OpenCVを用いて7セグメントの画像認識モデルを作成し、Tensorflow lite形式に変換してRaspberry pi上で推論します。
36 . YOLOv5 と転移学習を使ってマスクの着用者と非着用者の顔検出を行うレシピ
YOLOv5と転移学習を用いて近年需要の高いマスクの着用者と未着用者の顔検出を行い、学習結果をTensorBoardで可視化します。
37 . YOLOX-NanoをRaspberry Pi4で実行するレシピ
高速・高精度な物体検出モデルであるYOLOXをONNX形式に変換し、Raspberry Pi4で推論します。
38 . 学習済みSSDを少量のデータでファインチューニングし、新たなクラスの物体検出を行うレシピ
PyTorchのSSDモデルを利用して物体検出の学習済みモデルをファインチューニングし、少量データでかつ短時間の学習で新たなクラスの物体検出を実現します。
39 . Unity上で靴の3D物体検出を行うレシピ
Unityの推論ライブラリBarracudaを用いて、靴の3D物体検出を行います。
40 . PF-AFNでバーチャル試着を実装するレシピ
ECやアパレルで活用されているバーチャル試着について、パースを必要としないWUTONを改良した最新深層学習モデルPF-AFNを実装します。
超解像化
41 . PyTorchによるMulti Scale Residual Networkモデル構築レシピ
監視カメラ画像の解析などで近年用いられる、画像をより高解像度にする超解像化手法について、PyTorchでMSRNモデルを実装します。
VR/AR
42 . 3次元点群のディープラーニング応用レシピ
自動運転技術の分野で活用されている、3Dデータ形式の3次元点群の基礎とディープラーニングへの応用について学ぶことができます。
文字認識(OCR)
43 . LINEのCLOVA OCRで複数の請求書PDFをCSVデータに一括出力するレシピ
LINE社提供のAI-OCR、CLOVA OCRを活用し、複数の請求書画像を読込み、テキストのみを抽出します。
44 . Synthetic Dataを用いて画像から文字を検出するモデルを実装するレシピ
文字検出モデルCRAFTの学習・推論を実装し、実データから文字の検出と文字領域の予測を行います。
画像異常検知
45 . PyTorchを使ってGANによる異常検知を行うレシピ
深層学習GANを画像の異常検知領域に応用した「AnoGAN」と「EGBAD」をPyTorchを使って実装します。
46 . 生産ラインを想定した画像異常検知の実装レシピ
工場の生産ラインの不良品検出を想定して、オートエンコーダモデルとサポートベクトルマシンを構築し、一様なパターンを持つ画像の異常検知をし、異常部分をマーキングします。
画像生成
47 . Pytorchを使ってGANを実装するレシピ
PyTorchを使ってGANによる画像生成を実装します。
48 . Kerasで学ぶ画像生成モデルDC-GANを実装するレシピ
Kerasを使ってDC-GANによる画像生成を行います。
49 . StyleGANで本物と区別がつかない画像を生成するレシピ
学習済みStyleGANとデータセットを用いて、本物と区別がつかない存在しない人物の顔画像を生成します。
50 . テキストから画像を生成するDALL-Eを実装するレシピ
DALL-EとCLIPを組み合わせて、任意テキストからその内容に合わせたそれっぽい画像を生成するモデルを作成します。
画像編集
51 . 機械学習応用編~k平均法によるカラー画像圧縮法~のレシピ
機械学習k-平均法を用いてカラー画像を圧縮します。
52 . Python + CycleGANでオリジナルデータを学習し、白黒画像をカラー画像に変換するレシピ
顔画像のデータセットを用いて、CycleGANによる画像編集を行います。
ノイズ除去
53 .Kerasで作る画像ノイズ除去モデル AR-CNNを実装するレシピ
画像のノイズ除去モデルAR-CNNをTensorflow, Kerasで実装します。
画像合成
54 . StyleGAN+CLIPモデルで、テキストによる顔画像の編集を行うレシピ
StyleGANとCLIPモデルを実装し、編集したい内容をテキストで指示できる汎用性を持たせ、ランドマークに合わせた顔画像の切り出し、顔画像を生成する潜在変数の推定・編集を行います。
55 . 顔交換(FaceSwap)技術を活用し、人物画像の顔を入れ替えるレシピ
動画像から人物の顔の入れ替えを行い、ディープラーニングで自然な合成「ディープフェイク」を実装します。
56 .Talk-to-Editを用いた表情編集レシピ ~パラメータによる表情編集~
ユーザとの対話に基づく、きめの細かい表情編集が可能なフレームワークTalk-to-Editを用いて顔の表情の編集・加工を行います。
57 . StarGAN-v2で顔の特徴操作・顔の合成を実現するレシピ
有名人の顔写真データからディープラーニングStarGAN-v2による顔の特徴操作・合成を行います。
58 . 1枚の静止画を動画に合わせて動かすレシピ
Motion Representations for Articulated Animationを使い、静止画を動画に合わせて動かす動画像合成処理を行います。
59 . 自分の表情や顔の動きに合わせて、キャラクターアバターを動かすレシピ
Web接客のようなアバター活用を想定し、同じカテゴリの静止画と動画を用いて静止画を動画のように動かすFOMMモデルを使い、動画とWebカメラを通して自分と他人の顔写真を動かします。
感情認識
60 . あなたのPCをPepperのような表情認識ロボットにできるレシピ
pazというロボット開発OSSライブラリを用いて、対話する人の表情を認識し発話するボットを実装します。
行動認識
61 . SlowFastを用いた人物の行動認識を行うレシピ
Faccebook社が開発した人物の行動認識を行うライブラリDetectron2を用いてSlowFastを実装し、カメラに映る人物の行動認識を行います。
62 . MediaPipeを利用して簡単なジェスチャーを推定するレシピ
MediaPipeを用いて手のランドマークを検出し、指先の軌跡から3種類の簡単なジェスチャーを認識します。
姿勢推定
63 . OpenPoseでプロ野球選手のバッティングフォームを分析するレシピ
OpenPoseを用いて野球選手の動画から人物検出・姿勢推定、骨格検出を行い、重心位置の軌跡を推定してバッティングフォームを解析します。
64 . MoveNetのキーポイントからボディランゲージを読み取るレシピ
TensorFlow Hubを用いた学習済モデルを利用し、高速な姿勢推定モデルMoveNetによるキーポイントの取得と、キーポイントからのボディランゲージの認識を行います。
行動追跡
65 . DeepSORTを用いた人物のトラッキングを行うレシピ
YOLOとReid、SORTのアルゴリズムを組み合わせたDeepSortを用いて、動画に映る人物の追跡を行います。
類似画像検索
66 . Arcfaceを用いた類似顔画像検索アプリケーションの実装レシピ
顔認識の深層距離学習をモデルArcfaceを用いて、顔画像の類似度を算出し、類似顔画像を検出するアプリケーションを作成します。
画像分類モデル精度向上
67 . 画像分類する深層学習モデルの判断部分を可視化するレシピ
機械学習の画像分類モデルが分類する際の判断根拠をGrad-CAMを使って可視化します。
68 . 【PyTorch】精度爆上げのオレオレベストプラクティスを10個まとめてみた!
実務レベルまで機械学習の画像分類モデル精度を上げるための、10個のベストプラクティスを学べます。
言語
言語可視化
69 . 1冊の本を1枚の画像で可視化するレシピ
日本語のテキストデータをMecabを使って形態素解析し、単語の頻出度に応じてWordCloudで可視化します。
70 . ブラウザの履歴データから形態素解析でユーザーの嗜好を抽出するレシピ
形態素解析ライブラリJanomeを使って、Google Chromeの履歴データから頻出単語を取り出してランキング化し、Webページの閲覧傾向を分析します。
文章解析
71 . フェイクニュースを検知するレシピ
BERTベースのグラフニューラルネットワーク(GNN-based Fake News Detection)のプログラムを使ってフェイクニュースを検知します。
知見抽出
72 . 材料の単語分散表現から知見を抽出するレシピ
材料系の膨大な論文をスクレイピングで学習し、mat2vecを使って材料同士の類似度を分析し、マテリアルズインフォマティクスにおいて、単語分散表現の機械学習モデルから人間が気づかなかった知見を抽出・可視化します。
SNS解析
73 . TwitterAPIと形態素解析でフォロワーのいいねしたツイート傾向を分析するレシピ
Twitter APIとJanomeを活用し、自分のTwitterアカウントのフォロワー分析を行います。
74 . TwitterAPIで最もいいねがつきやすい時間帯を分析するレシピ
Twitter APIからツイートを取得・解析し、投稿された時間帯ごとにいいね数を集計し、matplotlibでヒストグラム可視化します。
感情予測
75 . コメントからポジネガを自動判定するレシピ
ECサイトのレビュー解析を想定し、WEBスクレイピングで取得した日本語テキストのポジネガ分類モデルを実装します。
76 . 日本語BERT事前学習モデルを使ってMultilabel Sentiment分類器を学習する
Twitter APIを使ってツイートを取得し、事前学習モデルを使ったマルチラベルデータをHugging Faceで事前学習し、テキストの感情分類モデルを作成します。
チャットボット
77 . LINEチャットボット(おうむ返し&AI搭載型LINEチャットボット)の作成レシピ
オウム返し&AI搭載型のLINEチャットボットを作成します。
78 . BERTによる日本語QAの発話応答モデル作成レシピ
BERTを使ってA4紙1枚程度の日本語マニュアルの中から、日本語で質問すると日本語で回答を探し出すモデルを作成します。発展編では、BERTとTransformerを活用し、日本語のQAチャットボットの学習モデルを作成します。
79 . MicrosoftのDialoGPTでチャットアプリを開発するレシピ
Microsoft社が開発しているDialoGPTを活用したチャットアプリを開発します。
80 . GPT-3で自然対話するSlackボットを作るレシピ
SlackAPIとGASを組み合わせ、GPT-3の言語生成モデルを使って自由に対話できるSlackボットを作成します。
文章分類
81 . 日本語BERTを利用してZero-shotで文章分類するレシピ
教師データに存在しないラベルを予測する「Zero-shot Learning」という問題設定でBERTモデルを利用したテキスト分類を行います。
文章生成
82 . GPT-3でタイトルや要約から記事本文を自動生成するレシピ
文章生成モデルGPT-3のAPI機能を使って、長文の自動要約と日本語記事コンテンツ自動生成を行います。
83 . GPT-3のNLPアプリケーション開発を体験してみるレシピ
文章生成モデルGPT-3を用いて、NLPアプリケーションの開発を行います。
84 . 夏目漱石の「坊ちゃん」を学習させてマルコフ連鎖で新作を自動生成させるレシピ
マルコフ連鎖で文章生成するPythonライブラリMarkovifyを使って夏目漱石の「坊ちゃん」の新作を自動生成します。
85 . LeakGANを使った文書生成のレシピ
チャットボットやAIアシスタントが発話するシナリオ作成への応用を想定し、LeakGANを使って文章生成を行います。
コード変換
86 . TransCoderでコードを別の言語のコードに変換するレシピ
TransCoder技術を使い、プログラミング言語で書かれたソースコードを別の言語のコードに変換する方法を実装します。
キャプション生成
87 . PyTorchを活用し画像のキャプションを自動生成するレシピ
PyTorchによるオートエンコーダモデルを使って、画像キャプションを自動生成します。発展編では、画像の特徴量をTransformerに入力させ、AttentionとBeam Searchを利用してより高精度な画像キャプションを自動生成します。
文章要約
88 . BertSumを使った文書要約のレシピ
BERTを応用して文章要約を行うディープラーニングBertSumを実装します。
検索
89 .類似文章を検索するAPIを作成するレシピ
90 . 文書の「あいまい検索」機能をつくるレシピ
word2vecの発展系fasttextを使って、日本語文章の検索単語が完全に一致しなくても検索できる「あいまい検索」を実装します。
レコメンデーション
91 . scikit-surpriseを使った映画のレコメンデーションレシピ
ユーザーの嗜好情報からどの商品が気に入るか予測する協調フィルタリングの仕組みを用いて、scikit-surpriseを使った映画のレコメンデーションシステムを実装します。
択一問題
92 . 日本語の択一問題を解くレシピ
Microsoft社のAIチームから独立したrinna社がOSS化した日本語GPT-2・BERTの事前学習モデルを使い、日本語の択一問題を解くタスクを行います。
言語モデル精度向上
93 . 「より良い」機械学習モデルの構築方法を学べるレシピ
モデル性能の改善、処理速度の改善、メモリやCPU仕様リソースの削減といった、より良い自然言語処理の機械学習モデルを構築するためのノウハウを解説します。
音声
音声認識
94 . 音声処理ツールキットESPNetを用いて日本語音声認識を行うレシピ
PCマイクで録音した音声信号データを用いて、ESPNetを使い日本語の音声認識モデルのTransformer ASRを実装します。
文字起こし
95 . Zoom会議の録音データから音声認識で議事録を自動生成するレシピ
PCマイクから録音した音声ファイルデータをWatson APIの音声処理を用いて文字起こしし、議事録を自動生成します。
96 . Watson Speech to Textを活用した文字起こしAI開発のレシピ
音声データから文字起こしを行う仕組みを解説し、IBM CloudのWatson Speech to Textサービスを活用し、GUIベースで文字起こしを行います。
楽曲分類
97 . 楽曲のムードを深層学習で分類するレシピ
楽曲100曲のムード別に分類した音声データを学習し、音響的特徴量を使ってディープラーニングで楽曲を分類します。
楽曲生成
98 . 画像から音楽を生成するモデルを構築するレシピ
エンコーダーデコーダによる画像分類と言語生成のディープラーニングモデルを用いて、画像から音楽BGMを自動生成します。
波形異常検知
99 . TensorFlow Kerasで時系列データの異常検知を行うレシピ
TensorFlow Kerasを用いて再構成畳み込みオートエンコーダモデルを構築し、波形の時系列データに対する異常検知とOptunaを用いたモデル構造探索を行います。
音声対話
100 . 【GPT-3発展編】音声だけで会話するチャットボットを作るレシピ
GPT-3の言語生成モデルを応用し、文章入力を介さず音声のみで会話するボット開発を行います。
その他
AIセキュリティ
付録 . 【AIセキュリティ入門】Adversarial Examplesを理解しAIモデルを頑健にするレシピ
映像や音声などAIへの入力データに対して細工をすることによって、意図的にAIを誤認識させる攻撃手法とAIをより頑健にする手法を実践します。
最後に
Axrossは、エンジニアの"体系的な教育"と"現場の業務" のギャップ課題に着目し、「学んだが活用できない人を減らしたい」という想いで事業を立ち上げました。「AIやプログラミングを学ぶ」のが目的ではなく、「具体的な目的・テーマをもってプログラミングを学ぶ」、**「AIをつかって動くものを作りながら学ぶ」**ことができるのが特長です。
Axrossのレシピを通して、プログラムの意味を考えながら写経(コードを実際に書き写す行為)し、実際に動くものをつくりながら学ぶことで、新たな知識習得やスキルアップの一助になれれば幸いです。