AIで自動化を
A国立大学に入って2年目。情報系でもない我が校でもリモート授業が本格的に導入され、ITに疎い講師たちもいい加減アプリの使い方に戸惑うことはなくなってきた。
キャンパスへの登校可能日が月に10、8、5と徐々に減っていくにつれて同期との人間関係は希薄になり、浮いた時間はバイトのシフトに割り当てられ、授業に対する熱量も順調に冷め切っている。
将来のためにと無理に入った大学で受けたくもない講義を受け、内容は耳から入って耳を抜けていく日々を送っている。
最近は頭と体の疲労による寝坊が増えてきた。寝坊をごまかそうにも通学がないのだから遅延やらおばあさんが倒れてたやらの当たり障りのないことは言えない。
朝一番に来る出席確認というものが実に厄介だ。
通話アプリ自体は夜中からつないだままにしておけばアプリ上は出席しているていにはなるが、そんなことは職員らも把握済みで中に本当に人間がいるかの確認としてメッセージの送信を求めてくる。
授業開始5分以内に出席を入力できなかったばかりに欠席にされたコマはもはや足の指を使わなければ数えきれない。
そんなことを考えながら寝坊したコマの授業資料をスクロールしていると、なんてことのない広告の文字が目に入った。
「AIで自動化を」
最近の流行りなのかこの手の広告をよく目にするが、こんな陳腐な言葉がこれほどまでに脳に入り込んできたのはこれが初めてだった。
自動化。そうか、人間の苦手な単純作業など機械にやらせればいいのだ。
プログラミングとは全く無縁でいたわけではなく、一年生のときにきらきらと見えたIT業界にあこがれてPythonというプログラミング言語に挑戦したことがあったが、目的が定まっておらずいつしか疎遠になっていた。
一年経ち不純だが掲げられる目的もある今ならPythonとよりを戻せるかもしれない。
そう思い立った私はネットで授業用の通話アプリとPythonを連携させる方法を調べてみた。嫌になるほどAPIという言葉で検索し、自分しか入っていない通話のセッションを開きを繰り返し、私の書いたプログラムはようやく望み通りの形で動いてくれた。
そして迎えた月曜日の朝。
「さて、本番運用だ」とプログラマの猿真似を脳内に浮かべながら、私はプログラムを起動させ授業のセッションに突入する。
私の書いたプログラムは思い通り授業開始から1分30秒後に「出席」というメッセージを送信した。
これは人類にとっては小さな一歩だが私にとっては大きな一歩だった。
それからの5日間は眠気が襲ってくる深夜1時でも何の憂いもなく起きていられる素晴らしいものとなった。
週末の土曜日。バイトが終わり、講義の内容を振り返っているとあることに気が付いた。
統計学と簿記の講義だけ欠席になっていたのだ。
プログラムはちゃんと漏らさず授業日に実行するよう設定しておいたはずだ。
なのになぜ――。手を口元にあて背を前に傾けながら原因を考える。
思い出した。あの二つの授業だけ出席確認の際に毎回何の脈絡もない異なるメッセージを送らせていたのだ。
これが外れ値か、プログラムが動く喜びから完全に忘れていた。
夜中悠々自適にスマホのパズルゲームで遊んでいた自分を殴りたくなった。
しかし、こんなことで日々をおびえながら過ごしたくはない。
今の私ならこんなこともプログラムの力で解決できる気がする。
根拠のない自信を抱えながら、私は先週のようにネットで情報を漁り出した。
そこで目についたのが音声認識というものだった。
「アレクサ、電気をつけて」などというときに使われる、人間が喋った言葉を音データとしてコンピュータ側に渡し、それを解析させて元の言葉を取得するというものだ。
幸い最近は正確性の高い音声認識APIが無料で使える。
音声認識の実装作業は通話アプリのAPIを実装したときよりも早く終わった。
正規表現なる文章解析機能を用いて文中からどれが出席のメッセージとなるのかを解析してその通りに返すよう調整したのだ。
先週よりも格段にプログラミングの腕が上がってきている気がする。
もっとも、プログラムを書く力が上達したのではなく、実装したい方法を調べる力が上がったというほうが正確ではあるが、とにかく上達した。
それから一か月がたった。
プログラムは95%の正確率で毎日私の代わりに出席確認をしてくれる。
簿記の講師が「今日の出席確認には貸方借方の借方でお願いします」と言ったとき、「貸方借方の借方」まで送ってしまうなどの些細なトラブルはあったものの、出席確認として問題はなかった。
朝起きることに緊張感がなくなってくるとその後のコマでも緊張感が薄れてくる。
平日のルーチンは、グループディスカッションのない日は布団の中で朝夕コンピュータに授業を受けさせ、バイト終わりにプリントを確認するというものに変化してきた。
そんな不健全なことを続けている中で、当然と言えば当然なある困難に直面した。
プリントだけでは何のことかわからない授業が増えてきたのだ。
応急処置として講師の発言を音声認識ですべて文字に起こすということも試してみたが、プリントの10倍以上文章があり無駄な会話なども混じっている文章をバイト終わりの頭で読むのは苦痛でしかない。
発言の中から大切なところだけを太字で表示することはできないだろうか。
これまでの私のプログラミング知識ではどうにもなりそうにない壁にぶち当たった。
流石にこればかりはどうにもなるまい。
最終的に発言が重要かそうでないかを決めるのは人間なのだ。
水曜日のバイト終わり。私は夜のバスに揺られながらぼんやりとスマホのパズルゲームを遊んでいた。
ゲームのスコアランキングには常連の名前が連なっており、当然私のユーザーネームなどが表示される隙間はなかった。
どうすればランキングに食い込めるのか調べているとある記事にたどり着いた。
「機械学習で盤面に得点を付けて最善手を求めるアルゴリズム」――。
言葉はよくわからないが、プログラミングにかかわることなら他人事ではないと思い記事を読みすすめていく。
盤面に点数をつける方式は専門用語でスコアリングと呼ばれ、オセロや将棋などで敵のコンピュータが指定の強さによってどこにコマを置くか決める際にも用いられるらしい。
過去に蓄積されたスコアのパターンを詰め込むことで、コンピュータが別のパターンでもその考え方を流用し最善手を求めてくれるようだ。
これはひょっとすると使えるかもしれない。
足早に家に帰ると、私は発言記録を行ごとに配列化しそれぞれの行に重要度を10段階でスコアリングする作業を始めた。PCに残っている発言記録の分だけ作業を繰り返し、気が付けば次の日の朝になっていた。眠気に耐えかねた私は出席確認をプログラムに任せ、発言記録を全文残すように設定してから布団に入った。
夕方目を覚ました私は、さっそく今日眠っている間に取得した発言履歴を各行ごとにモデル化し、スコアリングしたデータのパターンを元に結果を出力してみることにした。
通常機械学習で正確な結果を出すにはより多くのデータが必要となるが、私が求めているのはそれほど精密なものではないので問題はなかった。あとはプリントの流し読みで補完すればいいからだ。
そうして求まった結果は私の理想通りの結果となった。
無駄な会話の行はきちんと点数が低くつけられており、キーワードとなる語句を含む行ははっきりと高得点をたたき出していた。
これこそ私の求めた「AIで自動化を」だ。
お手製の出席プログラムを運用しはじめてから早3か月、一学期を無事終了した。
テストはどれも及第点ぎりぎりだったが、何とか単位だけは守り抜くことができた。
私はとりあえず結果に満足し、いつもの通りバイト先に向かってスタッフ用の入り口から職場に入った。
ロッカールームで着替えていると8月のシフト希望のカレンダーが目に入った。
従業員の8割が記入済みだろうが、それでも空白が目立つ。
うすうす勘づいていたが、どうも最近私がシフトを入れすぎたせいで他の従業員から「こいつに任せておけばいいや」という雰囲気が生まれているような気がする。
頼られるのはいいことだが、私だって夏休みぐらいは休んでおきたい。
脳内で愚痴を吐いたとき、ある妙案を思いついた。
この出席プログラムをより汎用的なものに作り替えれば様々な場面で大きな需要があるのではないか。
私は親が倒れたと嘘をつきバイトを早退して足早に家路についた。
家について早々PCを開き、動けばいいと言わんばかりのプログラムを柔軟で自由度の高いものに書き換え、多くの端末で動くようパッケージという魔法のようなプログラムを検索しながら書き足していく。
バイト先に退職届をたたきつけ、無断欠勤を繰り返しながらようやく完成したプログラムを多くのアプリケーション販売サイトへ掲載した。
これはいけるという直感のとおり、廉価で売り出された私のプログラムは飛ぶように売れ、今までの月収の5倍もの金額をたった一週間で稼ぐことができた。
こうなればわざわざバイト先にとどまり続ける必要はない。私は引継ぎなどの業務を一切行わないまま職場から撤退した。
夏休みも明け、まだ休み感覚も抜けない10月中旬。
二学期も始まったばかりだが、私のもとには未読のまま放置してあるプログラムが生成した要約文書が50件ほどたまっていた。
未読のプリントもたまりにたまり、気が付けばまともに講義に参加しているほうが珍しいざまになっていた。
背伸びして入った大学ということもあり講義の内容が難解で嫌になったというのもあるが、なにより勤勉に努めずともプログラムの収益が並のフルタイムのパート程度に入ってくるという点が大きい。つながることのない余裕と焦燥感が私を支配している。
焦りから無作為に講義資料を画面に映す。
大学のキャリアセンターのものだった。
12月中旬。大手企業への就職を目指し何社もエントリーシートを送り続け、11社目にしてようやく1社書類選考を通過することができた。
情けない話、進級も危うい私にできることは早々にスタートダッシュを切り、内々定だけでもつかんで退学の大義を作っておくことしかない。
鏡の前で15分格闘したネクタイを首に下げ、クローゼットから引っ張り出したリクルートスーツのワイシャツとジャケットでWebの選考面接に挑んだ。
「A国立大学から来ましたNと申します。本日はよろしくお願いします」
「A国立大学から来ましたNさん、本日はよろしくお願いいたします」