Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
遺伝的アルゴリズム
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
株式会社Curious Vehicle
March 07, 2025
19
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
遺伝的アルゴリズム
株式会社Curious Vehicle
March 07, 2025
More Decks by 株式会社Curious Vehicle
See All by 株式会社Curious Vehicle
AI Agent Harness 入門
curicle
0
6
クネビンフレームワークで考える最初の一歩
curicle
0
6
AIガバナンス
curicle
0
7
PQCが変える暗号の世界
curicle
0
49
最近流行ってるClaudeについて
curicle
0
17
ElasticsearchのHA構成について
curicle
0
27
機械学習で絶対音感になりたかった
curicle
0
20
BQにおけるSQLアンチパターンとslot消費削減策
curicle
0
35
VibeKanbanについて
curicle
0
16
Featured
See All Featured
The untapped power of vector embeddings
frankvandijk
2
1.9k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
480
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
The Curious Case for Waylosing
cassininazir
1
570
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
930
Agile that works and the tools we love
rasmusluckow
331
22k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
220
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.5k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3.1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Faster Mobile Websites
deanohume
310
32k
Transcript
遺伝的アルゴリズム
目次 1. 統計処理から考えるAIについて 2. AI的なアルゴリズムの種類について 3. 遺伝的アルゴリズム
4. デモ 5. まとめ
統計処理から考える AIについて
AIと統計処理について考える AIについて ▪ AI(人工知能)の定義とは
▪ 統計学の定義についても コンピュータなどの機械が人間の知能が必要と考えられてる活動を 実現するための能力 統計学は、経験的に得られたバラツキのあるデータから、数値上の性質や規則 性あるいは不規則性を見いだす学問
AIと統計処理について考える AIと統計処理 ▪ これまでは統計アルゴリズムを使い アソシエーション分析 からお勧めの商品の選出などを行ってきました
▪ AIと統計は言葉が違いますがバラツキのあるデータから結果 を求めるという 基本的な内容は同じです AIは統計学の中の 学習するという意味が強い1部でしかなく 言葉は違いますが広義では統計学となります
結局AIといっても 今までと アルゴリズムが 変わるだけで同じこと
AI的なアルゴリズムの 種類について
AIアルゴリズムについて AIアルゴリズムについて ▪ ここでは学習型の統計アルゴリズムをBIアルゴリズムとして います ▪ 各学習機能については以下のようなものがあります
ニュートラルネットワーク 遺伝的アルゴリズム ベイズ法
遺伝的アルゴリズム について
遺伝的アルゴリズム 遺伝的アルゴリズム概要 ▪ 生物の進化は世代交代を繰り返すごとに染色体の情報をクロ スオーバーし、環境などに適応するよう常に進化します ▪ この動きをアルゴリズムとして表現したものが遺伝的アルゴ
リズムとなります 親A A1 A2 A3 A4 A5 親B B1 B2 B3 B4 B5 クロスオーバー! 子 A1 B2 A3 B4 A5 突然変異!! X2 X5 ▪ 突然変異は、自然界が新しいものを試す手法です 改良が有用であれば以降の世代にも引き継がれていきます
進化の過程 遺伝的アルゴリズムの進化 ▪ 遺伝的アルゴリズムを実装する作業は以下の4段階に分かれま す
第1世代 適正評価 選択 進化 すべての固体に初期特性を与えま す 固体のメンバーのもっとも成功した 固体を評価します 次の世代を作成するための特定 の固体の選定を行います 新しい適応性に優れた世代を生み 出します 進化を 繰り返す
デモ
メモ① int main(void){ // ### 第1世代生成 ### m_ga= new MyGA(POPULATION,
GENOME_LENGTH, ELITE_RATE, MUTATION_RATE, CROSSOVER_RATE); evaluation(); cout << endl <<"GENERATION " << 0 << endl; m_ga->display_ave_max_min_fitness(); m_ga->display_all_genomes(); for(unsigned int generation = 1 ; generation < MAX_GENERATION ; generation++){ evaluation(); // ### 適正評価 ### m_ga->elite_preserve(); m_ga->roullett_selection(); // ### 選択 ### m_ga->onepoint_crossover(); // ### 進化 ### m_ga->all_mutation(); // 突然変異 m_ga->elite_placeback(); evaluation(); // ### 適正評価 ### if(generation %DISPLAY_FRAME == 0){ // 表示 cout << endl <<"GENERATION " << generation << endl; m_ga->display_ave_max_min_fitness(); m_ga->display_all_genomes(); } } }
メモ① 遺伝子をセットしたりゲットしたりする virtual void get_genome(const int n, vector &
g); virtual void set_genome(const int n, const vector & g); virtual double get_fitness(const int n); virtual void set_fitness(const int n, const double r); virtual double get_average_fitness(); virtual double get_maximum_fitness(); virtual double get_minimum_fitness(); エリート保存、エリート戻し、ルーレット戦略 virtual void elite_preserve(); virtual void elite_placeback(); virtual void roullett_selection();
メモ② 突然変異、一点交叉 virtual void all_mutation(); virtual void onepoint_crossover();
ソート(昇順、降順) virtual void sort_individuals_by_fitness_descending_order(); virtual void sort_individuals_by_fitness_ascending_order(); 表示用ツール virtual void display_genome(const int n); virtual void display_all_genomes(); virtual void display_ave_max_min_fitness(); virtual void display_elites();
組み込みと今までの 知見を合わせると AIはやりがいのある カテゴリかなと
リコメンドなどは別のアルゴリズム がもちろん適しているでしょうが • 問題の要素の予測が難しい場合 • 個々のユーザに適用させたい場 合 有効なアルゴリズムで
す
ありがとう ございました!!