Interview/

Park Byeongseon

自己紹介をお願いします
2019年の6月に新卒採用で入社しましたPark Byeongseonです。京都にあるLINEの開発拠点LINE KYOTOで働いています。

就職活動中にLINE KYOTOがオープンすることを聞いて、当時募集を行っていた、エンジニア学生向け長期インターンに応募したことがLINEに入社したキッカケになります。インターンシップでは、音声認識技術の開発を担うチームに所属して、自然言語処理に関する業務に携わりました。途中でアルバイトに切り替え、入社直前まで関わらせていただきました。

何よりもインターンシップ生やアルバイトだったのにも関わらず、サービスに深く関わる仕事に携わらせてもらったことに驚きましたね。当時は大学に通いながら働いていたので、スケジュール調整が容易なタスクに限られましたが、重要度の高い仕事に関わり、貴重な業務が体験できたことがとても嬉しかったです。正直なところ、LINEでのアルバイトをする前に参加した、他の企業でのインターンやアルバイトは業務が限定的だったので、それまでとまったく違う体験ができたことがすごく印象深かったです。当時のマネージャーが本採用のプロセスを勧めてくれた時に、すぐに受けたいと思い入社を決めました。
業務内容や具体的な流れを教えて下さい
入社後は、LINEの全サービスのデータの分析・研究・応用のための専門的な開発組織「Data Labs」の中で、音声合成開発に取り組むVoiceチームに所属することになりました。担当している業務は、音声合成における言語処理です。音声合成技術とはテキストを入力し、入力されたテキストを人間の音声に変換する技術になります。僕はその中でも入力されたテキストを音声に変換するために必要な情報を抽出するための業務に関わっています。いくつか選択肢はあったのですが、ちょうど僕が入社するタイミングで、Voiceチームが立ち上がる動きがあったこともあって、アサインされました。チームのタスクを定めていくフェーズから参加できていることもあって、今現在も担当している業務はチームメンバーと一緒に、必要なタスクとして選定するところから関わることができていて、やりがいを感じやすいですね。

Voiceチームで開発している言語処理器のモジュールを例を通じて、簡単に説明します。

まずテキストの正規化です。ひらがな・カタカナ・漢字・数字・英字など、様々な表記が入れ混じり解析が困難なテキストを解析しやすい状態に変換する処理に取り組んでいます。日本語は、その表現の中に交じる要素も多いのでかなり難しくやりがいのある業務です。極端な例ですが、「やっほー★ー★ー★ー★ー★ー!!!!12:30だよおおお」というテキストを「やっほー!12時30分だよお」という状態にしています。

次に、読み推定です。表記=読みとなるひらがな・カタカナ以外の文字について、発音の予測をしています。同じ漢字や数字でもシーンや前後の文脈によって、読み方が全く異なる文字を正しく読むことを目指します。「12時30分」という入力を「ジューニジサンジュップン」と出力する処理です。

そして、アクセント推定。与えられた文章について、日本語における自然な抑揚・アクセントを予測する処理です。「12時30分 / ジューニジサンジュップン」という入力に対して、「12時30分 / ジューニ*ジサンジュ*ップン」(* : アクセントがある場所)と音として伝わりやすい抑揚を再現するための処理になります。

簡単にですが、なんとなくイメージを持っていただけたのではないでしょうか。次に具体的な業務内容を紹介したいと思います。
僕が所属するチームはR&D寄りの開発が行われるため、短いサイクルの業務はあまり行われません。サービスの既存手法の問題点を把握し、新規手法を調査し、実装→評価→検討を繰り返し→サービスへの適用を行っています。僕が入社してから1年間で取り組んだ日本語アクセント統計的推定モデルの開発の事例を通じて具体的に説明します。

まず「サービスの既存手法の問題点の把握する」ことです。 サービスで使われている音声合成システムは様々な技術や機能によって実現されており、一部は古い手法のまま残されていたりします。そういったところを事前にリサーチし、どう改善すべきか考案します。実際には、既存のアクセントの推定手法は、人によって作られた規則によって行われていたのですが、規則だけでは対応できないアクセントの変化ケースが複数存在するため、これを機械学習などの統計的手法によって改善できないかと考えました。

次に、「新規手法の調査」、 考案したアイデアを実現するために、論文やサービス例から類似手法をサーベイしてより具体的な案を考えていきます。このプロジェクトでは、アクセント推定を系列ラベリング問題に落とし込み、近年の系列ラベリングに関する手法(e.g., CRF, LSTM)を調査し、どの手法を適用するか考えました。

続いて、実装→評価→検討を繰り返すフェーズです。ここも一つずつ紹介します。

調査にサーベイによって固めた案の「実装」では、CRFやLSTMに基づくアクセント推定手法を実装しました。入力された文章について、品詞・読み・読みの長さなどの単語単位の特徴情報で構成された系列に変換し、モデルが各単語がどんなアクセントになるかを予測しました。開発言語は Pythonを使用して、まずは既存研究を再現し、より精度を向上させるために特徴情報の構成を組み替えたり、学習モデルの構成を変えるといった工夫を加えていきました。

実装した手法がどれくらいの効果が得られるか、正しく動作しているか確認する「評価」。ここでは、自社で持つコーパスからアクセント推定モデルの精度を計測し、以前の手法とどれくらい差があるか確認していきました。

そして、実装したモデルと評価結果をもとに、チームメンバーとサービスに適用するに当たって問題ないか「検討」を行います。議論の結果によって改善が必要な場合は、実装と評価に戻って繰り返すこともあります。今回のケースでは、CRFとLSTMのどちらがサービスに適しているか、バグはないかなどをチームメンバーと確認・議論しました。

いよいよ「サービスへの適用」です。仕様が確定し、コードの整備とサービスシステム本体への適用のための準備を進め、リリースします。

このような流れを、比較的中長期スパンで取り組むのが業務の内容になります。同時に複数のプロジェクトを持つこともあって、例として取り上げたアクセント推定以外にも、テキストの正規化や読み推定などの自然言語処理に関する業務を担当してきました。他にも、チームメンバーとの共同タスクとして、形態素解析の性能改善や辞書の自動生成などの業務も一緒に進めています。また、最近の研究動向などを把握しつつ、次の研究テーマについて検討と実験を進めており、常に新しいタスクを模索しています。
おもしろいことや難しいことなど、働く中でこれまでに得た感触を教えて下さい
おもしろい部分は、有名なトップカンファレンスにも頻繁に参加・投稿する最先端のプレイヤーに囲まれ仕事ができる点です。先輩たちの成果を見たり聞いたりしていると、自分も追いつくため頑張ろうと思えます。これは何よりも大事な要素だと思います。あと、経歴よりも個々の能力や自主性に合わせて仕事を進められること。ただただ仕事をこなすという意識はなくて、自分がやりたいことを尊重して開発やスケジュール管理まで自分で処理させてもらえているので、とても嬉しくやりがいを感じています。ただ、まだまだ自分の能力が足りないことが課題ですね。周りの先輩は素晴らしいのですが、負けないように、そしてチームに貢献して楽しい研究開発ができればと思っています。

あと、研究室にいた頃より、もっと周りを見てモノゴトを進めるようになっていると思います。自分が作りたいものを好きなスケジュールで作るだけではなく、チームで議論し助け合って進めることが成果をより大きくしてくれると痛感しています。僕が見てきた限りでは、特定のパーソナリティが要求されるわけではなく、それぞれのパーソナリティが尊重される会社という印象が強いです。だからこそ、気楽にみんなと接していけば喜んで受け入れてくれると思います。もし人と議論することに抵抗がないなら、より楽しい会社だと思いますね。

スキルという点では、自然言語処理に関する知識とそれらに関連する開発能力や経験は一定レベルが求められると思います。Voiceチームだけでも、全体となるとスキルセットの範囲が広すぎるので、僕は担当分野だけを特に注力して絞っています。あとは機械学習に関する知識や経験があれば、もっといろんなことができて楽しいのかなと。

学生時代には、関連分野の研究と論文の執筆にしっかり取り組んでおくと良いですね。先ほど説明した業務フローは、多くの大学や研究所で行われている研究とさほど変わらないもので、これらの流れを大学や大学院で経験していれば、業務でも経験が活きてくると思います。
LINEに入社して良かったと感じることはなんですか
繰り返す部分もありますが、所属部署や開発組織全体の雰囲気・環境、周囲のサポートは十分満足しています。常に周りから刺激をもらえること、もっといろんなチャレンジをしたいと思えること、これらは当たり前に思える部分かもしれませんが、とても大事なポイントだと思っています。社員同士の距離も近く、気楽に話し合えますし、同じような志のある人と働くことは、本当に楽しいですね。

これは、自分のキャリアにおける成長やステップアップへの想いにもつながると思っています。会社の中はもちろん、社外でも幅広く活躍しているチームや先輩を見て、自分が目指したい次のステップがより具体的にイメージできるようになりました。
最後にメッセージを
僕が何よりもLINEで嬉しく感じることは「刺激を受けられること」です。

業界でも特に優秀な方々が集まって、そこに自分も参加できるということは中々ない経験で、エンジニアにとって嬉しいことだと思います。仕事をしていて、まったくストレスを感じないことは難しいですが、それをはるかに上回るやりがいを感じられるというのは、とても素敵なことだとも思います。僕は自分が学んで成長している実感を感じられるからこそ、それが実現できているのではないかと思います。みなさんにもぜひ一緒に経験して欲しいです!