Kaggle 사이트 소개

원하는 Competition은 설치 후

kaggle competitions download -c feedback-prize-2021
 
다음과 같은 명령어로 다운로드하여 데이터를 얻을수 있다.

데이터들의 설명을 확인 가능하다. Column등 데이터 타입들에 대해 확인가능하다.

 

 

Posted by MIDDLE
,

1일차 순서 진행 

파이썬 다양한 Library 소개

 

Numpy 패키지

Numpy 는 파이썬에서 가장 많이 쓰는 수치 계산 라이브러리 벡터와 행렬 등 수학적인 데이터 구조를 표현하고, 연산하고 기본적인 효율적 구현되어있다. 우리가 사용하는 대부분의 패키지가 numpy에 의존함.

 

사용방법

 

import numpy as np

matrix_a = np.asarray([[4, 5, 2],
                       [5, 2, 6],
                       [6, 1, -2]])

matrix_b = np.asarray([[5, 9, 2],
                       [2, 0, 3],
                       [1, -4, 5]])
                       
matrix_c = matrix_a + matrix_b
print(matrix_c)

Result [[ 9 14 4] [ 7 2 9] [ 7 -3 3]]

 

 

 

Pandas 패키지

Pandas는  numpy를 기반으로, 보다 고차원적인 데이터 처리를 돕는 라이브러리이다. 동일한 데이터를 가진 Series를 기본으로하여, 이를 여러개 묵어 사용하는 Dataframe을 사용하여 표형태로 된 자료를 다룬다.

import pandas as pd
col_id = pd.Series(data=[5, 14, 21, 25])
col_team = pd.Series(data=['A', 'A', 'B', 'B'])
col_name = pd.Series(data=['김패캠', '정코딩', '박데사', '장머신'])
col_score = pd.Series(data=[100, 95, 60, 80])

df = pd.DataFrame(data={'Id': col_id,
                        'Team': col_team,
                        'Name': col_name,
                        'Score': col_score})
df.set_index('Id', inplace=True)
print(df)

Result

Team             Name                Score

A 김패캠 100
A 정코딩 95
B 박데사 60
B 장머신 80
df.groupby('Team').mean()

A 97.5

B 70

과같이 편리한 연산이 가능한 라이브러리

 

Matplotlib 패키지

Matplotlib는 Python에서 Matlab 스타일의 그래프를 그리기 위한 오픈소스 패키지이다. 각종 그래프를 표현할 수 있는 기반이 된다.

import matplotlib.pyplot as plt
x = np.linspace(0, 1, 100)
y = x
yy = x ** 2

fig = plt.figure()
ax = fig.gca()
ax.plot(x, y, 'r-')
ax.plot(x, yy, 'g-')
ax.set_title('Title')
ax.set_xlabel('x')
ax.set_ylabel('y')
ax.legend(['y = x', 'y = x^2'])
ax.grid()
fig.show()

Matplotlib 그래프

와 같은 방식으로 사용가능하다.

 

Seaborn 패키지

Seaborn은 matplotlib 패키지를 기반으로 보다 편하게 통계를 시각화 하기

위한 도구이다. 일반적으로 데이터사이언스에서 사용하는 대부분 그래프 지원함.

import seaborn as sns
sns.histplot(x='Score', data=df, hue='Team')

sns.boxplot(y='Score', x='Team', data=df)

 

Plotly 패키지 

Plotly 패키지는 Plotly 사에서 개발, 서비스하는 반응형 그래프 생성 엔진이다. 클라우드 기반의 엔터프라이즈 서비스는 유료로 젝공되지만, 로컬에서 사용하는 개인용 라이브러리는 오픈소스로 제공되어 무료로 사용할 수 있다. 

import plotly.express as px
fig = px.line(x=["a","b","c"], y=[1,3,2], title="sample figure")
fig.show()

 

확대 축소등 차트를 보다 더 정확하게 사용가능하다.

 

Posted by MIDDLE
,

Whole Brain Emulation 을 하기 위한 Issue 사항


1. Emulation System


에뮬레이션 시스템에는 두가지의 방법이 존재한다.

1. 외부에서 하드웨어를 통해 Body Interface를 통해 Brain Emulator 에 접근하는 방식

Body Model 에게 Action의 전달과 simulate된 감각 신호를 받게된다.


2. 완전한 가상을 통해 에뮬레이션 시스템을 동작하는 방식 이경우에는 시뮬레이터에서 시뮬레이터의 body를 통해 brain emulator와 연결하며 가장 큰차이점은 Action 동작이나 감각신호를 몸체 시뮬레이터에서 제어한다는 점이다.

외부에서 제어하는것이 아닌점이 가장 큰 차이점


에뮬레이션 소프트웨어에는 몇가지 이슈사항이 존재한다.

(1) 컴퓨터 자원 배분

(2) 에뮬레이션 제작 정보 수집

(3) 보안 시스템

(4) 다양한 Software Service 제공


일단 이러한 문제를 해결하기 위해서는 가장 근본적으로 필요로 해지는것은 Quantum Computing 이 아닐까 생각이 든다.

외냐하면 우리 머리속에서는 뇌속의 뉴런의 정보 전달 속도는 지금의 시스템으로는 터무니 없이 부족하기 때문이다. 이러한 문제로인해 제한적인 개발이 강제되어지고 있다.




2. Complication and Exotica

이색성과 복잡도 이것은 뇌에는 시신경과 같은 시스템만 존재하는것이 아니라 다양한 정보의 전달 방식들이존재한다. 수많은 다른 형태의 프로세싱들이 반드시 에뮬레이팅 되어야 한다.

그렇게 되므르써 중요하고 중요하지 않은 부분들에 대한 테스팅이 가능해진다.

3. Spinal Cord

전통적으로 척수는반사회로와 패턴 발생기로 여겨졌지만 실제로는 처리가 매우 복잡하고 학습과정이 축추세포를 통해 발생하는 증거가 있다.

네트워크는 고정적이고 단계적이지만 매우 유연하고 hardwired 하지 않을 수 도 있다.

이것은 중추 신경계와 뇌부분의 모방하는것이 비스캔 코드에 학습되어 많은 신체 컨트롤을 할 수 있게 한다.


4. Synaptic adaptation

시냅스는 보통 그들의 힘에 의해 개인 특성화 된다. 

주어진 진폭 크기에 따라 생성 되어지며 이것은 뇌의 다양한 기능을 수행하는데 쓰여진다. 

시냅스의 가소성

Neural Activity < Brain function role play, temporal filtering, mortor control, auditory processing < long term synaptic plasity


5. Unknown neurotransmitter and neuromodulators

10개 major neuroTransmitter가 존재하며 200개 이상의 neuron model  272개의 세포외 뉴런 활동신호 서로 다른 물질에 대한 발견 년도를 기록 해보면 시간이 지남에 따라 점점더 발견이 느려지는 S자형 성장이 일어나고 있습니다.

아미노산 계열 : Gamma - Amino buttnic, acidi GABA, glutamiate j Glu, Gly

아민 계얄 : Ach, DA, Epinephrine, Histamine

노르에피네프린 : NE, Serotonini-5-HT

펩타이드 계열 : CCK(콜레시스토키닌) Dynorphin(디노르핀 ), Enk(엔케필린), BAAG, 뉴로 펩타이드-Y,somatostain, substance P, VIP 등

주로 3가지 아미노산, 아민, 펩타이드 로 구성되어져 있다. 

모듈 신경전달 물질의 상한 경계는 수용체 뿐만아니라 세포막 단백질에 의해 조절될 수 있다.

이게 된다면 지금까지 단순 한계치 조절이 아닌 값조작이 한다는것을 의미할 수 있다. 가용성만 본다는것이 아니라 다양한 값조작이 확인되야할 수도있겠는데....

이러한 다양한 신경전달물질들이 존재하는데 이러한 것들의 각 행동을 정확히 이해해야 할필요있다.

그뿐만이 아니라

WBE Modelling 모듈들의 연결은 결정적이다. 이 의미는 뇌의 각 부분들에 대한 이해가 뿐만 아니라 그것들의 상관관계와 행동관계를 정확한 모델링하여 컴퓨터화하여 연결하는것에 초점을 두어야 한다.


6. Unknown ion channels

수용체와 비슷한 알려지지 않은 ion channel 에서의 뉴런 활동도 있다. 554개의 Ion entries가 71개의 디자인된 채널에서 143개의 유전자와 Super Family?? Ion channel은 뉴런 전자 다양성을 증가를 가능케 한다. 그러나 linear 한manner가 필요하다. 


7. Volume transmission

뇌를 감싸는 세포를 Extra cellular spce라 한다. 평균 200암페어 정도이며 뇌용적의 20%정도는 이것의 영양이 된다. 여유 이온을 전달하며 뇌 자극 물질또한 전달이 가능하다.(도파민 등)

그렇기에 정확한 3D 스캔이 필요해진다. 

이것은 확산을 제한하는 시간에 대한 정보 제공할것이다. 에뮬레이션 일부이며 어떤 화학 종류가 모델에 필요하게 되는지 알려주는 역할을 할 수 있도록 한다.


8. Body chemical environment

뇌 에뮬레이션 경우 화학물질의 일 부 측면의 환경을 시뮬레이션 해야한다.

이것 은 물질 대사에 관한 인간 대사 물질의 매칭이 필요하다. 신체 화학 모델은 WBE에 비해 매우 간단하다.

대사 보다 단백질 상호 작용 모델이필요한 경우 복잡성은 증대 되어진다.


9. Neurogenesis and remodelling

사람이 나이가 들어감에 따라 점점 똑똑해지듯이 뇌또한 나이를 먹어감에 따라 신경이 생성되어진다. 

일부뇌에서지만 분명 신경이 생성 되어집니다. 

근데 속도는 빠르지는 않은편이며 1주 약간 넘은 정도에 애성되어진다.

심지어 신경생성이 무시되어지더라도 에뮬레이션은 성인의 뇌로 진행될 것이다. 이것은 학습과 적응의 리모델링에 매우 중요하게 되어질것이다.

줄기 세포 증식은 시뮬레이션 하려면 다른세포에 나타나는 데이터 구조가 필요합니다. 이들의 분화 상태, 신경 발생 유발 데이터 및 세포를 네트워크에 점진적으로 발생할 수 이도록 해야한다. (세포 기하학, 역할모델, 조정 차별 모델) 

Posted by MIDDLE
,