Go Forward

名物研究室・授業紹介

研究室紹介

知性をつくる、使う、楽しむ

知的情報処理システム研究室 【横山大作】



 乗り換え案内、買い物推薦、ゲームの相手…。私たちの身の回りにはどこにでも「かしこい」機械があふれています。これらは、実は、少しでも良い答えを猛烈な速さで探す、という単純な方法でつくられています。我々の研究室では、このような知性を感じさせるシステムをつくるための方法(アルゴリズム)や、現在のコンピュータ上で現実的な速度で動くシステムをつくるためのさまざまな手法(実装)について研究しています。人間より上手にゲームをプレイしたり、人間が楽しめるマップを自動生成したりといったゲーム情報学、人や車の動きに関するビッグデータを利用した解析、シミュレーションなどの応用分野を中心に、人の役に立つ、人が楽しめる知性をつくることを目指して取り組んでいます。

脳は自然のコンピュータ

脳知能学研究室  【向井秀夫】





 自然の作ったコンピュータの最も身近な例が脳です。この研究室では自然に学びモデルを作ることを通じ社会に役立てることを目指しています。研究の例を挙げると、何かを動かそうと考えた時に出る脳波を記録し、メディアなどでよく耳にする機械学習(人工知能)で解析し、3Dプリンタで作成した義手を動かすことや、やる気のメカニズムをまねた強化学習で自動運転の仕組みをつくり、さらには実際に小規模な機体を作って学習・動作させる研究などがあります。各人の対象はさまざまですが、しっかりとした情報や数理の方法を習得して先端的な研究を行うことを共通し心がけています。自然の計算のひとつの量子計算(量子コンピュータ)にも関心をもって研究を始めています。

Meiji Now ようこそ研究室へ

在学生が研究室を紹介!

授業紹介

最適化と人工知能の架け橋

最適化論  【飯塚秀明】



人工知能(AI)の急速な発展に伴い、機械学習、深層学習といった言葉をよく耳にします。この「学習」とは、いったい何を指すのでしょうか。「学習」とは、望ましい結果が得られるように機械に関するネットワークやパラメータを調整する作業といえます。もう少し数理的に表現すると、正解データとネットワークからの出力データとの誤差を最小化(最適化)するようにパラメータを調整することです。本授業では、このような調整を高速に行うことができる最適化アルゴリズムとその特性について、座学とプログラミング言語Python を用いた実演の両側面から紹介します。この授業を通して習得できる知識は、AI に関心をもつみなさんにとって大いに役立つものと確信しています。

手と頭を動かして学ぶ機会

コンピュータサイエンス実習  【宮本龍介】



 セキュリティ、人工知能、画像処理、コンピュータグラフィクス、ロボットのプログラミングなどマルチメディア情報処理や高度なソフトウェア技術に関する実習を行います。1・2年次で学んだことを活用し、個人や2~3人のグループで自分たちでプログラムをつくり、先端的な内容の課題に挑戦します。少人数のグループに分かれて行われるので、教員や上級生であるTA(ティーチングアシスタント)との距離も近く、わからないところなどが気軽に質問できる雰囲気です。学生が楽しみながら高度なプログラミング技術を身につけられることが大きな特長です。実習に自主的に取り組む姿勢は、研究室に配属されて卒業研究や大学院での研究を行うことにもつながり非常に大切です。

理論を学ぶ際には、それが社会の中でどう役立っているのかを意識することが大切

情報処理1  【飯塚秀明】





 「情報処理1」は情報科学の基礎とコンピュータ処理に役立つ基礎数学を習得するための授業という位置づけにあります。
 普段私たちは、コンピュータを使って当たり前のように画像処理やデータ解析などを行っていますが、そうした情報処理がコンピュータ内部でどのような仕組みで行われているのかを、理論的に学んでいくのがこの授業です。浮動小数点、確率分布、極限定理、フーリエ級数など、高校では学んでこなかった分野が中心となるため、難解に感じてとまどう人が多いかもしれません。しかし、コンピュータによる情報処理やプログラミングを専門的に学ぶうえでは、どれも欠かすことのできない理論です。
 講義のなかでは、単に理論を解説するだけでなく、数学の理論がコンピュータにどう応用され、実社会のなかでどんな役にたっているかも語られるため、数学があまり得意でない人も興味を持って学ぶことができるはずです。理論を学ぶことでコンピュータへの理解はどんどん深まっていきます。たとえば確率や統計を学ぶと、それが人工知能の基礎となっていることが分かってきますし、フーリエ級数を学ぶと、コンピュータの信号処理の仕組みが理解できるようになります。また、数の表現を学ぶことにより、コンピュータのハードウェアがどのように動作しているのかも分かってきます。

プログラミングの基礎を学ぶ

プログラム実習1  【飯塚秀明】



 プログラムづくりは情報科学に関する勉強の一番の基礎といってよいでしょう。プログラムをつくってみることによって、コンピュータとはどんなものか、情報科学の課題にはどんなものがあるかなど、さまざまなことを体得できます。この実習では、コンピュータから提示される課題を次々に解く(写真参照)という形で、プログラムづくりの練習をします。個別にコンピュータに向き合う形式なので、学生それぞれが自分のペースで勉強を進めることができます。もちろん、教師やTAが学生の間を回って、難しい点についてていねいに指導します。言語はCを使いますが、言語の文法の細部よりもプログラムづくりの基本的な考え方に力点を置いています。高校時代にプログラムをつくった経験がなくても心配する必要はありません。

先進的な研究を通してサイバーセキュリティに関する技術力を習得

卒業研究1・2  【齋藤孝道】
 東京オリンピックの開催に向けて、サイバーセキュリティに関する技術力を習得することは一層重要になってきます。本研究室ではWebのセキュリティや、ウィルスの侵入防御の仕組みに関する先進的な研究を通してさまざまな技術力の習得を目指します。さらに独自に開発したサイバーレンジという仮想空間上の演習システムを用いた実践的なセキュリティトレーニングも行っています。

画像処理と機械学習に関する実践的な技術を身につける

画像処理とパターン認識  【宮本龍介】
 近年、自律移動を行うロボットや自動車の「目」としての機能に代表される、機械学習に基づく画像処理手法の重要性が劇的に高まっています。本授業では、座学での理論の学習に加えて、ライブラリを極力用いずに顔検出プログラムを作成することにより、画像処理および、機械学習に関する実践的な技術を身につけることを目指します。
理工学部