본문 바로가기

분류 전체보기

(153)
Julia - 유용한 함수들 rand rand 함수에 인수를 넣지 않으면 무작위 수를 하나, 인수를 하나만 넣으면 0 ~ 1 사이의 무작위 수가 들어간 Vector가, 그리고 인수를 여러 개 넣으면 인수 개수 만큼의 차원을 가진 Matrix가 나온다. julia> rand() 0.7160817395988023 julia> rand(3) 3-element Vector{Float64}: 0.6159810811259436 0.8036155297309778 0.05378942118424623 julia> rand(2, 3) 2×3 Matrix{Float64}: 0.88686 0.591223 0.0904211 0.866785 0.775144 0.365447 julia> rand(2, 3, 5) 2×3×5 Array{Float64, 3}: [..
Julia - 코딩 컨벤션 https://ohmyjulia.tistory.com/7 [Julia] 줄리아의 코딩 규약 (Coding Conventions) ※ 다음 링크에서 줄리아 프로그래밍과 관련한 글 목록을 확인하실 수 있습니다. Julia 프로그래밍 관련 글 목록 코딩 규약은 문법(syntax)과는 다른 개념이다. 문법은 반드시 지켜야 하지만 코 ohmyjulia.tistory.com 위 링크를 참고. https://docs.julialang.org/en/v1/manual/style-guide/ Style Guide · The Julia Language The following sections explain a few aspects of idiomatic Julia coding style. None of these rules..
Machine Learning - 지도학습, 비지도학습 머신 러닝 개요 머신 러닝에 있어서 가장 중요한 점들 중 하나는 적절한 피처 (feature) 를 잘 정의하는 것이다. 예를 들어, 우리는 이 사진을 보고 이 사진에 있는 동물이 코끼리라는 것을 바로 알아차릴 수 있다. 긴 코, 큰 귀, 피부의 색깔 등등 여러가지를 통하여 위 동물이 어떤 종인지를 판별하였을 때, 코끼리라고 분류를 내릴 수 있는 것이다. 우리의 뇌는 이러한 종합적인 판단을 바로 내릴 수 있지만, 컴퓨터에 있어서는 feature들이 어떻게 정의되어 있고 그것이 어떻게 주어지느냐가 머신러닝의 핵심이 될 것이다. 예를 들어 코의 길이, 귀의 크기, 피부의 색깔 등등을 feature로 줬다면 코끼리인 것을 판단하는 것이 쉽겠지만, 홍채의 모양, 다리의 갯수 등을 feature로 줬다면 코끼리인 ..
Kotlin - 컬렉션 함수 (Collection Functions) 내가 코틀린을 배우면서 코틀린에 있어 특별하다고 생각되는 부분들 또는 메모해두어야 할 점들을 여기에 적어놓으려고 한다. 컬렉션 함수 컬렉션의 요소들을 순회할 때 for 문을 쓰면 편리하지만, 함수형 프로그래밍을 지향하는 코틀린은 컬렉션을 다룰 때 필요한 여러 가지 유용한 함수들을 지원한다. 컬렉션 함수는 list나 set, map, 또는 배열 (array) 에 일반 함수 또는 람다 함수 형태를 사용하여 for 문 없이도 아이템을 순회하며 참조하거나 조건을 걸고, 구조의 변경까지 가능한 여러 함수를 지칭한다. forEach 아래 예시와 같이 사용하며, it이라는 키워드로 각각의 요소에 대응하여 안에 들어있는 함수를 실행한다. 예시 fun main() { var a: List = listOf(1, 2, 3)..
Kotlin - 더 많은 함수 기능들 내가 코틀린을 배우면서 코틀린에 있어 특별하다고 생각되는 부분들 또는 메모해두어야 할 점들을 여기에 적어놓으려고 한다. Overloading 코틀린에서는 overloading을 지원한다. 이는 같은 스코프 내에서 서로 다른 파라미터 셋을 가지는 이름이 같은 함수들을 사용할 수 있다는 것인데. 아래 예시를 보자. 예시 fun main() { println(add(1, 2)) println(add("a", "b")) } fun add (a: Int, b: Int): Int { println("int added...") return a + b } fun add (a: String, b: String): String { println("string added...") return a + b } 출력 int ad..
Kotlin - Null 처리와 동일성 확인 (Null Safety and Equality) 내가 코틀린을 배우면서 코틀린에 있어 특별하다고 생각되는 부분들 또는 메모해두어야 할 점들을 여기에 적어놓으려고 한다. Null 처리 Nullable 변수에 null 값이 대입되어 있을 때, 만약 해당 변수의 클래스 메서드 또는 속성을 불러오려고 하면 Null Pointer Exception 예외가 발생한다. 따라서 nullable 변수를 사용할 때에는 null인지 아닌지 먼저 확인을 해주어야 한다. 예를 들어 아래와 같이 코드를 작성할 수 있을 것이다. 예시 fun main() { var a: String? = null; if (a!=null) { println(a.uppercase()) } } 위 예시는 아무것도 출력하지 않는다. a가 null이기 때문이다. 하지만 이러한 null 체크를 하기 위해 ..
Kotlin - 제너릭 (Generic) 내가 코틀린을 배우면서 코틀린에 있어 특별하다고 생각되는 부분들 또는 메모해두어야 할 점들을 여기에 적어놓으려고 한다. 제너릭이란 클래스 내부에서 사용할 데이터 타입을 외부에서 지정하는 기법을 의미한다. 아래 예시는 Farm이라는 클래스에서 Animal이라는 수퍼클래스를 가진 하위클래스들을 가지는 List를 내부에 가지도록 했다. 예를 들어, cowFarm에는 Cow 클래스 인스턴스들을 가진 리스트인 cows를 넣었다. 예시 fun main() { var cows:List = listOf(Cow(), Cow(), Cow()) var dogs:List = listOf(Dog(), Dog(), Dog()) var cowFarm = Farm(cows) var dogFarm = Farm(dogs) cowFarm..
Kotlin - 클래스의 다형성 (Polymorphism) 내가 코틀린을 배우면서 코틀린에 있어 특별하다고 생각되는 부분들 또는 메모해두어야 할 점들을 여기에 적어놓으려고 한다. Up-Casting과 Down-Casting 가령 상위클래스인 Drink 클래스가 있고, 하위클래스인 Cola 클래스가 있다고 하자. 이후, Cola의 인스턴스를 만들고 싶은데, 이 안에 Drink의 요소들만 담고 싶다면, 다음과 같이 선언하여 인스턴스를 생성할 수 있다. 이 경우에, Cola를 통하여 인스턴스를 생성했음에도, 해당 변수의 실질적인 인스턴스는 Drink의 인스턴스가 되게 된다. fun main() { var cocaCola: Drink = Cola() cocaCola.sip() //cocaCola.shake() } open class Drink { fun sip() { ..