どうも(´_ゝ`)ノ岡本です。
人工知能(AI)を作っています。
僕は元来プログラミングで生計を立ててきましたが、最近デイリーポータルZ様やSPOT様でライターとしてのお仕事もさせて頂いています。ライターのお仕事は本当に楽しいです。ライター関連では良くしてくださる方々がたくさんいます。
そんな状況で、自分の足元を掘り崩す行為の様な気もしますが、人工知能(AI)でライターとしての仕事を代替する方法を探っています。
先日、デイリーポータル様のお正月飾りの記事が校了になった後、SPOT様の記事も一時的に待ちになり、ポッカリと時間が空いてしまい、その時にかねてからの課題に取り組み始めました。
つまり「どうすればもっと良い文章が書けるようになるのか」という事です。ライター界隈では、面白さを纏って生まれたかの様な人たちがたくさんいます。僕なんか逆立ちしたって勝てやしません。
そこで今流行りの人工知能にやってもらおうと思い至るのでした。
そもそも人工知能(AI)って何ぞや?!
まずそこからです。
そもそも人工知能とは、
「コンピュータを使って、人間の知能のはたらきを人工的に実現する」
と云う事らしいです。
しかし、そもそも「人間の知能」でさえ、定義が曖昧ですので、人工知能の定義もかなり曖昧なようです。
概ね、こういう定義にして差し支え無いかなと思いました。
「大量のデータを解析し、法則を見つけ、その法則に沿って新しいアウトプットをする」
という事では、いかがでしょうか。
という事であれば、僕は過去、人工知能っぽいもの作ろうとしていました。昔は機械学習とか集合知って言っていました。
そして、人工知能にもいくつもの手法があります。今、世間で「人工知能」と呼ばれているものは、概ねニューラルネットワークという手法を指している様な気がします。(先日ちょっとしか見ていませんが、NHKのAI特集でAIとして紹介されていたものはニューラルネットワークっぽかったです)
ニューラルネットーワークとは、人間の脳のニューロン(神経細胞)の働きをコンピュータ上に簡易的に再現した手法です。その手法の有効性は昨今の人工知能の飛躍を見れば、今更述べる必要は無いでしょう。
しかし、このニューラルネットワークの手法には問題があって、どの様にその判断に至ったか、その過程が見えないのです。
脳細胞を電気信号が駆け巡っていても、どのような判断をしているかなんて、ハタからは分かりませんが、それと同じ様な事が人工知能上にも起こります。
将棋や囲碁のAIが、「まるで間違えたかのような一手」を指した時、実は後々になって「勝利のための正しい一手」だと分かることもあれば、「本当に間違えていた一手」だった場合もありえます。それを人間側が把握することが困難なのです。
「よく分からないけれど正しい判断を下す」事が、人間が人工知能に対して抱く、そこはかとない不安感の正体なのかなと。しかしよく分からないのは人間の脳細胞に似せた手法のせいなのです。
ただ、今回の人工知能ライターは、人間ライターの判断の手助けをする人工知能を目指し、ニューラルネットワークは使いません。(今の所は。)
少し以前に「アキネーター」というゲームが流行りました。誰かキャラクターを思い浮かべて、幾つかの質問に答えると、キャラクターが誰なのか非常に高い精度で当てるというものです。手法としてはそれに近いものだと思います。この手法は判断の過程を把握しやすいのです。
大量のデータを解析する
人工知能を作ろうと思い至り、最初に頭を悩ませる問題は「大量のデータ」です。
世間では「アルファGO」や「ポナンザ」が人間を打ち負かしていますが(僕の技術力ではそこまで高度な事は出来ませんが)、それらのAIが強くなりえたのは、棋譜という大量のデータが揃っていたからと言っても過言ではないでしょう。
そこで今回は、僕の心の棋譜と言っても過言ではない、デイリーポータルZ様の記事をお借りしてきました。
もっとも、記事を全て取得するとなると、データが膨大過ぎるので、この度はタイトルだけを取得し、併せて、記事に関するFacebookの「いいね」の数も取得します。
記事からタイトルと「いいね」の数をコピペしても良いのですが、膨大な時間がかかりますので、僕のお得意のクローラーを作成しました。
クローラーとは、ボットとも呼ばれ、インターネット上から必要な情報を巡回して取得してくるプログラムです。Googleもインターネット上を巡回して情報を集め、検索結果に表示しています。
そのクローラーでデイリー様の過去2年くらいの記事タイトルを取得しました。(なぜ2年か理由は後述します)
言葉の最小単位に分割する
続いて、取得したタイトルを言葉の最小単位に分割します。
たとえば、
僕は猫が好きです。
を言葉の最小単位に分割すれば
僕/は/猫/が/好き/です/。
となります。
「好き」を「好/き」と分割すると、「き」だけでは意味が通らなくなりますので、「好き」はこれ以上分割することが出来ません。
英語の場合ですと、単語毎にスペースで区切られているので簡単ですが、日本語の場合は難しく、
けものはいてものけものはいない
これなんかだと人間でも一瞬での解読は難しいです。言葉の最小単位分割だけでも分厚い本が出版されるくらい難しい問題です。
今回は有り物のエンジンを使用し、解析を行いました。
Facebookでウケる記事、ウケない記事とは
最小単位に分割したデイリーポータルZ様のタイトルを人工知能に学習させ、法則を見つけさせます。
AIの手法がどうかとかという話は面白くないので割愛します。というかかなり泥臭い作業をしました。まあ、まだ実験は始まったばかりです。
発表の前に注意事項を言いますと、
人工知能(AI)は空気が読めません。
相手を慮るという事もできず、事実のまま表示します。
あと今回解析に使ったのはFacebookの「いいね」の数だけで、Twitterのリツイート数は考慮外です。
いいねが伸びなくても、Twitterでめちゃくちゃバズって(拡散して)いる記事がたくさんありますが、それは考慮されていません。
どういう記事が「いいね」が多いか。人工知能さんの答えをどうぞ↓↓
- タイトルが「動詞」で始まるとウケない(ただし「めくるめく」「行く」「撮る」「釣る」「育つ」「ふりかけ」はその限りではない)
- タイトルがサ変接続名詞(「~する」を繋げると動詞になる名詞)のうち、「回転」「自給自足」「出勤」「卒業」「絶交」「密着」「おすすめ」「移動」「爆発」以外で始まるとウケない。
- オカモトラボ(僕)の記事はウケない。
人間では気付かない様な法則に気付くのが人工知能の凄い所かもしれませんが、動詞やサ変接続名詞で始まるとウケにくいっていうのはよく分かりませんね。サンプルが少ないので確定的とはいえませんが、つまり形容詞や名詞で始まれば良いと言うことでしょう。
読者は一瞬しかタイトルを読まないので、イメージしやすい形容詞か名詞が好まれるのかな。
あと「ふりかけ」を動詞判定しているのはご愛嬌です。
あと2つ目に関しては、例えば、「録画予約」で始まったタイトルは、「録画/予約」と分ける事ができ、「~する」を付けると「録画する」という動詞に出来るので、ウケない部類ということです。動詞と、動詞の様な働きをする名詞で始まるタイトルは「いいね」が少ないというのは面白い傾向です。
3つ目は薄々そんな気がしていました。
これ以外にも、とてもじゃないけど、ここには書けない様な結論が出てきちゃいましたので消しました。人工知能はそのへん、全く容赦がありません。
上記の結論についても、具体例を挙げることは憚られるので、正しいか各自確認ください。
しかし結論を出すにはちょっとデータが少なすぎたかも知れません。
実は2年以上古いデータを取得する前に間違えてクローラーを止めちゃいまして、ちょっと修復に時間がかかりそうなのでこんな中途半端な感じになりました。でもなんとなく雰囲気が伝われば良いかなと。
デイリーポータルZ様以外の媒体や、人気のライターさんも調べてみたらどうなるかなとか、タイトル以外の記事も面白い文体には面白さの秘密があるかもしれませんね。
現状としてはこんな感じです。結構出来てるっぽく書いてますが、それぞれの機能がまだ不完全で、誤魔化しています。
そして、たまたま今日、僕が大変尊敬する方から人工知能で記事を書くという事について、お問合せを頂いたりもしたので、モチベーション上げてます。
多分つづきます。